Home » Kuliah IT » RPL » Karakteristik Model Waterfall dan Tahapannya

Karakteristik Model Waterfall dan Tahapannya

Sekilas, ketika kita mendengar nama waterfall, maka kita pasti akan membayangkan air terjun yang sangat menyegarkan di kaki pegunungan. Namun demikian, ternyata di dalam dunia komputer, terutama pengembangan aplikasi dan juga prototype, nama waterfall juga menjadi salah satu hal yang sangat penting, karena merupakan salah satu metode atau model yang digunakan dalam pengembangan sebuah aplikasi. Model waterfall ini pada awalnya memiliki nama Linear Sequential Model. Namun karena karakteristiknya, maka model ini seringkali disebut juga sebagai model waterfall, karena mirip seperti air terjun, yang harus mengalir dan melwati tahap – tahap tertentu untuk sampai pada tahap akhirnya.

Model waterfall ini pada awalnya dikenalkan oleh Winston Royce pada tahun 1970. Meski sudah berusia sangat tua, namun metode ini masih menjadi andalan bagi para mengembang aplikasi dalam membuat aplikasi–aplikasi komputer yang mereka kembangkan. Kebanyakan pengembangan aplikasi menggunakan metode waterfall ini adalah untuk mengembangkan aplikasi yang besar, seperti sistem operasi, games, dan aplikasi utilitas lainnya.

Karakteristik model waterfall

Sebagai sebuah model yang sering digunakan dalam pengembangna sebuah aplikasi, maka sudah pasti model waterfall ini memilki beberapa karakteristik utama. Apa saja karakteristik utama dari model waterfall ini? berikut ini adalah beberapa karakteristik utama dari model waterfall :

1. Sistem atau proses yang sedang dijalankan akan otomatis terhenti apabila mengalami suatu kendala

Karakteristik pertama dari model waterfall adalah ketika terjadi suatu masalah, maka proses ini akan terhenti dan tidak bisa dilanjutkan sebelum masalah atau problem tersebut diselesaikan terlebih dahulu. Hal ini tentu saja disebabkan karena model waterfall ini merupakans ebuah model prototype yang menggunakan metode atau model yang memiliki sebuah alur tertentu dalam pembuatannya, sehingga nantinya proses tersebut haruslah melewati tahap – tahap tertentu. apabila ternyata pada tahap ataupun waktu tertentu mengalami suatu masalah, maka masalah tersebut haqrus dipecahkan dan juga diselesaikan terlebih dahulu, baru nantinya proses tersebut bisa dilanjutkan kembali.

Contoh aplikasi model waterfall pada kehidupan sehari–hari :

Nah, agar anda tidak merasa kebingungan dengan karakteristik model waterfall ini, maka kita bisa menghubungkannya atau memberikan contoh seperti dalam kehidupan sehari – hari. Contohnya adalah kira – kira sebagai berikut :

Ketika kita akan menjalankan sebuah kendaraan, baik motor atau mobil, maka ada proses yang harus kita lakukan terlebih dahulu, yang dilakukan secara berurutan, seperti :

  • Membuka kunci mobil
  • Membuka kunci stang
  • Memutar kunci kontak
  • Menstarter kendaraan
  • Memanaskan kendaraan
  • Memasukkan gigi
  • Lalu mulai bisa mengendarai

Nah, seperti itu adalah contoh urutan dari model waterfall. Bagaimana apabila salah satu tahap mengalami masalah? Yang terjadi adalah kita memang harus membereskan masalah itu terlebih dahulu. Misalnya, kendaraan yang akan kita gunakan tidak mau distarter, maka proses akan terhenti sampai disitu, dan baru bisa berlanjut apabila masalah tersebut sudah kita atasi terlebih dahulu.

Itulah contoh mudah dari penggunaan karakteristik dari model waterfall ketika mengalami kendala atau mengalami permasalahan pada satu proses tertentu, dimana proses atau langkah berikutnya tidak akan bisa tercapai dan tidak bisa dilakukan apabila mengalami hambatan pada proses-proses sebelumnya.

2. Membutuhkan waktu yang cukup lama untuk menyelesaikan suatu proses

Karakteristik kedua yang bis kita tarik kesimpulan dari model waterfall ini adalah lamanya waktu memproses sesuatu. Ya, penggunaan sistem model waterfall yang mengharuskan setiap prototype melalui proses-proses tertentu tanpa bisa melewati satu atau dua proses ini tentu saja akan membutuhkan waktu yang lebih lama untuk menyelesaikannya. Satu kali model waterfall dilakukan, wajib melewati serangkaian proses yang harus dilewati secara bertahap, dan biasanya proses ini cukup panjang, sehingga nantinya akan memperlambat dan juga membutuhkan waktu yang cukup lama dan juga cukup panjang untuk menyelesaikan suatu proses pembuatan prototype ataupun pembuatan suatu program. Bagi anda yang ingin mengembangkan sebuah program yang dikejar oleh deadline, mungkin model waterfall tidak cocok untuk anda.

3. Model waterfall menggunakan pendekatan sequential, alias urutan tertentu

Karakteristik berikutnya dari model waterfall adalah sistem pendekatan yang digunakan. Ya, model waterfall menggunakan sistem pendekatan berupa pendekatan sequential. Seperti sudah dibahas swebelumnya, sistem pendekatan yag digunakan oleh model waterfall ini merupakan pendekatan yang sifatnya bertahap dan juga berurutan, atau yang dikenal dengan nama sequential. Yaitu dalam sequence – sequence tertentu. hal ini merupakan karakteristik utama dari sebuah model waterfall dalam mengembangkan suatu aplikasi dan juga program.

