WATERFALL
Nama model ini sebenarnya adalah “Linear Sequential Model”.
Model ini sering disebut dengan “classic life cycle” atau model waterfall.
Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970
sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak
dipakai didalam Software Engineering (SE). Model ini melakukan pendekatan
secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke
tahap analisis, desain, coding, testing / verification, dan maintenance.
Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu
selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain
harus menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara umum
tahapan pada model waterfall dapat dilihat pada gambar berikut :
Gambar di atas adalah tahapan umum dari model proses ini.
Fase
atau tahapan yang terjadi pada waterfall model adalah sebagai berikut ::
1) Tahap
Investigasi
Pada
tahap investigasi akan terjadi proses seperti:
a. Initialisasi:
terjadi proses seperti perencanaan manajemen, kebutuhan serta potensi dari
user.
b. Definisi
formal: dilakukan definisi tujuan, motivasi, ruang lingkup, batasan,
kendala, dan strategi. Selain itu, pada definisi formal juga
dilakukan verifikasi permasalahan sehingga dapat dilakukan penilaian terhadap
kebutuhan yang baru.
c. Uji
kelayakan, yang terdiri dari:
1. Uji
kelayakan teknis, merupakan uji terhadap ketersediaan hardware dan software.
2. Uji
kelayakan ekonomis, yaitu menilai apakah manfaat yang didapat dari pengembangan
software akan sebanding dengan biaya yang dikeluarkan.
3. Uji
kelayakan operasional, uji kelayakan yang berkaitan dengan kemampuan orang yang
bekerja dalam sistem untuk melakukan pekerjaan mereka dengan cara yang telah
ditentukan.
4. Uji
kelayakan kelayakan organisasi, menilai kesiapan perusahaan atau organisasi
untuk mengembangkan penjualan pemasaran dan sistem keuangan berbasis Web
(e-commerce system).
2) Tahap
Analisa
Dalam
tahapan ini sistem yang akan dibangun diselaraskan dengan kebutuhan user atau pengguna.
Pada tahap ini terjadi proses seperti:
a.
Determine requirements atau penentuan kebutuhan, hal
ini dilakukan dengan cara mempelajari sistem yang telah
ada, serta menentukan kebutuhan struktur dan menghilangkan redundansi.
b.
Requirement analysis atau analisa kebutuhan, terdiri
dari analisa kebutuhan fungsional dan performa (kinerja).
c.
Menghasilkan desain sistem alternatif
d.
Membandingkan alternatif desain sistem yang dihasilkan
dan
e.
Merekomendasikan alternatif terbaik kepada klien.
3) Tahap
Design
Tahap
menentukan bagaimana sistem mencapai tujuan yang telah didefinisikan
sebelumnya. Tahap ini terdiri dari:
a.
User interface design, meliputi tampilan, form, report
dan dialog design.
b.
Data design, merupakan proses desain elemen struktur
data.
c.
Process design, merupakan desain program prosedur
sistem
4) Tahap
Implementasi
Pada
tahap ini terjadi beberapa hal seperti:
a.
Evaluasi hardware, software dan jasa
b.
Modifikasi dan pengembangan software
c.
Dokumentasi, yang merupakan mekanisme komunikasi utama
selama proses pengembangan.
d.
Konversi data, pada proses ini terjadi perbaikan dan
penyaringan data yang tidak diinginkan dan konsolidasi data.
e.
Testing atau uji coba, pada proses ini dilakukan uji
coba dan debugging software.
f.
Training atau pelatihan sistem/software yang telah terbentuk.
g.
Konversi, yakni proses pergantian dari sistem lama ke
sistem baru. Proses konversi dapat dilakukan melalui 4 macam cara antara lain:
1.
Parallelstrategy
2.
Pilot strategy
3.
Phased strategy dan
4.
Plunge strategy
5) Tahap
Pemeliharaan (maintenance)
Pada
proses ini terjadi modifikasi software, perbaikan error atau umpan balik dari
user terhadap software yang telah mereka gunakan.
Keuntungan dari Model
Waterfall
Mari kita lihat beberapa
keuntungan dari model ini :
·
Proyek ini membutuhkan
pemenuhan satu fase, sebelum melanjutkan ke yang berikutnya. Oleh karena
itu jika ada kesalahan dalam perangkat lunak ini akan terdeteksi selama salah
satu tahap awal dan akan disegel untuk koreksi.
·
Banyak penekanan
diletakkan pada dokumen dalam metode ini dibandingkan dengan metode
baru. Ketika pekerja baru memasuki proyek, lebih mudah bagi mereka untuk
melanjutkan pekerjaan dari mana ia telah ditinggalkan. Metode baru tidak
mendokumentasikan proses perkembangan mereka yang membuat sulit bagi seorang
anggota tim baru untuk memahami apa langkah yang akan mengikuti
selanjutnya. Model Waterfall adalah metode ke depan lurus dan mudah
memungkinkan satu tahu apa yang sedang berlangsung tahap.
·
Metode Waterfall ini
juga dikenal di kalangan pengembang perangkat lunak sehingga mudah digunakan. Hal
ini lebih mudah untuk mengembangkan berbagai perangkat lunak melalui metode ini
dalam kurun waktu singkat.
Kekurangan Model
Waterfall
·
Banyak proyek perangkat
lunak tergantung pada faktor eksternal; dari mana klien untuk perangkat lunak yang
sedang dirancang adalah faktor terbesar. Hal ini terjadi banyak kali,
bahwa klien perubahan persyaratan proyek, sehingga mempengaruhi sebuah
perubahan dalam rencana normal konstruksi dan karenanya fungsi juga. Model
Waterfall tidak bekerja dengan baik dalam situasi seperti ini karena
mengasumsikan ada perubahan terjadi setelah proses telah dimulai sesuai
rencana.
Jika,
misalnya, hal ini terjadi dalam Model Air Terjun, maka sejumlah langkah akan
pergi ke limbah, dan di sana akan muncul kebutuhan untuk memulai semuanya
lagi. Tentu saja hal ini juga membawa tentang aspek waktu dan uang yang
semua akan sia-sia. Oleh karena itu metode ini tidak akan sama sekali
terbukti efektif biaya. Bahkan tidak mudah untuk mengambil perkiraan biaya
setiap langkah, karena setiap tahapan yang cukup besar.
Ada
banyak model perangkat lunak lainnya perkembangan yang meliputi banyak aspek
yang sama dari model Waterfall. Namun tidak seperti model Waterfall,
metode ini tidak sebagian besar dipengaruhi oleh sumber-sumber luar. Dalam
model air terjun, ada banyak orang yang berbeda bekerja di fase yang berbeda
dari proyek seperti perancang dan pembangun dan masing-masing membawa
pendapatnya sendiri tentang bidang keahliannya. Desain, oleh karena itu,
pasti akan dipengaruhi, namun dalam model Waterfall, tidak ada ruang untuk itu.
·
Aspek negatif lain dari
model ini adalah bahwa sejumlah besar waktu juga terbuang. Sebagai contoh
jika kita mempelajari setiap proses pengembangan perangkat lunak, kita tahu
bahwa Tahap II tidak dapat dilaksanakan sampai Tahap I telah berhasil
diselesaikan, maka sementara desainer masih merancang perangkat lunak, saat
pembangun benar-benar sia-sia.
·
Kelemahan lain dari
metode ini adalah bahwa periode pengujian datang agak terlambat dalam proses
perkembangan, sedangkan dalam berbagai program pembangunan lain desain akan
diuji banyak lebih cepat untuk menemukan cacat pada saat banyak waktu dan uang
belum terbuang.
·
Menjelaskan dokumentasi
selama metode Waterfall memiliki keuntungan, tetapi tidak tanpa kelemahan
juga.Dibutuhkan banyak upaya dan waktu, yang mengapa itu tidak cocok untuk
proyek-proyek kecil.
Modifikasi Model Air
Terjun
Karena berbagai kerugian
banyak versi modifikasi lain dari model ini juga telah diajukan dan beberapa di
antaranya disebutkan di bawah ini:
·
Royce Model
Model Royce menekankan pada kenyataan bahwa model Waterfall menderita cacat serius yang satu tidak dapat kembali ke tahap sebelumnya untuk memperbaiki sesuatu yang tidak beres.
Model Royce menekankan pada kenyataan bahwa model Waterfall menderita cacat serius yang satu tidak dapat kembali ke tahap sebelumnya untuk memperbaiki sesuatu yang tidak beres.
·
Sashimi Model
Sashimi adalah versi modifikasi sejati dari model Waterfall. Fase-fase yang agak sama seperti dalam Model Air terjun; hanya kali ini fase yang tumpang tindih satu sama lain yang hadir banyak keuntungan. Misalnya waktu tidak akan terbuang karena sebelum Tahap I akan selesai, Tahap II sudah akan berlangsung. Selain itu, karena mereka tumpang tindih, sehingga seseorang dapat kembali ke langkah sebelumnya jika diinginkan.
Sashimi adalah versi modifikasi sejati dari model Waterfall. Fase-fase yang agak sama seperti dalam Model Air terjun; hanya kali ini fase yang tumpang tindih satu sama lain yang hadir banyak keuntungan. Misalnya waktu tidak akan terbuang karena sebelum Tahap I akan selesai, Tahap II sudah akan berlangsung. Selain itu, karena mereka tumpang tindih, sehingga seseorang dapat kembali ke langkah sebelumnya jika diinginkan.
·
Model Siklus Hidup Aorta
Perbedaan dalam model ini adalah bahwa mereka banyak mengandalkan pada umpan balik yang berasal dari fase-fase lain sebelum maju ke berikutnya.
Perbedaan dalam model ini adalah bahwa mereka banyak mengandalkan pada umpan balik yang berasal dari fase-fase lain sebelum maju ke berikutnya.
·
Model Waterfall V
Model Waterfall V bergantung pada sebuah program perangkat lunak perkembangan linier yang menekankan pada pengembangan seimbang lebih dari apa pun.
Model Waterfall V bergantung pada sebuah program perangkat lunak perkembangan linier yang menekankan pada pengembangan seimbang lebih dari apa pun.
Menurut kami, tahapan-tahapan model ini sudah cukup baik
dalam artian minimal untuk melakukan SE, maka harus ada tahapan-tahapan ini.
Tahapan-tahapan ini jugalah yang digunakan oleh model-model yang lain pada
umumnya. Ada filosofi yang mengatakan sesuatu yang sukses diciptakan pertama kali,
maka akan terus dipakai di dalam pengembangannya. Hal ini juga berlaku pada
waterfall model ini. Mungkin dapat dikatakan bahwa inilah standar untuk
melakukan SE.
Akan tetapi, yang mungkin menjadi banyak pertimbangan
mengenai penggunaan dari model ini adalah metode sequential-nya. Mungkin untuk
awal-awal software diciptakan, hal ini tidak menjadi masalah, karena dengan
berjalan secara berurutan, maka model ini menjadi mudah dilakukan. Sesuatu yang
mudah biasanya hasilnya bagus. Oleh karena itu model ini sangat populer. Akan
tetapi, seiring perkembangan software, model ini tentu tidak bisa mengikutinya.
Yang menjadi kelemahan adalah pada pengerjaan secara berurutan tadi, seperti
yang sudah saya utarakan sebelumnya. Kelemahan-kelemahan yang lain juga sudah
saya utarakan di atas, atau bahkan masih ada yang lainnya.
Dari sini, nantinya akan dikembangkan model-model yang lain,
bahkan ada tahap evolusioner dari suatu model proses untuk mengatasi
kelemahan-kelemahan tadi. Meskipun secara tahapan masih menggunakan standar
tahapan waterfall model. Kesimpulannya adalah ketika suatu project skalanya
sedang mengarah kecil bisa menggunakan model ini. Akan tetapi kalau sudah
project besar, tampaknya kesulitan jika menggunakan model ini.
PROTOTYPE
Prototyping merupakan salah satu metode pengembangan perangat lunak yang
banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan
dapat saling berinteraksiselama proses pembuatan sistem.Sering terjadi seorang
pelanggan hanya mendefinisikan secara umum apa yang dikehendakinyatanpa
menyebutkan secara detal output apa saja yang dibutuhkan, pemrosesan dan
data-data apasaja yang dibutuhkan. Sebaliknya disisi pengembang kurang
memperhatikan efesiensi algoritma,kemampuan sistem operasi dan interface yang
menghubungkan manusia dan komputer.Untuk mengatasi ketidakserasian antara
pelanggan dan pengembang , maka harus dibutuhakankerjasama yang baik diantara
keduanya sehingga pengembang akan mengetahui dengan benar apa yang
diinginkan pelanggan dengan tidak mengesampingkan segi-segi teknis dan
pelangganakan mengetahui proses-proses dalm menyelasaikan system yang
diinginkan. Dengan demikianakan menghasilkan sistem sesuai dengan jadwal waktu
penyelesaian yang telah ditentukan.Kunci agar model prototype ini berhasil dengan
baik adalah dengan mendefinisikan aturan-aturan main pada saat awal, yaitu
pelanggan dan pengembang harus setuju bahwa prototypedibangun untuk
mendefinisikan kebutuhan. Prototype akan dihilangkan sebagian atau
seluruhnyadan perangkat lunak aktual aktual direkayasa dengan kualitas dan
implementasi yang sudahditentukan.
Ada
2 Jenis Prototype :
- Jenis
I : Suatu Sistem yang akan menjadi sistem operasional
- Jenis
II : Suatu model yang dapat dibuang yang berfungsi sebagai cetak biru bagi
sistem operasional.
Karakteristik
metode prototyping meliputi langkah-langkah :
1.
Pemilahan Fungsi
2.
Penyusunan Sistem Informasi
3.
Evaluasi
4.
Penggunaan Selanjutnya
Jenis-jenis prototyping
meliputi :
1.
Feasibility prototyping
2.
Requirement prototyping
3.
Desain Prototyping
4.
Implementation prototyping
Teknik-teknik
prototyping meliputi :
1.
Perancangan Model
2.
Perancangan Dialog
3.
Simulasi
SISTEM YANG BERMANFAAT DARI PROTOTIPE
Sejak
kebutuhan (baca Spesifikasi Fungsi) pada umumnya berhubungan dengan pandangan
user terhadap sistem, hanya dengan prototipe tampilan bagi user sudah cukup
untuk memeriksa yang dibutuhkan. Menu-menu, bentuk tampilan input, tampilan
keluaran, atau laporan yang dicetak, pertanyaan-pertanyaan, pesan-pesan
merupakan calon yang ideal untuk prototipe.
Di lain pihak, perhitungan yang
rumit, kumpulan update data dan realtime, dan sistem yang bersifat scientific
sangat sulit untuk dijadikan model.
Sistem yang paling sesuai untuk
prototipe adalah satu dari banyak hal yang bergantung pada sistem input/output
dari user. Sistem dengan transaksi on-line dikendalikan melalui menu, layar,
formulir, laporan, daftar dan perintah.
TAHAPAN-TAHAPAN PROTOYPING
Tahapan-tahapan dalam Prototyping adalah sebagai
berikut:
1.
Pengumpulan
kebutuhan.Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh
perangkatlunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem
yang akan dibuat.
2.
Membangun
prototyping.Membangun prototyping dengan membuat perancangan sementara yang
berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input
dan format output).
3.
Evaluasi
protoptyping.Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang
sudah dibangun sudahsesuai dengan keinginann pelanggan. Jika sudah sesuai maka
langkah 4 akan diambil.Jika tidak prototyping direvisi dengan mengulangu
langkah 1, 2 , dan 3.
4.
Mengkodekan
system.Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke
dalam bahasa pemrograman yang sesuai.
5.
Menguji
system.Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai,
harus dites dahulusebelum digunakan. Pengujian ini dilakukan dengan White Box,
Black Box, Basis Path, pengujian arsitektur dan lain-lain
6.
Evaluasi
Sistem.Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan
yangdiharapkan . Juka ya, langkah 7 dilakukan; jika tidak, ulangi langkah 4 dan
5.
7.
Menggunakan
system.Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk
digunakan.
PROTOTYPING
MODEL
Keungggulan :
·
Adanya kominuikasi yang baik antara
pengembang dan pelanggan
·
Pengembang dapat bekerja lebih baik
dalam menentukan kebutuhan pelanggan
·
Pelangggan berperan aktif dalam
pengembangan sistem
·
Lebih menghemat waktu dalam
pengembangan sistem
·
Penerapan menjadi lebih mudah karena
pemakai mengetahui apa yang diharapkannya
Kelemahan :
·
Ketidaksadaran user bahwa ini hanya
suatu model awal bukan model akhir
·
Pengembang kadang-kadang membuat
implementasi yang sembarangan.
·
Teknik dan tools yang tidak optimal
pada prototipe yang akan tetap digunakan pada softare sesungguhnya
INCREATMENT
Model incremental menggabungkan
elemen-elemen model sekuensial linier (diimplementasikan secara berulang)
dengan filosofi prototype interatif. Model ini memakai urutan-urutan linier di
dalam model yang membingungkan, seiring dengan laju waktu kalender. Setiap
urutan linier menghasilkan pertambahan perangkat lunak yang kemudian dapat
disampaikan kepada pengguna.
Pada saat model incremental
(pertambahan) ini digunakan, pertambahan pertama sering merupakan produk inti (core product), yaitu sebuah model
pertambahan yang dipergunakan, tetapi beberapa muka tambahan (beberapa
diketahui dan beberapa tidak) tetap tidak disampaikan. Produk inti tersebut
dipergunakan oleh pelanggan (atau mengalami pengkajian detail). Sebagai hasil
dari pemakaian dan/atau evaluasi maka dikembangkan rencana bagi pertambahan
selanjutnya. Rencana tersebut menekankan modifikasi produk inti untuk secara
lebih baik memenuhi kebutuhan para pelanggan dan penyampaian fitur serta
fungsional tambahan. Proses ini mengikuti penyampaian setiap pertambahan sampai
bisa menghasilkan produk yang lengkap.
Model proses incremental tersebut,
seperti model prototype dan pendekatan-pendekatan evolusioner yang lain,
bersifat iterative. Tetapi tidak seperti model prototype, model pertambahan
berfokus pada penyampaian produk operasional dalam setiap pertambahannya.
Pertambahan awal ada di versi stripped
down dari produk akhir, tetapi memberikan kemampuan untuk melayani
pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai.
Perkembangan pertambahan, khususnya
berguna pada saat staffing,
tidak bisa dilakukan dengan menggunakan implementasi lengkap oleh batasan waktu
bisnis yang sudah disepakati untuk proyek tersebut. Jika produk inti diterima
dengan baik, maka staf tambahan (bila dibutuhkan) bisa ditambahkan untuk
mengimplementasi pertambahan selanjutnya. Sebagai tambahan, system mayor yang
sedang pada masa perkembangan serta waktu penyampaiannya belum pasti, mungkin
membutuhkan keberadaan perangkat keras yang baru. Bisa juga rencana tertentu
dibuat untuk menghindari pemakaian perangkat lunak ini, sehingga memungkinkan
fungsionalitas partial disampaikan kepada pemakai tanpa harus banyak
tertunda.
Contoh Penggunaan Incremental Model
Misalnya, perangkat lunak pengelola
kata yang dikembangkan dengan menggunakan paradigm penambahan akan menyampaikan
manajemen file dasar, editing serta fungsi penghasilan dokumen pada penambahan
pertama, kemudian editing dan kemampuan penghasilan dokumen yang lebih canggih
pada pertambahan kedua, pengecekan speliing dan tata bahasa pada pertambahan
ketiga, serta kemampuan pemgaturan halaman tingkat lanjut pada tahap
pertambahan keempat. Harus dicatat bahwa aliran proses untuk berbagai
pertambahan tersebut dapat menggabungkan paradigm prototype.
Tahapan Incremental Model
Pada
awal tahapan dilakukan penentuan kebutuhan dan spesifikasi,Kemudian dilakukan
perancangan arsitektursoftware yang
terbuka, agar dapat diterapkan pembangunan per-bagian pada tahapan selanjutnya.
o
Requirement adalah proses tahapan awal yang dilakukan pada incremental model adalah
penentuan kebutuhan atau analisis kebutuhan.
o
Specification adalah proses spesifikasi dimana menggunakan analisis
kebutuhan sebagai acuannya.
o
Architecture Design adalah tahap selanjutnya,
perancangan software yang terbuka agar dapat diterapkan sistem pembangunan
per-bagian pada tahapan selanjutnya.
o
Code setelah melakukan proses desain selanjutnya ada pengkodean.
o
Test merupakan tahap pengujian dalam model ini.
Pada saat model incremental (pertambahan) ini digunakan,
pertambahan pertama sering merupakan produk inti (core product), yaitu sebuah
model pertambahan yang dipergunakan, tetapi beberapa muka tambahan (beberapa
diketahui dan beberapa tidak) tetap tidak disampaikan.
Produk inti tersebut dipergunakan oleh pelanggan (atau
mengalami pengkajian detail). Sebagai hasil dari pemakaian dan/atau evaluasi
maka dikembangkan rencana bagi pertambahan selanjutnya. Rencana tersebut
menekankan modifikasi produk inti untuk secara lebih baik memenuhi kebutuhan
para pelanggan dan penyampaian fitur serta fungsional tambahan. Proses ini
mengikuti penyampaian setiap pertambahan sampai bisa menghasilkan produk yang
lengkap.
Model proses incremental tersebut, seperti model prototype
dan pendekatan-pendekatan evolusioner yang lain, bersifat iterative. Tetapi
tidak seperti model prototype, model pertambahan berfokus pada penyampaian
produk operasional dalam setiap pertambahannya. Pertambahan awal ada di versi
stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani
pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai.
Perkembangan pertambahan, khususnya berguna pada saat
staffing, tidak bisa dilakukan dengan menggunakan implementasi lengkap oleh
batasan waktu bisnis yang sudah disepakati untuk proyek tersebut. Jika produk
inti diterima dengan baik, maka staf tambahan (bila dibutuhkan) bisa
ditambahkan untuk mengimplementasi pertambahan selanjutnya. Sebagai tambahan,
system mayor yang sedang pada masa perkembangan serta waktu penyampaiannya
belum pasti, mungkin membutuhkan keberadaan perangkat keras yang baru. Bisa
juga rencana tertentu dibuat untuk menghindari pemakaian perangkat lunak ini,
sehingga memungkinkan fungsionalitas partial disampaikan kepada pemakai tanpa
harus banyak tertunda.
Karakteristik incremental
1.
Kombinasikan
element-element dari waterfall dengan sifat iterasi/perulangan.
2.
Element-element
dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi
tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
3.
Produk
hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau
menjalani review/pengecekan detil. Hasil review tersebut menjadi bekal
untuk pembangunan pada increment berikutnya. Hal ini terus
dikerjakan sampai produk yang komplit dihasilkan.
4.
Model
ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
5.
Mampu
mengakomodasi perubahan secara fleksibel.
6.
Produk
yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
7.
Mungkin
terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment.
8.
Produk
hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau
menjalani review/pengecekan detil. Hasil review tersebut menjadi bekal untuk
pembangunan pada increment berikutnya. Hal ini terus dikerjakan sampai produk
yang komplit dihasilkan.
Kelebihan Penggunaan Incremental
Model
Merupakan model dengan manajemen
yang sederhana.
»
Bersifat
interatif atau perulangan.
»
mampu
mengakomodasi perubahan secara fleksibel.
»
prioritas
tinggi pada pelayanan system adalah yang paling diuji.
»
Produk
yang dihasilkan semakin lama semakin lengkap, hingga versi akhir dari sebuah
produk akan dianggap paling lengkap dan sempurna karena mengalami perbaikan
yang berkesinambungan.
»
Model
ini cocok jika jumlah anggota tim pengembangan/pembangunan software terbatas
»
Pelanggan
dapat memakai inkremen yang pertama sebagai bentuk prototype dan mendapatkan
pengalaman yang dapat menginformasikan persyaratan untuk inkremen system
berikutny
»
Resiko
untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah dapat
ditemukan pada beberapa inkremen, bias saja beberapa inkremen diserahkan dengan
sukses kepada pelanggan.
Kekurangan Penggunaan Incremental
Model
»
Inkremen
harus relative lebih kecil (tidak lebih dari 20.000 baris kode) dan setiap
inkremen harus menyediakan sebagian dari fungsional system
»
Adanya
kesulitan untuk memetakan persyaratan pelanggan pada inkremen dengan ukuran
yang benar
»
Butuh
waktu yang relatif lebih lama untuk menghasilkan produk yang lengkap.
Kendala Penggunaan Incremental
Model
Kendala yang sering terjadi adalah sulitnya untuk memetakan
kebutuhan user (customer) ke dalam rencana spesifikasi masing-masing hasil
increment. Hal ini disebabkan pula karena seringkali user sulit menentukan
kebutuhannya sendiri secara eksplisit atau jelas.
Implementasi
Incremental Model :
·
Untuk
sistem dengan interaksi skala kecil dan medium
·
Untuk
sistem dengan masa penggunaan pendek
·
Cocok
untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
Sebagai contoh pertama, software word-processing, dibangun menggunakan incremental model, mendelivery fungsi
dasar file management, editing, dan fungsi document production pada
Increment pertama. Kemampuan editing, dan fungsi document production yang lebih baik pada increment kedua, checking dan grammar spelling pada incrementketiga. Proses akan diulangi
sampai produk yang lengkap telah dihasilkan. Jika menggunakan Incremental model,increment yang pertama merupakan inti product. Incremental model focus pada
pendeliverian opertional productpada
tiap increment.
Sebagai contoh kedua, mengadopsi model sekuensial linier dan
model prototipe. Fungsi dasar sama, tapi ada tambahan asesoris (contoh : ada
M.Word 1997, 2000). Fungsi tambahan ditambahkan terus untuk membuat system
menjadi lebih baik. Pada increment pertama PL yang jadi, mengakomodasi kebutuhan
inti. Baru pada tahap berikutnya ditambahkan kemampuan baru.
Mengapa model ini sangat
populer??? Selain
karena pengaplikasian menggunakan model ini mudah, kelebihan dari model ini
adalah ketika semua kebutuhan sistem dapat didefinisikan secara utuh, eksplisit,
dan benar di awal project, maka SE dapat berjalan dengan baik dan tanpa
masalah. Meskipun seringkali kebutuhan sistem tidak dapat didefinisikan
seeksplisit yang diinginkan, tetapi paling tidak, problem pada kebutuhan sistem
di awal project lebih ekonomis dalam hal uang (lebih murah), usaha, dan waktu
yang terbuang lebih sedikit jika dibandingkan problem yang muncul pada
tahap-tahap selanjutnya.
Meskipun demikian, karena model ini melakukan pendekatan
secara urut / sequential, maka ketika suatu tahap terhambat, tahap selanjutnya
tidak dapat dikerjakan dengan baik dan itu menjadi salah satu kekurangan dari
model ini.
Sumber
:
Buku Software Engineering by Roger S. Pressman
http://en.wikipedia.org/wiki/Waterfall_model
http://tepinfo.blogspot.com/2011/12/model-waterfall.html
http://id.scribd.com/doc/55303320/Pengertian-Prototype
http://yuliagroups.wordpress.com/pengertian-prototype/
http://daanlaiablog.blogspot.com/2012/06/normal-0-false-false-false-en-us-x-none.html
http://kantin-kampus.blogspot.com/2012/02/metode-incremental.html
mantap buat ngerjain tugas :-D
BalasHapuscicicuit
cc health
serba serbi
kenari gacor
telur lovebird
lovebird yang baik
penyakit lovebird
jenis kelamin lovebird
kenari yorkshire
mengenal kenari f1
istilah keturunan kenari
keunggulan kenari AF
ijin ambil mas
BalasHapuskalo prototype di buat ke dalam laporan bagaimana yaa format nya?
BalasHapusMateri tentang Incremental Model nya bagus gan
BalasHapus.
ane mau sharing tentang Kelebihan dan Kekurangan Proses Model Pada Rekayasa Perangkat Lunak (ada Incremental Model jga)
jangan lupa kunjungi balik ya
.
http://markijar.blogspot.com/2015/04/kelebihan-dan-kekurangan-model-proses.html
terimakasih, tuisannya sangat bermanfaat sekali
BalasHapusMy blog
good artikel
BalasHapusMy blog
Ada ga bang yg Contoh Kasusnya itu gimna ? Kaya contoh kasus Modifed Waterfall Sashimi. Atau yg lain
BalasHapus