0
Waterfall
Posted by jujur
on
5:03 AM
Waterfall
Metode waterfall adalah suatu proses
pembuatan situs web secara terstruktur dan berurutan dimulai dari penentuan
masalah, analisa kebutuhan, perancangan implementasi, untegrasi, uji coba
sistem, penempatan situs web dan pemeliharaan. Pembuatan situs web dengan
metode ini sangat cocok dilakukan pada situs web berskala besar karena
menyangkut manajemen dan sistem yang rumit.
Metode ini membutuhkan pendekatan
sistematis dan sekuensial dalam pengembangan perangkat lunak dan biasanya
disebut juga dengan classic life cycle, dimulai dari tingkat sistem dan
kemajuan melalui analisis, desain, coding, testing dan pemeliharaan.
Rekayasa dan Pemodelan
Sistem/Informasi (System/Information Engineering and Modeling) Karena perangkat
lunak adalah bagian dari sistem yang lebih besar, pekerjaan dimulai dari
pembentukan kebutuhan-kebutuhan dari semua elemen sistem dan mengalokasikan
suatu subset ke dalam pembentukan perangkat lunak. Hal ini penting, ketika
perangkat lunak harus berkomunikasi dengan hardware, orang dan basis data.
Rekayasa dan pemodelan sistem menekankan pada pengumpulan kebutuhan pada level
sistem dengan sedikit perancangan dan analisis.
Tahapan
Metode Waterfall
Dalam
pengembangannya metode waterfall memiliki beberapa tahapan yang runtut:
requirement (analisis kebutuhan), design sistem (system design), Coding &
Testing, Penerapan Program, pemeliharaan.
·
Requirement
(analisis kebutuhan).
Dalam
langakah ini merupakan analisa terhadap kebutuhan sistem. Pengumpulan data dalam
tahap ini bisa melakukan sebuah penelitian, wawancara atau study literatur.
Seseorang system analisis akan menggali informasi sebanyak-banyaknya dari user
sehingga akan tercipta sebuah sistem 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
analisis untuk menterjemahkan kedalam bahasa pemrograman.
· Design System (design sistem)
Proses
design akan menterjemahkan syarat kebutuhan kesebuah perancangan perangkat
lunak yang dapat diperkirakan sebelum dibuat koding. Proses ini berfokus pada :
struktur data, arsitektur perangkat lunak, representasi interface, dan detail
(algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut
software requirement. Dokumen inilah yang akan digunakan programmer untuk
melakukan aktivitas pembuatan sistemnya.
·
Coding
& Testing (penulisan sinkode program / implemention)
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.
·
Penerapan
/ Pengujian Program (Integration & Testing)
Tahapan
ini bisa dikatakan final dalam pembuatan
sebuah sistem. Setelah melakukan analisa, design dan pengkodean maka
sistem yang sudah jadikan digunakan oleh user.
·
Pemeliharaan
(Operation & Maintenance)
Perangkat
lunak yang susah 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.
Manfaat Metode Waterfall
Keunggulan
model pendekatan pengembangan software dengan metode waterfall adalah
pencerminan kepraktisan rekayasa, yang membuat kualitas software tetap terjaga
karena pengembangannya yang terstruktur dan terawasi. Disisi lain model ini
merupakan jenis model yang bersifat dokumen lengkap, sehingga proses
pemeliharaan dapat dilakukan dengan mudah. Akan tetapi dikarenakan dokumentasi
yang lengkap dan sangat teknis, membuat pihak klien sulit membaca dokumen yang
berujung pada sulitnya komunikasi antar pengembang dan klien. Dokumentasi kode
program yang lengkap juga secara tak langsung menghapus ketergantungan
pengembang terhadap pemrogram yang keluar dari tim pengembang. Hal ini sangat
menguntungkan bagi pihak pengembang dikarenakan proses pengembangan perangkat
lunak tetap dapat dilanjutkan tanpa bergantung pada pemrogram tertentu.
Kelemahan Metode Waterfall
Kelemahan
pengembangan software dengan metode waterfall yang utama adalah lambatnya
proses pengembangan perangkat lunak. Dikarenakan prosesnya yang satu persatu
dan tidak bisa diloncat-loncat menjadikan model klasik ini sangat memakan waktu
dalam pengembangannya. Disisi lain, pihak klien tidak dapat mencoba sistem
sebelum sistem benar-benar selesai pembuatannya. Kelemahan yang lain adalah
kinerja personil yang tidak optimal dan efisien karena terdapat proses menunggu
suatu tahapan selesai terlebih dahulu.
Secara
keseluruhan model pendekatan pengembangan software dengan metode waterfall
cocok untuk pengembangan software / perangkat lunak dengan tingkat resiko yang
kecil, dan memiliki ukuran yang kecil serta waktu pengembangan yang cukup
panjang. Model ini tidak disarankan untuk ukuran perangkat lunak yang besar dan
tingkat resiko yang besar.