KNOWLEDGE
Pendekatan Waterfall dalam Manajemen Proyek
By greatnusa • 4 Februari 2023
Bagikan Artikel
Secara harfiah, waterfall berarti air terjun. Istilah ini juga digunakan di dalam dunia teknologi digital. Pendekatan waterfall merupakan salah satu pendekatan klasik, tetapi masih digunakan karena sifatnya yang sederhana. Apa yang dimaksud dengan pendekatan waterfall dalam manajemen proyek?
Pengertian Pendekatan Waterfall
The Economic Times (2022) mendefinisikan pendekatan waterfall sebagai model klasik yang digunakan dalam software development life cycle untuk membangun sistem dengan pendekatan yang linear dan sekuensial. Pendekatan ini dipertama kali dikenalkan oleh Herbert D. Bennington dalam Symposium on Advance Programming Method for Digital Computers pada 29 Juni 1956.
Pendekatan ini dibagi menjadi beberapa fase dan setiap fase merupakan input untuk fase berikutnya. Setiap fase harus diselesaikan terlebih dahulu sebelum masuk ke fase berikutnya. Dengan demikian tidak terjadi overlapping. Karena setiap fase berurutan dari atas sampai sampai bawah, analogi yang tepat ialah air terjun.
Baca Juga: Bagaimana Proses Manajemen Strategis Berjalan di Perusahaan?
Kelebihan Pendekatan Waterfall
Selain sifatnya yang sederhana, ada beberapa kelebihan pendekatan waterfall yang membuat pendekatan tertua ini tetap digunakan.
Alur Kerja yang Jelas
Dengan pendekatan yang memungkinkan ketiadaaan overlapping, alur kerja pun menjadi lebih jelas dan terukur. Masing-masing tim dapat bekerja dan bertanggung jawab sesuai bidang keahliannya masing-masing. Alokasi waktu yang telah terencana pun membuat mereka dapat menggunakan waktu bekerja secara efektif dan efisien.
Hasil Dokumentasi yang Lebih Baik
Setiap informasi yang tercatat dengan baik dan terstruktur dapat tersalurkan kepada semua anggota tim secara cepat dan akurat. Hal ini merupakan salah satu kelebihan pendekatan waterfall yang dilakukan secara metodis. Dokumen tersebut menjadi arahan bagi setiap anggota tim dalam melaksanakan tugasnya. Dengan demikian, pekerjaannya dapat dilakukan dengan lebih mudah dan cepat.
Memungkinkan Penghematan Biaya
Dalam pendekatan waterfall, klien tidak bisa mencampuri urusan tim pengembang aplikasi. Lain halnya dengan pendekatan agile yang memungkinkan klien memberikan saran kepada pengembang terkait perubahan atau fitur-fitur yang perlu ditambahkan ke dalam aplikasi. Dengan meminimalkan intervensi klien terhadap pengembang, biaya yang dikeluarkan bisa lebih ditekan.
Dapat Digunakan untuk Mengembangkan Software Berbagai Skala
Pendekatan waterfall dapat digunakan untuk membuat aplikasi berskala besar yang melibatkan banyak orang dan prosedurnya lebih kompleks. Meskipun demikian, pendekatan ini juga dapat digunakan untuk membuat aplikasi berskala menengah maupun kecil. Tentunya penggunaan pendekatan ini perlu disesuaikan dengan kondisi dan kebutuhan di lapangan.
Baca Juga: Apa yang Dimaksud dengan Manajemen Strategis: Pengertian, Manfaat, Tujuan, dan Prosesnya
Kekurangan Pendekatan Waterfall
Membutuhkan Tim yang Solid
Untuk menjalankan tugas sebagaimana mestinya, dibutuhkan tim yang solid. Anggota tim harus mampu bekerja sama dan menjalin koordinasi dengan baik agar mampu menjalankan tugas dengan baik. Jika satu tim tidak solid, kerja satu tim akan berantakan sehingga akan berpengaruh terhadap tim lain.
Kurangnya Fleksibilitas
Pendekatan ini tidak memungkinkan klien memberikan masukan kepada tim developer ketika pengerjaan aplikasi atau software sudah berjalan. Akibatnya, semua anggota tim harus bekejera sesuai dengan arahan atau petunjuk yang telah ditetapkan di awal.
Gambaran Sistem Tidak Dapat Diamati dengan Jelas
Lain halnya dengan pendekatan agile yang memungkinkan klien untuk melihat gambaran sistem secara jelas meskipun masih dalam tahap pengembangan, pendekatan waterfall tidak memberikan kesempatan ini.
Membutuhkan waktu yang Lebih Lama
Proses pengerjaan tiap fase yang berurutan dapat membuat pekerjaan lebih mudah. Akan tetapi, hal tersebut juga menghadirkan sisi negatif, yakni tiap fase tidak bisa dilaksanakan jika fase sebelumnya belum selesai.
Akibatnya, jika terjadi “kemacetan” di satu fase, efeknya besar terhadap fase selanjutnya. Misalnya, tim designer belum menyelesaikan desain tampilan sehingga tim developer belum bisa melakukan coding. Waktu yang dibutuhkan untuk menyelesaikan aplikasi atau software pun akhirnya bertambah.
Baca Juga: Manajemen Sarana dan Prasarana dalam Perusahaan
Tahap-Tahap dalam Pendekatan Waterfall
Setidaknya ada tujuh tahapan dalam pendekatan waterfall.
Requirement Gathering
Tahap pertama yang dilakukan dalam pendekatan waterfall ialah requirement gathering. Pada tahapan ini, dilakukan pengumpulan data ke dalam sebuah dokumen. Developer harus mengetahui kegunaan, kebutuhan klien atau user, dan batasan software.
Contoh dokumen yang digunakan ialah product requirement document (PRD). Dokumen ini berisi ceklist seputar pembuatan software atau aplikasi, mulai pain point hingga aspek fungsionalitas. Informasi dalam ceklist diperoleh dengan berbagai cara, seperti survei, wawancara, dan diskusi.
Analysis Read
Pada tahap ini, semua informasi yang telah dikumpulkan dalam tahap sebelumnya dianalisis untuk menentukan skema, model, dan aturan dalam bisnis.
System Design
Pada tahap ini, dimulailah pembangunan “arsitektur” software berdasarkan analisis informasi. Tahap ini bertujuan untuk memberikan gambaran lengkap tentang tampilan sistem yang akan dikembangkan dan apa saja hal yang harus dikerjakan. Dengan demikian, lebih mudah untuk menentukan hardware dan software apa saja yang dibutuhkan serta berbagai hal teknis lainnya.
Implementasi
Setelah semua hal yang dibutuhkan siap, dimulailah tahap implementasi. Coding yang merupakan inti dalam pembuatan software ada dalam fase ini. Dalam tahap ini, pembuatan software akan dipecah menjadi unit-unit kecil dengan functional testing.
Integrasi dan Testing
Pada tahap kelima, modul-modul yang telah dibuat sebelumnya akan digabungkan. Selanjutnya, dilakukan uji coba atas software yang telah diinput code dan berbagai hal teknis lain secara internal. Tugas ini dilakukan oleh tim quality assurance, beta tester, atau penguji lainnya.
Tahap ini memakan banyak waktu karena tim penguji harus memastikan bahwa segala kebutuhan klien sudah terakomodasi dalam software. Mereka juga harus memastikan bahwa tidak ada kesalahan atau hal yang terlewat dalam software tersebut. Apabila terdapat kesalahan dalam tahap ini, akibatnya akan fatal.
Deployment
Setelah sistem diuji secara fungsional dan nonfungsional oleh tim internal, kemudian dinyatakan tidak ada masalah, produk siap diluncurkan atau diserahkan kepada klien.
Maintenance
Setelah software dirilis, akan terus dilakukan pengembangan dan penyempurnaan. Sangat mungkin ke depan ditemukan kekurangan atau fitur baru yang perlu ditambahkan untuk mengakomodasi kebutuhan. Oleh karena itu, selalu ada versi baru dalam software atau aplikasi yang kita gunakan. Tahapan ini disebut maintenance.
Baca Juga: Kenali Peran Manajemen Personalia di Perusahaan serta Kualifikasinya
Waktu yang Ideal untuk Menggunakan Pendekatan Waterfall
Dengan mempertimbangkan berbagai kelebihan dan kekurangannya, pendekatan waterfall ideal digunakan untuk mengerjakan proyek yang tidak terlalu besar dan tidak membutuhkan pembaharuan terus-menerus. Pasalnya, jika terjadi kesalahan pada tahap sebelumnya, pengerjaan proyek akan lebih sulit. Sisi positifnya ialah membuat proyek lebih terencana karena sudah dianalisis dan didesain di awal.
Di antara berbagai tahapan dalam proyek pembuatan software, yang paling populer barangkali coding. Sering kali kita jumpai lowongan pekerjaan untuk job description ini. Jika kamu tertarik untuk ikut ambil bagian, salah satu skill yang perlu kamu miliki ialah bahasa pemrograman.
Tak harus lewat lembaga formal, kamu bisa mempelajari bahasa pemrograman secara mandiri dengan kursus online GreatNusa. GreatNusa menawarkan beberapa program, di antaranya Algorithm and Programming in Java dan Algoritma, Algoritma sampai OOP dalam Java, dan Programming Menggunakan Bahasa C. Biaya kursus di GreatNusa pun terjangkau dan waktunya bisa kamu atur sendiri. Segera cek info lengkapnya di website GreatNusa, ya.
Bagikan Artikel
Artikel Serupa
10 Alasan Pentingnya Team Work Dalam Bekerja
By greatnusa • 21 September 2021
Strategic Leadership: Pengertian, Ciri, dan Cara Menerapkannya
By greatnusa • 1 Februari 2023
Memahami Apa itu Jiwa Kepemimpinan dan Cara Melatihnya
By greatnusa • 3 Februari 2023
Kenali Faktor-Faktor Yang Mempengaruhi Perencanaan Karir
By greatnusa • 4 Februari 2023
Pengertian Manajemen Bisnis, Komponen, Contoh dan Tugasnya
By greatnusa • 5 Mei 2023
Perbedaan Ekonomi Makro dan Mikro: Prinsip dan Pengaruhnya
By greatnusa • 8 Mei 2023