Pages

Subscribe:

Blogroll

Selasa, 25 September 2012

Tantangan Rekayasa Kebutuhan Aplikasi Web

1.     Multidisciplinarity
Pengembangan aplikasi Web memerlukan partisipasi para ahli dari berbagai disiplin ilmu. Misalnya seperti multimedia experts, content authors, software architects, usability experts, database specialists, atau domain experts. Heterogenitas dan multidisciplinarity stakeholder membuat pengembang tertantang untuk mencapai konsensus ketika mendefinisikan persyaratan.

2.     Tiadanya Stakeholder
Banyak pihak seperti pengguna Web potensial, masih belum diketahui selama kegiatan RE(Requirement Engineering). Manajemen proyek perlu mencari perwakilan yang cocok yang dapat memberikan persyaratan yang realistis. Misalnya, sering ada spektrum yang luas dari pengguna dalam proyek Web dan sulit untuk menemukan satu set yang wajar dari perwakilan.

3.     Kebutuhan dan Batasan “Mengambang”
Persyaratan dan kendala seperti sifat dari platform penyebaran atau protokol komunikasi sering lebih mudah untuk menentukan sistem perangkat lunak konvensional daripada aplikasi Web. Aplikasi Web dan lingkungan mereka sangat dinamis dan persyaratan dan kendala yang biasanya sulit untuk menstabilkan. Contohnya yaitu Sering terjadi perubahan teknologi inovasi seperti pengenalan platform pengembangan baru dan standar, atau perangkat baru bagi pengguna akhir.

4.     Lingkungan Operasional Sulit Diprediksi
Lingkungan operasional dari aplikasi web sangat dinamis dan sulit diprediksi. Pengembang merasa sulit untuk mengontrol faktor-faktor penting yang menentukan bagi pengguna mengenai kualitas dari suatu aplikasi Web. Misalnya, bandwidth perubahan mempengaruhi waktu respon dari aplikasi mobile, tetapi berada di luar lingkup tim pengembangan (Finkelstein dan Savigni 2001).

5.     Pengaruh Sistem Warisan
Pengembangan aplikasi Web ditandai dengan integrasi komponen perangkat lunak yang ada seperti komersial dari produk rak atau perangkat lunak open source. Secara khusus, pengembang Web seringkali menghadapi tantangan untuk mengintegrasikan sistem warisan, misalnya saat membuat sistem TI yang ada dari sebuah perusahaan dapat diakses melalui Web. Pengembang sering diminta untuk menggunakan komponen yang ada untuk alasan ekonomi. Komponen yang perlu diintegrasikan sangat mempengaruhi persyaratan dan gaya arsitektur dari sistem masa depan.

6.     Pentingnya Aspek Kualitas
Aspek kualitas sangat penting karena menentukan keberhasilan suatu aplikasi Web (Grunbacher et al. 2004). Contohnya termasuk kinerja dari aplikasi Web dan keamanan dalam e-commerce, ketersediaan, atau kegunaan. Meskipun aspek kualitas sangat penting, pengembang juga masih harus berurusan dengan masalah spesifikasi yang tepat dari persyaratan mutu yang seringkali sulit atau bahkan sia-sia sebelum sistem sebenarnya dibangun. Sebagai contoh, waktu respon dari aplikasi Web tergantung pada banyak faktor yang berada di luar kendali dari tim pengembangan. Pendekatan yang layak untuk mendefinisikan persyaratan mutu adalah untuk menentukan kriteria untuk tes penerimaan menunjukkan apakah persyaratan terpenuhi atau tidak.

7.     Kualitas User Interface
Kualitas dari user interface adalah aspek lain keberhasilan aplikasi Web. Ketika aplikasi Web berkembang pengembang perlu menyadari mengenai istilah (I Know It When I See It) IKIWISI: pengguna tidak akan dapat memahami dan mengevaluasi aplikasi Web dengan hanya melihat model abstrak dan spesifikasi, melainkan mereka perlu bereksperimen dengan itu. Hal demikian sangat penting untuk melengkapi definisi dan deskripsi persyaratan dengan menambahkan prototipe skenario aplikasi (Constantine dan Lockwood 2001).

