2. Model Waterfall ?
Menurut Pressman (2010,p39) model
waterfall adalah model klasik yang bersifat
sistematis, berurutan dalam membangun
software.
Model ini melakukan pendekatan secara
sistematis dan berurutan. Disebut
denganwaterfall karena tahap demi tahap yang
dilalui harus menunggu selesainya tahap
sebelumnya dan berjalan berurutan.
3. Sejarah Model Waterfall
Model Waterfall ini awalnya ditemukan oleh Winston W.
Royce pada tahun 1970 . Dia menulis sebuah artikel ilmiah yang
berisi pandangan pribadinya pada pengembangan perangkat
lunak . Pada paruh pertama dari artikel, ia membahas sebuah
proses yang dia sebut ” megah ” . Dia bahkan menggambar sosok
model , dan lain yang menunjukkan mengapa hal itu tidak bekerja
( karena persyaratan selalu berubah ) . Model ini adalah air terjun .
Dia menggunakannya sebagai contoh dari proses yang sama sekali
tidak bekerja. Di paruh kedua artikel ia menggambarkan proses
berulang-ulang bahwa ia dianggap jauh lebih baik .
Nama model ini sebenarnya adalah “Linear Sequential Model”.
Model ini sering disebut dengan “classic life cycle” atau model
waterfall. Model ini sering dianggap kuno, tetapi merupakan model
yang paling banyak dipakai didalam Software Engineering (SE).
4. Sifat-sifat Model Waterfall Yang
Menjadi Masalah
•Ketika problem muncul, maka proses berhenti
karena tidak dapat menuju ke tahapan
selanjutnya.
•Karena pendekatannya secara sequential, maka
setiap tahap harus menunggu hasil dari tahap
sebelumnya.
•Partisi projek ke stages yang berbeda tidak
fleksibel.
6. Communication ( Komunikasi )
Langkah ini merupakan analisis
terhadap kebutuhan software, dan tahap
untuk mengadakan pengumpulan data
dengan melakukan pertemuan dengan
customer, maupun mengumpulkan data-
data tambahan baik yang ada di jurnal,
artikel, maupun dari internet.
7. Planning ( Perencanaan )
Proses planning merupakan lanjutan dari
proses communication (analysis requirement).
Tahapan ini akan menghasilkan dokumen user
requirement atau bisa dikatakan sebagai data
yang berhubungan dengan keinginan user dalam
pembuatan software, termasuk rencana yang
akan dilakukan. Selain itu, penjadwalan dalam
proses pengerjaan juga di tentukan pada tahap
ini.
8. Modelling ( Pemodelan )
Kemudian mulai masuk pada tahap
perancangan dimana perancangan
menerjemahkan kebutuhan sistem ke dalam
representasi untuk menilai kualitas sebelum
tahap selanjutnya di kerjakan atau sebelum
dibuat coding. Tahap ini lebih di fokuskan pada
atribut program, seperti struktur data, arsitektur
perangkat lunak dan detail prosedur.
9. Construction ( Konstruksi atau Pembangunan )
Construction merupakan proses membuat
kode, coding atau pengkodean merupakan
penerjemah desain dalam bahasa yang bisa
dikenali oleh komputer. Programmer akan
menerjemahkan transaksi yang diminta oleh
user. Tahapan inilah yang merupakan tahapan
secara nyata dalam mengerjakan suatu software,
artinya penggunaan computer akan
dimaksimalkan dalam tahapan ini.
10. Deployment ( Penyebaran )
Tahapan ini bisa dikatakan final dalam
pembuatan sebuah software atau system.
Setelah melakukan analisis, desain dan
pengkodean maka system yang sudah jadi akan
digunakan oleh user, kemudian software yang
telah dibuat harus dilakukan pemeliharaan
secara berkala.
11. Kelebihan Model Waterfall
• Semua kebutuhan sistem dapat didefinisikan secara utuh,
eksplisit, dan benar di awal project, maka Software
Engineering (SE) dapat berjalan dengan baik dan tanpa
masalah.
• Setiap anggota dalam SE mengetahui secara pasti apa
yang harus dikerjakan dan kapan harus diselesaikan.
• Mudah dalam implementasi karena pada saat
implementasi telah dilakukan uji coba terhadap setiap
bagian dari program.
• Dokumentasi pengembangan sistem sangat terorganisir,
karena pada setiap tahap harus terselesaikan dengan
lengkap sebelum melangkah ke tahap berikutnya.
12. Kekurangan Model Waterfall
• Pengguna sulit untuk menuangkan ide atau kebutuhan pada
awal pembuatan sistem.
• Apabila terjadi perubahan, maka model ini tidak bisa
digunakan.
• Diperlukan manajemen yang baik, karena proses
pengembangan tidak dapat berulang sebelum
menghasilkan suatu produk, yaitu aplikasi. Jadi apabila
dalam suatu proses seperti perancangan tidak selesai tepat
waktu, maka akan mempengaruhi keseluruhan proses
pengembangan perangkat lunak.
• Membutuhkan waktu yang relatif lama karena model ini
bersifat sequential.
13. Kapan Model Waterfall digunakan ?
• Ketika semua persyaratan sudah dipahami dengan baik di
awal pengembangan
• Definisi produk stabil dan tidak ada perubahan saat
pengembangan untuk alasan apapun seperti perubahan
eksternal, perubahan tujuan, perubahan anggaran atau
perubahan teknologi. Untuk itu,teknologi yang digunakan
pun harus sudah dipahami dengan baik.
• Menghasilkan produk baru atau versi baru dari produk yang
sudah ada. Sebenarnya, jika menghasilkan versi baru maka
sudah masuk incremental development yang setiap tahapnya
sama dengan waterfall kemudian diulang-ulang.
14. Kapan Model Waterfall tidak cocok
digunakan ?
•Ingin mendapatkan keuntungan dari umpan
balik yang cepat
•Benar-benar kurang memahami nilai dan
definisi dari apa yang sedang dibangun.
•Memiliki proyek yang rumit