Waterfall sebagai model rekayasa perangkat lunak
Permodelan dalam suatu perangkat
lunak merupakan suatu hal yang dilakukan di tahapan awal. Di dalam suatu
rekayasa perangkat lunak, sebenarnya masih memungkinkan tanpa melakukan
permodelan. Hal ini tidak dapat lagi dilakukan dalam suatu industri
perangkat lunak.
Permodelan dalam perangkat lunak
merupakan suatu yang harus dikerjakan di bagian awal rekayasa, dan
permodelan ini akan mempengaruhi pekerjaan-pekerjaan dalam rekayasa
perangkat lunak tersebut.
Model proses perangkat lunak masih
menjadi obyek penelitian, tapi sekarang ada banyak model umum atau
paradigma yang berbeda dari pengembangan perangkat lunak, antara lain :
Waterfall model pertama kali
diperkenalkanoleh Winston Royce tahun 1970. Waterfall Model merupakan
model klasik yang sederhana dengan aliran sistem yang linier. Output
dari setiap tahap merupakan input bagi tahap berikutnya.
Model ini telah diperoleh dari proses
rekayasa lainnya dan menawarkan cara pembuatan rekayasa perangkat lunak
secara lebih nyata. Model ini melibatkan tim SQA (Software Quantity Assurance) dengan 5 tahapan, dimana setiap tahapan selalu dilakukan verifikasi atau testing. Tahapan model waterfall meliputi :
- Requirment
Dalam tahapan ini jasa, kendala dan
tujuandari konsultasi dengan pengguna sistem. Kemudian semuanya dibuat
dalam bentuk yang dapat dimengerti oleh user dan staf pengembang.
Dengan kata lain, dalam tahapn ini dilakukan analisa kebutuhan, kemdian
diverifikasi klien dan tim SQA.
- Specification
Dokumentasi spesifikasi, kemudian
diperiksa oleh tim SQA. Selanjutnya jika disetujui oleh klien, maka
dokumen tersebutmerupakan kontrak kerjaantaraklien dan pengembang
s0ftware. Selanjutnya merencanakan jadwal pengembangan software. Jika
disetujui oleh SQA, tahap desain baru dilakukan.
- Design
Proses design sistem membagi
kebutuhan-kebutuhan menjadi sistem perangkat lunak atau perangkat
keras. Proses tersebut menghasilkan sebuah arsitektur keseluruhan.
Desain perangkat lunak termasuk menghasilkan fungsi sistem
perangkatlunak dalam bentuk yang mungkin ditransformasi kedalam satu
atau lebih program yang dapat dijalankan. Tahapan ini telah menentukan
alur software hingga pada tahap algoritma detail. Di akhir tahap ini,
kembali diperksa tim SQA.
- Implementation
Selama tahap ini, desain perangkat lunak
disadari sebagai sebuah program lengkap atau unit program. Desain yang
telah disetujui, diubah dalam bentuk kode-kode program. Tahap ini,
kode-kode program yang dihasilkan masih pada tahap modul-modul. Diakhir
tahap ini, tiap modul di testing tanpa diintegrasikan.
- Integration
Unit program diintegrasikan dandiuji
menjadi sistem yang lengkap untuk meyakinkan bahwa persyaratan perangkat
lunak telah dipenuhi. Setelah uji coba, sistem disampaikan ke
konsumen.
- Operaton mode & retirement
Normalnya, ini adalah tahap yang
terpanjang. Sistem dipasang dan digunakan. Pemeliharaan termasuk
pembetulan kesalahan yang tidak ditemukan pada langkah sebelumnya.
Perbaikan inmplementasi unit sistem dan peningkatan jasa sistem sebagai
kebutuhan baru ditemukan.
Setiap tahap dari modelini menggunakan Document Drivent, yaitu tahap selanjutnya selalu bekerja berdasarkan dokumen yang telah diberikan sebelumnya.
Tahapan pada waterfall model tidak akan
selesai jika tidak disetujui SQA. Modifikasi pada tahap tertentu (tidak
sesuai dengan dokumen sebelumnya), proses harus kembali pada tahap
sebelumnya untuk penyesuaian dan peninjauan ulang.
Dalam prakteknya, setiap langkah sering
tumpang tindih dan saling memberi informasi satu sama lain. Proses
perangkat lunak tidak linierdan sederhana, tapi mengandung urutan
iterasi dari aktifitas pengembangan. Selama di langkah terakhir,
perangkat lunak telah digunakan. Kesalahan dan kelalaian dalam
menentukan kebutuhan perangkat lunak original dapat diatasi.
Sayangnya model yang banyak mengandung
iterasi, sehingga membuat sulit bagi pihak manajemen untuk memeriksa
seluruh rencana dan laporan. Maka dari itu, setelah sedikit iterasi,
biasanya bagian yang telah dikembangkan akan dihentikan dan dilanjutkan
dengan langkah pengembangan selanjutnya.
Masalah-masalah selama resolusi
selanjutnya, dibiarkan atau diprogram. Pemberhentian yang prematur dari
persyaratan akan berarti bahwa sistem tidak akan sesuai dengan
keinginan user. Mungkin juga sistem terstruktur secarajelek yang
sebenarnya merupakan masalah deain akan dibiarkan karenaterkalahkan
olehtrik implementasi.
Masalah pendekatan waterfall adalah
ketidakluwaesan pembagian proyek ke dalam langkah yang jelas/nyata.
Sistem yang disampaikan kadang-kadang tidak dapatdigunakan sesuai
keinginan konsumen. Namun demikian, model waterfall mencerminkan
kepraktisan rekayasa. Konsekuensinya, model proses perangkat lunak yang
berdasarkan pada pendekatan ini, digunakan dalam pengembangan sistem
perangkat lunak dan hardware yang luas.
Daftar Pustaka:
Davis, William S, 1983, Sistem Analisys and Design : A Structured Approach. Addison-Westley Publishing Company
Kristanto, Andri, 2003, Perancangan Sistem Informasi dan Aplikasinya, YOgyakarta : Gava Media
Kristanto, Andri, 2004, Rekayasa Perangkat Lunak : KOnsep Dasar, YOgyakarta : Gava Media
Ngoman, Syahkimiki, 2003, Paradigma Perangkat LUnak, artikel internet
Wijana, Katon, 1997, Modul Rekayasa Perangkat Lunak, Yogyakarta : Universitas Kristen Duta Wacana
0 komentar:
Posting Komentar