Berdasarkan
persepsi dari beberapa pengembang perangkat lunak dan ahli-ahli dalam bidang
rekayasa perangkat lunak (software engineering professional), Pengembangan
Aplikasi Web tidaklah sama dengan rekayasa perangkat lunak walaupun keduanya
melibatkan pemrograman dan pengembangan perangkat lunak.
Walaupun banyak mengadopsi prinsip-prinsip rekayasa perangkat lunak, Pengembangan Aplikasi Web memiliki banyak pendekatan, metoda, alat bantu, teknik dan panduan yang memenuhi persyaratan pembuatan sistem berbasis web.
Pengembangan sistem berbasis web berbeda dengan pengembangan perangkat lunak konvensional, dimana pengembangan sistem berbasis web lebih banyak menghadapi tantangan. Pengembangan Aplikasi Web adalah gabungan dari print publishing dan pengambangan perangkat lunak, diantara marketing dan perhitungan dan diantara seni dan teknologi.
Alternatif
model dari Pengembangan Aplikasi Web adalah sebagai berikut :
Formulasi (formulation)
Kegiatan
yang berfungsi untuk merumuskan tujuan dan ukuran dari aplikasi berbasis web serta
menentukan batasannya sistem.
Tujuan
yang ingin dicapai bisa dibedakan menjadi dua kategori, yaitu :
1. Tujuan yang bersifat informatif
Menyediakan
suatu informasi tertentu kepada pengguna, berupa teks, grafik, audio, dan
video.
2.
Tujuan yang bersifat fungsional
Kemampuan
untuk melakukan suatu fungsi yang dibutuhkan pengguna, misal dengan menggunakan
aplikasi tersebut seorang guru dapat memperoleh nilai akhir dan statistik nilai
guru dari data-data ujian, tugas, kuis yang ia input ke dalam aplikasi.
Perencanaan (planning)
Kegiatan
yang digunakan untuk menghitung estimasi biaya proyek pembuatan aplikasi
berbasis web ini, estimasi jumlah pengembang, estimasi waktu pengembangan,
evaluasi resiko pengembangan proyek, dan mendefinisikan jadwal pengembangan untuk
versi selanjutnya (jika diperlukan).
Analisis (analysis)
Kegiatan
untuk menentukan persyaratan-persyaratan teknik dan mengidentifikasi informasi
yang akan ditampilkan pada aplikasi berbasis web. Analisis yang digunakan pada
rekayasa web dilakukan dari empat sisi, yaitu :
1.
Analisis isi informasi
Mengidentifikasi
isi yang akan ditampilkan pada aplikasi berbasis web ini. Isi informasi dapat
berupa teks, grafik, audio, maupun video.
2.
Analisis interaksi
Analisis
yang menunjukkan hubungan antara web dengan pengguna.
3.
Analisis fungsional
Analisis
tentang proses bagaimana aplikasi berbasis web ini akan menampilkan informasi
kepada pengguna.
4.
Analisis konfigurasi
Konfigurasi
yang digunakan pada aplikasi berbasis web, internet, intranet, atau extranet.
Selain itu, analisis ini juga meliputi relasi database dengan web jika
diperlukan.
Rekayasa (engineering)
Terdapat
dua pekerjaan yang dilakukan secara paralel, yaitu desain isi informasi dan
desain arsitektur web.
Pada
saat tahap desain, ada beberapa hal yang perlu dilakukan :
- Pembuatan Diagram Wireframe
(Gambar Rangka), tujuan dari diagram gambar rangka adalah untuk
menunjukkan bagaimana lay out halaman web dan menunjukkan di mana fungsi
dan konten seperti navigasi, kotak pencarian, elemen bentuk dan sebagainya,
tanpa desain grafis. Berikut ini contohnya :
Diagram
Wireframe sebuah halaman web.
- Diagram Situs, Sebuah diagram situs menunjukkan struktur situs secara keseluruhan dan bagaimana halaman individual berhubungan satu sama lain. Gambar 2.2 menunjukkan diagram situs yang sangat sederhana
Diagram Situs
- Storyboard dan diagram alir pengguna, Storyboard ini bertujuan untuk menunjukkan langkah-langkah yang diperlukan untuk menyelesaikan tugas-tugas, opsi yang mungkin, dan juga memperkenalkan beberapa standar jenis halaman. Gambar dibawah menunjukkan storyboard sederhana
Desain Visual (Sumber:
www.idwebhost.com, www.idebagus.com)
Implementasi (page generation) & pengujian (testing)
Suatu
kegiatan pengembangan untuk mewujudkan desain menjadi suatu web site. Teknologi
yang digunakan tergantung dengan kebutuhan yang telah dirumuskan pada tahap
analisis.
Dalam
tahap pengembangan ini, meliputi kegiatan:
- Authoring, adalah istilah yang digunakan untuk
proses mempersiapkan konten untuk nantinya diunggah di Web, atau lebih khusus,
menandai konten dengan tag HTML yang menggambarkan isi dan fungsinya.
- Styling, dalam development web,
penampilan halaman dalam browser dikendalikan oleh aturan style yang
ditulis dalam CSS ( Cascading Style Sheets )
- Scripting dan pemrograman, ada bahasa
pemrograman web terkait diantaranya
PHP, Ruby, Python, dan ASP.NET, yang berjalan pada server dan mengolah
data dan informasi sebelum dikirim ke browser pengguna.
Pengujian
dilakukan setelah implementasi selesai dilaksanakan. Pengujian meliputi
beberapa parameter yang akan menentukan standar aplikasi berbasis web yang
telah dibuat. Tahap pengujian adalah suatu proses untuk menguji aplikasi
berbasis web yang telah selesai dibuat. Hal ini bertujuan untuk menemukan
kesalahan dan kemudian memperbaikinya. Pengembang suatu aplikasi berbasis web
mendapat tantangan besar untuk melakukan pengujian karena karakter aplikasi ini
yang beroperasi pada jaringan dengan berbagai macam pengguna, berbagai macam
sistem operasi, perangkat keras, browser, protokol komunikasi, dll.
Ada
beberapa pendekatan yang digunakan untuk melakukan pengujian, yaitu :
1. Pengujian fungsional dan operasional (fungsional and operational testing)
Bertujuan
untuk menguji masukan dan keluaran dari aplikasi ini.
Hasil keluaran aplikasi bergantung dari teknologi yang digunakan, baik itu bahasa pemrograman maupun bahasa skrip yang digunakan.
Untuk menguji code HTML dan CSS yang digunakan dapat menggunakan alat bantu W3C HTML Validation Service di http://validator.w3.org/ dan W3C CSS Validation Service di http://jigsaw.w3.org/css-validator/
Hasil keluaran aplikasi bergantung dari teknologi yang digunakan, baik itu bahasa pemrograman maupun bahasa skrip yang digunakan.
Untuk menguji code HTML dan CSS yang digunakan dapat menggunakan alat bantu W3C HTML Validation Service di http://validator.w3.org/ dan W3C CSS Validation Service di http://jigsaw.w3.org/css-validator/
2.
Pengujian navigasi (navigation testing)
Hal
ini digunakan untuk melihat kesesuaian antara desain navigasi dengan navigasi
yang ada di aplikasi. Navigasi berhubungan dengan link-link yang terdapat
didalam aplikasi.
Untuk
menguji link dapat digunakan alat bantu W3C Link Checker Service di http://validator.w3.org/checklink
3.
Pengujian konfigurasi (configuration testing)
Pengujian
ini dilakukan pada sistem operasi, browser, sistem perangkat keras dan
perangkat lunak pendukung. Pengujian ini dilakukan untuk menentukan batas
toleransi kebutuhan aplikasi akan perangkat lunak dan perangkat keras
pendukungnya.
4.
Pengujian keamanan dan performansi (security and performance testing)
Pengujian ini
dilakukan untuk melihat tingkat keamanan aplikasi dengan cara menguji
aspek-aspek yang dapat menimbulkan gangguan keamanan aplikasi maupun server.
Keamanan aplikasi sangat bergantung pada teknologi pengembangan website,
konfigurasi server yang digunakan dan kelakuan sistem. Pengujian performansi
dapat dilakukan bersamaan dengan pengujian keamanan aplikasi, karena keamanan
aplikasi berbasis web juga tergantung dari performansi server dan aplikasi
tersebut.
Evaluasi oleh konsumen (customer
evaluation)
Suatu
kegiatan akhir dari siklus proses rekayasa web, akan menentukan apakah web yang
telah selesai dibuat tersebut sesuai dengan yang mereka inginkan. Apabila
aplikasi berbasis web ini belum sesuai dengan kehendak mereka, maka proses
rekayasa web akan terus dilakukan dan dimulai lagi dari tahap formulasi untuk
versi berikutnya.
Silahkan berkomentar dengan sopan sesuai topik yang dibahas. Mohon tidak meninggalkan URL. Silahkan berkomentar dengan sopan serta sesuai topik dan dimohon untuk tidak meninggalkan link aktif.
Terima Kasih.
EmoticonEmoticon