System Development Life Cycle Waterfall (SDLC)
Published: 2023-05-01 04:31:49


_**Apa itu Metode Waterfall dalam SDLC?**_
Metode waterfall merupakan contoh model Sequential. Dalam metode ini, aktivitas pengembangan perangkat lunak dibagi menjadi fase-fase yang berbeda dan setiap fase terdiri dari rangkaian tugas dan memiliki tujuan yang berbeda juga.

Metode waterfall merupakan pelopor dari proses SDLC. Bahkan, itu adalah model pertama yang banyak digunakan dalam industri perangkat lunak. Metode ini dibagi menjadi fase input dan output. Suatu fase wajib diselesaikan sebelum fase berikutnya dimulai. Singkatnya, tidak ada tumpang tindih dalam metode waferfall.

---

## Representasi bergambar dari metode waterfall

![Metode Waferfall](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ewqjbegm91z0gka89yt.jpg)


**1. Requirement Analysis.** Mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun.

**2. System Design.** Setelah mengumpulkan dokumen persyaratan dan menganalisis sistem yang dibutuhkan, tahap selanjutnya adalah desain. Pada tahap ini, hal-hal yang harus dipersiapkan adalah bahasa pemrograman yang akan digunakan (PHP, Java, python, dan lainnya), database, dan juga detail teknis lainnya. Tidak lupa juga untuk menyiapkan kebutuhan hardware dan software yang diperlukan.

**3. Implementation.** Tahap selanjutnya adalah implementasi dan pembuatan. Pembuatan yang dimaksud adalah tahapan dimana seluruh desain diubah menjadi kode kode progam. Kode program yang dihasilkan masih berupa modul-modul yang akan di intregasikan menjadi sistem yang lengkap.

**4. System Testing.** Pada tahap ini, dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan. Pengujian ini dilakukan untuk mengetahui apakah _software_ yang dibuat telah sesuai dengan desainnya dan fungsi pada _software_ terdapat kesalahan atau tidak.

**5. System Deployment.** Merupakan tahap uji coba yang dilakukan oleh penguji internal, beda halnya dengan _System Testing_. Tahap _Deployment_ ini semacam uji coba perilisan produk (aplikas) setelah dinyatakan fungsional dan dapat digunakan oleh _user_ secara langsung.

**6. System Maintenance.** Merupakan tahap terakhir, yaitu memonitoring dan juga penyempurnaan aplikasi.

---

_**Kapan Harus Menggunakan Metode Ini?**_
Saat paling tepat menggunakan metode _Waferfall_ adalah ketika proyek yang dikerjakan tak terlalu besar dan tidak dibutuhkan perubahan terus-menerus.

**_Mengapa begitu?_**
Kalau sudah sampai di tahap lain dan baru sadar ada permasalahan, tentu akan merepotkan. Meskipun begitu, hal ini memang dapat membuat kita terbiasa untuk lebih teliti di awal agar terhindar dari kesalahan-kesalahan yang biasa terjadi. 

Kelebihan lain dari metode _Waterfall_ adalah karena analisis dan desain dilakukan di awal, proyek jadi lebih terstruktur dan jelas arahnya ingin dibawa ke mana. Jadi, tidak ada namanya tiba-tiba berubah di tengah-tengah dan harus mengubah detail lainnya lagi.

---

**Kesimpulan**
Dalam metode _waferfall_, sangat penting untuk mengambil hasil akhir dari setiap fase. Saat ini, sebagian besar proyek bergerak dengan menggunakan metode _Agile_ dan _Prototipe_, metode _waferfall_ biasanya digunakan untuk proyek yang skalanya lebih kecil. Jika persyaratan mudah, metode _waferfall_ akan memberikan hasil yang lebih baik.

---