8.     Kualitas Contents
Banyak metode tradisional Requrement Engineering mengabaikan konten Web, meskipun merupakan aspek yang sangat penting dari aplikasi Web. Selain masalah teknologi perangkat lunak, pengembang harus mempertimbangkan konten, khususnya pada penciptaan dan pemeliharaan. Dalam konteks Requirement Engineering sangat penting untuk menentukan kualitas yang dibutuhkan dari konten. Karakteristik kualitas yang penting meliputi akurasi, objektivitas, kredibilitas, relevansi, aktualitas, kelengkapan, atau kejelasan (Strong et al. 1997). Content Management Systems (CMS) penting untuk keuntungan sistem dan memungkinkan konten ringkas yang konsisten dengan memisahkan konten dari tata letak, dan menawarkan alat editing konten.

9.     Kurangnya Pengalaman Developer
Banyak dari teknologi yang mendasari dalam aplikasi Web masih cukup baru. Pengalaman dengan alat pengembangan teknologi, standar, bahasa, dll dapat menyebabkan perkiraan yang salah saat menilai kelayakan dan biaya pelaksanaan persyaratan.

10.Tanggal Delivery Perusahaan
Proyek Web banyak desain untuk jadwal proyek, di mana semua kegiatan dan keputusan harus memenuhi batas akhir proyek akhir. Perundingan dan prioritas kebutuhan sangat penting dalam keadaan seperti ini (Boehm et al. 2001).

Senin, 24 September 2012

3 Tingkatan Pemodelan dalam Aplikasi Web


1). Content

Informasi dan aplikasi logik pada sebuah aplikasi web yang bertujuan untuk mendefinisikan secara ekplisit dari struktur informasi.
Aspek penting dalam content yaitu:
- Document-centric character and multimediality: Tergantung pada penataan tersebut, konten yang disediakan sebagai meja, teks, grafik, animasi, audio, atau video. "Dokumen karakter" dalam aplikasi Web mengacu pada fakta bahwa konten yang disediakan, yaitu dokumen yang dihasilkan yang menyajikan informasi dengan cara yang tepat untuk kelompok pengguna tertentu (misalnya, informasi wisatawan di daerah liburan). Konten adalah juga dihasilkan dan diperbarui secara dinamis, misalnya jumlah kamar yang tersedia dalam sistem informasi pariwisata. Selain itu, Web berfungsi sebagai infrastruktur untuk transmisi konten multimedia, misalnya dalam konferensi video atau aplikasi Real Audio.
- Quality demands: Tergantung pada area aplikasi, isi dari aplikasi Web tidak hanya tunduk pada frekuensi yang berbeda update, tetapi juga untuk metrik kualitas yang berbeda menjadi yang up to date, tepat, konsisten dan dapat diandalkan. Hal ini tidak hanya menuntut pertimbangan tuntutan kualitas dalam definisi persyaratan akan tetapi juga evaluasi sesuai dengan prinsip-prinsip ini.
Situs berita misalnya, memiliki frekuensi yang sangat tinggi pembaruan dan menghadapi tuntutan pengguna yang sangat tinggi mengenai aktualitas. Web sebagai media dalam dirinya sendiri, bersama media televisi, radio, dan cetak, menawarkan potensi besar untuk mengatasi tuntutan-tuntutan yang lebih baik daripada media tradisional, misalnya melalui personalisasi. Terlepas dari mana sebuah aplikasi Web yang digunakan, kualitas konten merupakan faktor penting untuk penerimaan. Tantangan besar adalah mampu menjamin kualitas data meskipun volume besar dan frekuensi tinggi dari pembaruan.

2). Hypertext
Penstrukturan dari content ke dalam node-node dan link antar node. model struktur hypertext hanya mereferensi content yang bersesuain.
Fitur penting dari paradigma hypertext adalah linearitas non produksi konten oleh penulis dan penerimaan konten oleh pengguna bersama-sama dengan potensi masalah disorientasi dan kelebihan kognitif.
- Non-linearity: hypertext menyiratkan stereotip membaca yang relatif sistematis, dan dalam hal ini, aplikasi Web secara fundamental berbeda dari aplikasi perangkat lunak tradisional. Kita dapat membedakan antara lain antara browsing misalnya dalam aplikasi belanja online , query dalam pameran virtual, dan tur dalam aplikasi e-learning. Menciptakan hypertext selalu merupakan tantangan bagi para penulis, karena mereka berusaha untuk menghindari disorientasi dan kelebihan kognitif bagi pengguna.
Disorientation and cognitive overload: Hal ini sangat penting dalam pengembangan aplikasi Web untuk mengatasi kedua masalah mendasar dari paradigma hypertext. Disorientasi adalah kecenderungan untuk kehilangan bantalan seseorang dalam dokumen non-linear. Kognitif kelebihan disebabkan oleh konsentrasi tambahan yang diperlukan untuk diingat beberapa jalur atau tugas secara bersamaan.

