Waterfall Model
Waterfall Model menurut referensi Sommerville |
- Requirements analysis and definition: Mengumpulkan kebutuhan secara lengkap kemudian kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.
- System and software design: Desain dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.
- Implementation and unit testing: desain program diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji baik secara unit.
- Integration and system testing: Penyatuan unit-unit program kemudian diuji secara keseluruhan (system testing).
- Operation and maintenance: mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi sebenarnya.
- Mudah diaplikasikan
- Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan
- Cocok digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya
- Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses
- Sulit untuk mengalami perubahan kebutuhan yang diinginkan customer
- Customer harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap,menyelesaikan tahap awal baru bisa ke tahap selanjutnya
- Perubahan ditengah-tengah pengerjaan produk akan membuat bingung team work yang sedang membuat produk
- Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya
V-Model
Kelebihan V-Model :
- V Model sangat fleksibel. V Model mendukung project tailoring dan penambahan dan pengurangan method dan tool secara dinamik. Akibatnya sangat mudah untuk melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan sangat mudah untuk menambahkan method dan tool baru atau menghilangkan method dan tool yang dianggap sudah obsolete.
- V Model dikembangkan dan di-maintain oleh publik. User dari V Model berpartisipasi dalam change control board yang memproses semua change request terhadap V Model.
- V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
- V Model terlalu fleksibel dalam arti ada beberapa activity dalam V Model yang digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa yang termasuk dalam activity tersebut dan apa yang tidak.
- Membutuhkan orang yang banyak untuk menyelesaikan sebuah proyek berskala besar
- Pengembang dan customer harus punya komitmen yang kuat untuk menyelesaikan sebuah software
- Jika sistem tidak di bangun dengan benar maka RAD akan bermasalah
- Jika ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara pengembang dan customer
Kelebihan Incremental Model :
- Cocok digunakan bila pembuat software tidak banyak/kekurangan pembuat
- Mampu mengakomodasi perubahan kebutuhan customer
- Lebih efektif dari pendekatan waterfall/sequential linear dalam menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan
- Cocok untuk proyek yang memerlukan waktu yang singkat
Kekurangan Incremental Model :
- Tidak cocok untuk proyek skala besar
- Proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
- Sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini
- Resiko teknis yang tinggi juga kurang cocok untuk model ini
Prototyping Model
- Menghemat waktu pengembangan
- Adanya komunikasi yang baik antara pengembang dan pelanggan
- Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan
- Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya
- User dapat berpartisipasi aktif dalam pengembangan sistem
Kelemahan Prototyping Model :
- Proses analisis dan perancangan terlalu singkat
- Biasanya kurang fleksible dalam mengahadapi perubahan
- Walaupun pemakai melihat berbagai perbaikan dari setiap versi prototype, tetapi pemakai mungkin tidak menyadari bahwa versi tersebut dibuat tanpa memperhatikan kualitas dan pemeliharaan jangka panjang
- Pengembang kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi yang tidak relevan dan algoritma yang tidak efisien
Spiral Model
- Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
- Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
- Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
Kelemahan Spiral Model :
- Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
- Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
- Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.
0 komentar:
Posting Komentar