Model pengembangan perangkat lunak air terjun menggambarkan rekayasa perangkat lunak sebagai proses berurutan yang terdiri dari langkah-langkah berbeda yang berlanjut ke bawah, mirip dengan air terjun. Selanjutnya, setelah proses berlanjut ke tahap berikutnya, tidak dapat kembali. Model pengembangan perangkat lunak waterfall memiliki lima tahap yaitu Analisis Kebutuhan, Perancangan, Implementasi, Pengujian, dan Pemeliharaan.

Tahap 1: Analisis Persyaratan

Analisis kebutuhan adalah tentang mendapatkan gambaran yang jelas tentang apa yang diinginkan klien. Pada fase inilah klien harus menjabarkan harapan program, termasuk masalah yang seharusnya ditangani oleh program. Semua ini harus dikomunikasikan dalam istilah yang jelas dan cukup sederhana untuk dipahami oleh kedua belah pihak. Selain sekedar menentukan tujuan program, persyaratan kinerja juga harus ditanyakan. Selain itu, bisnis klien harus dipahami, karena membantu menempatkan seluruh proyek dalam konteks dan menetapkan batasan bagi pemrogram. Fase ini diakhiri dengan spesifikasi kebutuhan perangkat lunak yang sedang disusun. Menjadi fase pertama, analisis persyaratan bisa dibilang bagian terpenting dari pengembangan perangkat lunak air terjun karena ini adalah langkah pertama dalam proses yang, seperti disebutkan sebelumnya, hanya maju dan tidak pernah mundur.

Tahap 2: Desain

Sebelum pengkodean benar-benar dilakukan, desain yang memenuhi spesifikasi persyaratan harus dibuat. Beberapa aspek pengembangan perangkat lunak harus diformalkan, termasuk arsitektur perangkat keras dan perangkat lunak, pedoman keamanan dan kinerja, wadah penyimpanan data dan database, pilihan bahasa pemrograman dan IDE. Fitur lain-lain dari produk akhir juga dibuat seperti aksesibilitas dan antarmuka pengguna. Spesifikasi desain yang dihasilkan berfungsi sebagai cetak biru yang menunjukkan bagaimana produk akhir akan terlihat, dan langkah konkret apa yang harus dilakukan programmer untuk mencapainya.

Tahap 3: Implementasi

Dalam tahap implementasi inilah programmer benar-benar memulai pengkodean. Fase ini sepenuhnya didasarkan pada spesifikasi desain yang dibuat pada fase sebelumnya. Fase implementasi biasanya melibatkan tim programmer yang bekerja sama dengan spesialis lainnya. Pemrogram menggunakan kompiler, interpreter, debugger, dan sistem kontrol versi untuk memfasilitasi pekerjaan mereka. Tim spesialis termasuk desainer antarmuka pengguna dan editor media. Sasaran dari spesifikasi desain dibagi di antara tim-tim ini yang awalnya menghasilkan bagian-bagian kecil dari produk akhir yang disebut unit. Unit individu ini dibuat dan diuji sesuai dengan standar pengkodean yang ditentukan dalam spesifikasi desain. Unit-unit tersebut kemudian diintegrasikan bersama untuk menciptakan produk akhir yang sejalan dengan spesifikasi desain arsitektural.

Tahap 4: Pengujian

Dalam fase pengujian, semua unit individu dan produk akhir diuji secara metodis untuk memverifikasi bahwa mereka benar-benar bebas dari kesalahan dan memenuhi semua spesifikasi yang ditetapkan oleh klien dari fase pertama. Tim penjaminan kualitas menggunakan produk akhir untuk menguji kasus untuk memverifikasi bahwa produk tersebut melewati semua desain dan spesifikasi yang ditentukan sebelumnya. Ada tiga jenis pengujian yang dilakukan. Pertama adalah pengujian unit, yang dilakukan pada unit inti individu. Kedua adalah pengujian produk akhir. Yang terakhir disebut “pengujian penerimaan”, di mana klien, atau perwakilan dari klien, menguji produk untuk melihat apakah produk tersebut memenuhi harapan. Jika ditemukan kesalahan, mereka dikomunikasikan kepada tim implementasi untuk diperbaiki. Selain pengujian, manual pengguna dan dokumentasi lainnya dibuat dalam fase ini.

Fase 5: Pemeliharaan

Fase pemeliharaan dimulai dari saat produk dikirim ke klien dan berlangsung hingga dukungan untuk produk dihentikan. Pada tahap pemeliharaan, manajemen dilakukan pada produk untuk memastikan bahwa produk terus berjalan sesuai keinginan. Hal ini paling signifikan tepat setelah klien mulai menggunakan produk akhir, karena ini adalah saat masalah yang belum muncul selama pengujian terungkap.

Keuntungan Pengembangan Perangkat Lunak Waterfall

Model pengembangan perangkat lunak air terjun dikembangkan pada saat semua bagian pengembangan perangkat lunak serampangan dan berantakan. Menjadi salah satu model pengembangan perangkat lunak pertama, metode air terjun adalah salah satu yang paling terkenal. Keunggulan lainnya terutama datang dari strukturnya yang kaku.

Setiap fase harus memastikan bahwa ia telah memenuhi semua fungsinya sebelum meneruskan produk ke fase berikutnya. Ini meminimalkan, jika tidak sepenuhnya menetralkan, masalah apa pun saat proses pengembangan masih dalam tahap awal.

Keuntungan lain adalah kenyataan bahwa model pengembangan perangkat lunak air terjun sangat bergantung pada dokumen. Ini membuatnya lebih mudah untuk melacak kemajuan proyek dan memudahkan tim baru untuk melanjutkan di mana tim sebelumnya tinggalkan.

Kekurangan Pengembangan Perangkat Lunak Waterfall

Kekakuan model air terjun juga merupakan akar dari kekurangannya. Itu tidak memungkinkan untuk review dan revisi, terutama di dua fase pertama. Yang memperparah masalah ini adalah kenyataan bahwa sebagian besar klien tidak benar-benar tahu apa yang mereka inginkan sampai mereka menguji prototipe yang berfungsi.

Model pengembangan perangkat lunak air terjun adalah salah satu metodologi pengembangan perangkat lunak yang pertama, dan itu melayani tujuannya dengan baik pada saat penemuannya. Namun, metodologi pengembangan perangkat lunak lain telah dibuat sejak itu yang lebih efektif dan efisien.



Source by Michael Humbert