Keuntungan dari model waterfall yang menggunakan penggunaan pendekatan sequential ini antara lain adalah :

  • Setiap proses yang berjalan bisa dianalisa lebih mendalam, dan dilakukan troubleshooting, sehingga bisa diperoleh aplikasi atau program yang sempurna
  • Dapat menghindari aplikasi yang penuh dengan bug ataupun error
  • Akan membantu membuat atau menghasilkan aplikasi yang lebih berkualitas
  • Setiap proses akan dijalani secara teliti dan juga presisi
  • Aplikasi akan menjadi lebih bermanfaat, karena benar – benar dibuat secara bertahap, tanpa bisa melewati tahap atau proses lainnya.

Tahapan dan Fase yang Digunakan Pada Model Waterfall

Adapun, karena merupaakn sebuah model yang memiliki banyak tahap, model waterfall ini memiliki 5 tahap. Berikut ini adalah kelima tahap pada model waterfall :

1. System engineering and modeling

Tahap pertama yang harus dilewati atau dilalui dalam permodelan waterfall ini adalah tahap system engineering and modeling. Sesuai dengan namanya, tahap ini ditujukan untuk mencari kebutuhan user akan sebuah aplikasi, dan akan membantu para programmer dalam menyusun model – model yang akan digunakan dalam mengembangkan sebuah aplikasi yang nantinya akan berguna untuk user. Pada tahap ini, seluruh kemungkinan akan dianlisa dan juga disusun sedemikan rupa, termasuk penggunaan software, database, hingga hardware.

2. Software requirement analysis

Tahap kedua yang harus dilewati untuk menggunakan model waterfall adalah tahap software requirements analysis. Hal ini berhubungan dengan spesifikasi dari software atau aplikasi yang nantinya akan dibuat, mulai dari user interface, kebutuhan – kebutuhan aplikasi, serta domain dari informasi software. Hal in isangat penting, karena nantinya software requirements analysis ini akan membantu user alam menggunakan aplikasnya, dan tentu saja hasil dari tahap ini juga akan diperkenalkan ke user. Dengan memaksimalkan tahap ini, maka kemampuan sebuah aplikasi akan menjadi lebih optimal, dan lebih baik lagi, termasuk fungsi – fungsi yang dibutuhkan oleh aplikasi tersebut.

3. Design

Tahap berikutnya adalah tahap design. Tahap design merupakan sebuah tahap dimana para programmer dan juga pengembang aplikasi mengembangkan dan membuat cetak biru atau blueprint dari aplikasi yang akan dibuat, Design ini merupakan salah satu tahap yang penting, karena apabila terjadi kesalahan dalam membuat design, maka para programmer akan kesulitan dalam membuat coding yang akan menjadi sebuah program. Ada banyak hal yang harus diperhatikan dalam mengembangkan aplikasi pada tahap design ini, seperti :

  • Diagram alur atau flowchart
  • Bahasa pemrogrman yang akan digunakan
  • Bagaimana pembuatan design yang user friendly
  • Mengaplikasikan analisas sistem ke dalam bentuk cetak biru atau blueprint.

4. Coding

Tahap berikutnya adalah tahap coding. Ya, sesuai namanya, tahap coding merupakan tahap pengkodean, yang mungkin merupakan tahap paling rumit, karena pada tahap coding ini, seorang programmer haqrus mmpu menterjemahkan cetak biru yang sudah dibuat pada tahap design, ke dalam komputer untuk membuat sebuah aplikasi yang sesuai dengan cetak birunya, dengna menggunakan bahasa mesin tentunya, kemampuan memahami bahasa mesn dan jga bahasa pemrograman pada tahap ini sangatlah penting guna merepresentasikan cetak biru atau blueprint yang sudah dibuat menjadi sebuah aplikasi yang bisa berjalan dengan baik dan juga sempurna. Pada tahap ini pula, sebuah aplikasi sudah mulai terlihat wujudnya, dan sudah mulai bisa dilakukan percobaan secara informal.

5. Testing / Verification

Merupakan tahap selanjutnya, dimana aplikasi yang sudah selesai dibuat dalam proses coding ini kemudian diujicobakan, agar nantinya aplikasi yang dibuat bisa berjalan sesuai dengan tujuan utama yang sudah disusun pada tahap satu dan juga tahap dua. Uji coba ini biasanya dilabeli dengan judul ‘trial’, dimana nantinya aplikasi yang sudah jadi dilempar ke pasaran untuk diujicoba ke usernya. User yangmenggunakan trial tersebut akan memberikan feedback mengenai kekurangna dan juga kelebihan dari aplikasi yang sudah dibuat. Selain silempar ke user untuk sesi uji coba, biasanya di dalam seuah lab komputer, tempat mengembangkan aplikasi, terdapat satu tim yang merupakan tester, yang tugas utamanya adalah melakukan pengetesan terhadap aplikasi yang sudah selesai dibuat tersebut.

6. Maintenance

Seperti pengembangan aplikasi pada umumnya, meskipun sudah berhasil diselesaikan dengan baik, sudahj dilempar ke pasaran dalam fersi fix, dan melewati proses trial yang panjang, maintenance pun tetap harus dilakukan. Hal ini untuk memastikan, bahwa aplikasi yang sudah selesai dibuat tersebut nantinya tetap bisa berguna, meskipun telah ada perkembangan jaman. Jadi, setiap aplikasi yang sudah dibuat dan sudah digunakan, haruslah dapat dilakukan pembaruan atau update, untuk menyesuaikan perkembangan teknologi yang sudah ada, sehingga kompatibilitas dari aplikasi tersebut akan selal terjaga.

You may also like