3). Presentation
User interface atau layout halaman. Dua fitur khusus dari aplikasi Web pada tingkat presentasi yaitu Aesthetics dan self-explanation.
- Aesthetics: Berbeda dengan aplikasi tradisional, estetika tingkat presentasi dari aplikasi Web, "tampilan dan nuansa" dari user interface, merupakan faktor utama karena tekanan kompetitif yang tinggi di Web. Presentasi visual dari halaman Web mengikuti tren fashion dan sering menentukan keberhasilan atau kegagalan, khususnya untuk aplikasi e-commerce (Pressman 2005).
- Self-explanation: Selain estetika, penting juga bahwa aplikasi Web itu sendiri jelas, yaitu harus dimungkinkan untuk menggunakan aplikasi Web tanpa dokumentasi. Sistem navigasi atau perilaku interaksi harus konsisten dalam seluruh aplikasi, sehingga pengguna dapat dengan cepat dan mudah menggunakan aplikasi Web.

Aplikasi web yang menyediakan user interface hypertext-oriented saja tetapi mempunyai himpunan data besar, harus fokus pada pemodelan content dan struktur hypertext. Sebaliknya, pada aplikasi web presentation-oriented seperti corporate portal atau online shopping akan sangat membutuhkan pemodelan presentasi.

Minggu, 16 September 2012

REKAYASA KEBUTUHAN APLIKASI WEB



  • Pendahuluan 
  • Fundamental 
  • Tantangan rekayasa kebutuhan (Requirement Engineering, RE) dalam web engineering 
  • Asas rekayasa kebutuhan aplikasi web 
  • Adaptasi metode RE untuk pengembangan aplikasi web
  • Harapan ke depan

    A.     PENDAHULUAN
    ·         Kebutuhan atau persyaratan sistem memegang peranan kunci dalam proyek pengembangan aplikasi web.
    ·         RE berurusan dengan prinsip, metode dan tool untuk mengidentifikasi, menggambarkan, memvalidasi, dan mengelola kebutuhan di dalam pengembangan sistem.

Kamis, 13 September 2012

Istilah-istilah terkait dalam Web Engineering:


Web site Engineering--> proses untuk menciptakan suatu sistem aplikasi web dengan menggunakan ilmu rekayasa, prinsip-prinsip manajemen dan pendekatan sistematis untuk memperoleh sistem dan aplikasi web dengan kualitas tinggi. Tujuannya yaitu untuk dapat mengendalikan pengembangan, meminimalisasi resikodan meningkatkan sistem berbasis web.

Hypermedia Engineering--> sebuah istilah yang berasal dari hypertext, yaitu memperluas link hypertext untuk menyertakan suatu link antar objek multimedia, termasuk suara, video gerak, dan virtual reality.

Document Engineering--> disiplin ilmu komputer yang meneliti sistem untuk sebuah dokumen dalam bentuk apapun di semua media. Seperti hubungan antara rekayasa perangkat lunak dan perangkat lunak, rekayasa dokumen yang berkaitan dengan prinsip-prinsip, alat dan proses yang meningkatkan kemampuan kita untuk membuat, mengelola dan memelihara dokumen.

Content Engineering--> istilah yang digunakan untuk suatu rekayasa khusus berurusan dengan isu-isu seputar penggunaan konten komputer yang difasilitasi lingkungan. Konten produksi, manajemen konten, pemodelan konte, konversi konten dan konten yang khusus dipakai pada konten ini.

Internet Engineering--> aplikasi yang menggunakan pendekatan sistematis dalam suatu internet untuk mengembangkan, memelihara, dan membangun kembali suatu aplikasi dengan menggunakan prinsip-prinsip rekayasa yang menghasilkan aplikasi internet yang semakin baik.