Waterfall Model adalah sebuah metode pengembangan software yang bersifat sekuensial. Metode ini dikenalkan oleh Royce pada tahun 1970 dan pada saat itu disebut sebaga isi klus klasik dan sekarang ini lebih dikenal dengan sekuensial linier. Selain itu Model ini merupakan model yang paling banyak dipakai oleh para pengembang software. Inti dari metode waterfall adalah
pengerjaan dari suatu system dilakukan secara berurutan atau secara
linear. Jadi jika langkah satu belum dikerjakan maka tidak akan bisa melanjutkan kelangkah 2, 3 dan seterusnya. Secara otomatis
tahapan ke-3 akan bisa dilakukan jika tahap ke-1 dan ke-2 sudah
dilakukan. Ada dua gambaran dari Waterfall Model, biarpun berbeda dalam
menggunakan fase tapi intinya sama.
Fase-fase dalam Waterfall Model menurut Pressman
Fase-fase dalam Waterfall Model menurut Sommervile
Keterkaitan dan pengaruh antar
tahap ini ada karena output sebuah tahap dalam Waterfall Model
merupakan input bagi tahap berikutnya, dengan demikian ketidak
sempurnaan hasil pelaksanaan tahap sebelumnya adalah awal ketidak
sempurnaan tahap berikutnya. Memperhatikan karakteristik ini, sangat
penting bagi tim pengembang dan perusahaan untuk secara bersama-sama
melakukan analisa kebutuhan dan desain system sesempurna mungkin sebelum
masuk kedalam tahap penulisan kode program. Secara garis besar metode waterfall mempunyai langkah-langkah sebagai berikut :
Analisa, Design, Code dan Testing, Penerapan dan Pemeliharaan
1. Analisa kebutuhan (Requirement Analysis)/(Requirements analysis and definition)
Langkah
ini merupakan analisa terhadap kebutuhan sistem.Pengumpulan data dalam
tahap ini bisa malakukan sebuah penelitian, wawancara atau study
literatur.Seorang system analis akan menggali informasi
sebanyak-banyaknya dari user sehingga akan tercipta sebuah system komputer yang bisa melakukan tugas-tugas yang diinginkan oleh user tersebut. Tahapan ini akan menghasilkan dokumen user requirement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan sistem. Dokumen inilah yang akan menjadi acuan system analis untuk menterjemahkan kedalam bahasa pemprogram.
2. Design sistem (System Design)
Proses
desain akan menerjemahkan syarat kebutuhan kesebuah perancangan
perangkat lunak yang dapat diperkirakan sebelum dibuat coding. Proses
ini berfokus pada :struktur data, arsitektur perangkat lunak,
representasi interface, dan detail (algoritma) prosedural. Tahapan ini
akan menghasilkan dokumen yang disebut software requirment. Dokumen inilah yang akan digunakan programmer untuk melakukan aktivitas pembuatan sistemnya.
3. Coding & Testing/penulisankode Program (Implementation)
Coding merupakan penerjemahan design dalam bahasa yang bisa dikenali oleh komputer.Dilakukan oleh programmer yang akan meterjemahkan transaksi yang diminta oleh user. Tahapan
inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu
sistem.Dalam artian penggunaan computer akan dimaksimalkan dalam tahapan
ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap system tersebut dan kemudian bisa diperbaiki.
4. Penerapan / pengujian program (Integration & Testing)
Tahapan ini bisa dikatakan final dalam pembuatan sebuah sistem.Setelah melakukan analisa, design dan pengkodean maka sistem yang sudah jadiakan digunakan oleh user.
5. Pemeliharaan (Operation & Maintenance)
Perangkat
lunak yang sudah disampaikan kepada pelanggan pasti akan mengalami
perubahan. Perubahan tersebut bisa karena mengalami kesalahan karena
perangkat lunak harus menyesuaikan dengan lingkungan (periperal atau
system operasi baru) baru, atau karena pelanggan membutuhkan
perkembangan fungsional.
KeuntunganMetode Waterfall
- Kualitas dari sistem yang dihasilkan akan baik. Ini dikarenakan oleh pelaksanaannya secara bertahap. Sehingga tidak terfokus pada tahapan tertentu.
- Document pengembangan system sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya. Jadi setiap fase atau tahapan akan mempunyai dokumen tertentu.
- Metode ini masih lebih baik digunakan walaupun sudah tergolong kuno, daripada menggunakan pendekatan asal-asalan. Selain itu, metode ini juga masih masuk akal jika kebutuhan sudah diketahui dengan baik.
Kelemahan waterfall
- Diperlukan majemen yang baik, karena proses pengembangan tidak dapat dilakukan secara berulang sebelum terjadinya suatu produk.
- Kesalahan kecil akan menjadi masalah besar jika tidak diketahui sejak awal pengembangan yang berakibat pada tahapan selanjutnya.
- Pelanggan sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat mengakomodasi ketidak pastian pada saat awal pengembangan.
- Pelanggan harus sabar, karena pembuatan perangkat lunak akan dimulai ketika tahap desain sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan waktu yang lama.
- Pada kenyataannya, jarang mengikuti urutan sekuensial seperti pada teori. Iterasi sering terjadi menyebabkan masalah baru.
d-in4matika Templates
4 Comment:
makasih banyak...
artikel bagus mas
sandal sepatu kualitas terjamin
Artikelnya bermanfaat kak, ini saya juga punya artikel tentang Model Proses Pada Rekayasa Perangkat Lunak, semoga bisa saling melengkapi
Kelebihan dan Kekurangan 5 Model Proses Pada Rekayasa Perangkat Lunak - MARKIJAR.Com
Blog macam apa ini gak guna banget KONTOL!!! , hapus blognya COK asu blog ngentot anjing tai asu! , gue tempeleng baru tau rasa lu KONTOL BABI!!
Posting Komentar