Model Waterfall dalam SDLC: Keuntungan & Kerugian
⚡ Ringkasan Cerdas
Model Waterfall dalam SDLC adalah pendekatan pengembangan sekuensial yang membagi proyek menjadi fase-fase tetap, di mana setiap fase selesai sebelum fase berikutnya dimulai. Sumber daya ini menjelaskan fase-fasenya, kapan harus menggunakannya, serta kelebihan dan kekurangannya.

Apa Model Air Terjun itu?
Model Air Terjun SDLC adalah model sekuensial yang membagi pengembangan perangkat lunak ke dalam fase-fase yang telah ditentukan sebelumnya. Setiap fase harus diselesaikan sebelum fase berikutnya dapat dimulai, tanpa tumpang tindih antar fase. Setiap fase dirancang untuk melakukan aktivitas spesifik selama SDLC. Model ini diperkenalkan pada tahun 1970 oleh Winston Royce.

Berbagai Fase Model Air Terjun dalam Rekayasa Perangkat Lunak
Berikut ini adalah fase-fase Model Waterfall yang berbeda:
| Fase yang berbeda | Kegiatan dilakukan pada setiap tahapan |
|---|---|
| Tahap Pengumpulan Persyaratan |
|
| Tahap Desain | |
| Panggung yang Dibangun | Setelah tahap desain, आता tahap pembuatan, yang tidak lain adalah pengkodean perangkat lunak. |
| Tahap Tes | Pada fase ini, Anda menguji perangkat lunak untuk memverifikasi bahwa perangkat lunak tersebut dibangun sesuai dengan spesifikasi yang diberikan oleh klien. |
| Tahap penerapan | Sebarkan aplikasi di lingkungan yang bersangkutan. |
| Tahap pemeliharaan | Setelah sistem Anda siap digunakan, Anda mungkin perlu melakukan perubahan pada kode sesuai permintaan pelanggan di kemudian hari. |
Kapan menggunakan Model Air Terjun SDLC?
Metodologi Waterfall dapat digunakan ketika:
- Persyaratan tidak sering berubah
- Aplikasi ini tidak rumit dan besar.
- Proyek ini singkat.
- Persyaratannya jelas.
- Lingkungannya stabil.
- Teknologi dan alat yang digunakan tidak dinamis dan bersifat stabil.
- Sumber daya tersedia dan terlatih
Kelebihan dan Kekurangan Model Air Terjun
Berikut adalah keunggulan populer dari model Waterfall dalam Rekayasa Perangkat Lunak, beserta beberapa kekurangannya:
| Kelebihan | Kekurangan |
|---|---|
| Sebelum memasuki fase pengembangan selanjutnya, setiap fase harus diselesaikan terlebih dahulu. | Kesalahan hanya dapat diperbaiki selama fase tersebut. |
| Cocok untuk proyek-proyek kecil di mana persyaratannya terdefinisi dengan baik. | Hal ini tidak diinginkan untuk proyek kompleks yang persyaratannya sering berubah. |
| Uji penjaminan mutu (verifikasi dan validasi) harus dilakukan sebelum menyelesaikan setiap tahapan. | Masa pengujian dilakukan cukup terlambat dalam proses pengembangan. |
| Dokumentasi yang rinci dilakukan pada setiap fase siklus pengembangan perangkat lunak. | Dokumentasi menyita banyak waktu para pengembang dan penguji. |
| Proyek ini sepenuhnya bergantung pada tim proyek, dengan intervensi klien yang minimal. | Masukan berharga dari klien tidak dapat dimasukkan selama fase pengembangan yang sedang berlangsung. |
| Segala perubahan pada perangkat lunak dilakukan selama proses pengembangan. | Perubahan kecil atau kesalahan yang muncul pada perangkat lunak yang sudah jadi dapat menyebabkan banyak masalah. |
