Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya Tahap ini  disebut dengan Operation and Maintenance.
Keuntungan dari pendekatan Waterfall Development adalah
Sederhana dan mudah digunakan dan dipahami.
Fase-fasenya tidak tumpang tindih sehingga pengelolaannya dilakukan dengan sangat efisien.
Bekerja sangat baik untuk proyek kecil.
Hambatan dalam pendekatan Waterfall Development adalah
 Tidak dapat meminta persetujuan dari pengguna sampai akhir
Keberhasilan proyek tidak dapat ditentukan sampai akhir.
Kapan menggunakan metode Waterfall Development : Model ini paling cocok jika semua persyaratannya jelas, tetap, dan sangat tidak diketahui.
Definisi produk dan teknologi dipahami dengan baik: Jangka waktu proyek pendek.
2. Agile DevelopmentÂ