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:
1.
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:
·
Tujuan yang bersifat informatif,
Menyediakan suatu informasi tertentu kepada pengguna, berupa teks, grafik,
audio, dan video.
·
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.
2.
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).
3.
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:
·
Analisis isi informasi, Mengidentifikasi
isi yang akan ditampilkan pada aplikasi berbasis web ini. Isi informasi dapat
berupa teks, grafik, audio, maupun video.
·
Analisis interaksi, Analisis yang
menunjukkan hubungan antara web dengan pengguna.
·
Analisis fungsional, Analisis tentang
proses bagaimana aplikasi berbasis web ini akan menampilkan informasi kepada
pengguna.
·
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.
4.
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.
·
Diagram Situs, Sebuah diagram situs
menunjukkan struktur situs secara keseluruhan dan bagaimana halaman individual
berhubungan satu sama lain
·
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
5.
Implementasi (page generation)
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.
6.
Pengujian (testing)
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
·
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
·
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
·
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.
·
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.
7.
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.
0 komentar:
Posting Komentar