Waterfall Model
Berikut adalah
langkah-langkah dari waterfall model;
1.
Requirements analysis and definition :
mengumpulkan kebutuhan secara lengkap lalu didefinisikan kebutuhan yang harus
dipenuhi oleh program yang akan dibangun.
2.
System and software design : Desain dikerjakan
setelah kebutuhan selesai dikumpulkan secara lengkap
3.
Implementation and Unit Testing : Desain program
diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemrograman yang
sudah ditentukan.
4.
Integration and system testing : penyatuan
unit-unit program kemudian diuji secara keseluruhan
5.
Operation and maintenance : mengoperasikan
program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau
perubahan karena adaptasi dengan situasi sebenarnya.
Berikut
adalah beberapa kelebihan dari Waterfall Model;
-
Model pengembangan yang paling lama dan handal
digunakan.
-
Cocok untuk sistem software berskala besar
-
Cocok untuk sistem software yang sifatnya
generik
-
Pengerjaan proyeknya cenderung terjadwal dengan
baik dan mudah terkontrol
Berikut
adalah beberapa kekurangan dari Waterfall Model;
-
Persyaratan sistem harus digambarkan dengan
jelas
-
Rincian proses tidak boleh berubah – ubah
-
Sulit untuk mengadaptasi jika terjadi perubahan
spesifikasi pada suatu tahapan, singkatnya, tidak cocok dikerjakan oleh pemula.
Contoh kasus
Waterfall
-
Software pengolah gambar,Library Online dan
Software penjualan.
Prototype Model
Prototype Model atau proses
pengembangan perangkat lunak melalui mekanisme pembuatan prototip dari
perangkat lunak sering digunakan bilamana terdapat permasalahan dalam
menghimpun kebutuhan user atau user tidak dapat menggambarkan seperti apa
kebutuhannya akan perangkat lunak.
Pengembang akan membuat prototip
perangkat lunak berdasarkan gambaran awal atau analisa kebutuhan awal lalu
dikomunikasikan kepada user. Proses berulang sampai user menyetujui prototip
dan selanjutnya prototip yang disetujui digunakan untuk menyusun requirement
dan rancangan baru atau prototype dilanjutkan untuk menjadi perangkat lunak
yang lengkap.
Kelebihan
-
Sudah terstruktur
-
Ada komunikasi yang baik antara pengembang dan
pelanggan
-
Pengembang dapat bekerja lebih baik dalam
menentukan kebutuhan pelanggan
-
Lebih menghemat waktu
-
Penerapan lebih mudah
Kekurangan
Pengembang ingin cepat selesai sehingga
menggunakan algoritmadan bahasa pemrograman yang sederhana untuk membahas
program , Hubungan pelanggan dengan komputer yang disediakan mungkin tidak
mencerminkan teknik perancangan yang baik.
Rapid Application Development (RAD)
Rapid Application Development (RAD) adalah sebuah model proses
perkembangan software sekuensial linier yang menekankan siklus
perkembangan yang sangat pendek. Model ini merupakan sebuah adaptasi
“kecepatan tinggi” dari model sekuensial linier di mana perkembangan
cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen.
Selain itu RAD merupakan Versi “High Speed” dari model Waterfall.
RAD merupakan model proses pembangunan PL yang incremental. RAD
menekankan pada siklus pembangunan yang pendek/singkat. RAD mengadopsi
model waterfall dan pembangunan dalam waktu singkat dicapai dengan
menerapkan component based construction. Waktu yang singkat adalah
batasan yang penting untuk model ini Jika kebutuhan dipahami dengan
baik, lengkap dan jelas maka proses RAD memungkinkan tim pengembangan
menciptakan “sistem fungsional yang utuh” dalam periode waktu yang
sangat pendek (kira-kira 60 sampai 90 hari).
Incremental Model
Model incremental adalah 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.
Tahapan Incremental Model
Pada awal tahapan dilakukan penentuan kebutuhan dan spesifikasi,Kemudian dilakukan perancangan arsitektur software yang terbuka, agar dapat diterapkan pembangunan per-bagian pada tahapan selanjutnya.
- • Requirement adalah proses tahapan awal yang dilakukan pada incremental model adalah penentuan kebutuhan atau analisis kebutuhan.
- • Specification adalah proses spesifikasi dimana menggunakan analisis kebutuhan sebagai acuannya.
- • Architecture Design adalah tahap selanjutnya, perancangan software yang terbuka agar dapat diterapkan sistem pembangunan per-bagian pada tahapan selanjutnya.
- • Code setelah melakukan proses desain selanjutnya ada pengkodean.
- • Test merupakan tahap pengujian dalam model ini.
- Kendala yang sering terjadi adalah sulitnya untuk memetakan kebutuhanu s e r (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
- Kelebihan Penggunaan Incremental Model
· Merupakan model dengan manajemen yang sederhan.
. 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.
Spiral Model
Aktivitas-aktivitas Dalam Model Spiral
Spiral model dibagi menjadi beberapa framework aktivitas, yang disebut dengan task regions. Kebanyakan aktivitas-aktivitas tersebut dibagi antara tiga sampai enam aktivitas. Berikut adalah aktivitas-aktivitas yang dilakukan dalam spiral model :
- Komunikasi Pelanggan (Customer Communication) yaitu tugas-tugas yang dibutuhkan untuk membangun komunikasi yang efektif diantara developer dan pelanggan.
- Perencanaan (Planning) yaitu tugas-tugas yang dibutuhkan untuk mendefinisikan sumber daya, ketepatan waktu, dan proyek informasi lain yang berhubungan.
- Analisa Resiko (Risk Analysis) yaitu tugas-tugas yang dibutuhkan untuk menaksir resiko-resiko yang mungkin akn dihadapi, baik dari segi manajemen maupun teknis.
- Perekayasaan (Engineering) yaitu tugas-tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari aplikasi tersebut.
- Konstruksi dan Peluncuran (Construction and Release) yaitu tugas-tugas yang dibutuhkan untuk mengkonstruksi, menguji, memasang (instalasi) dan memberikan pelayanan kepada pemakai, contohnya pelatihan dan dokumentasi.
- Evaluasi Pelanggan (Customer Evaluation) yaitu tugas-tugas yang dibutuhkan untuk memperoleh umpan balik dari pelanggan dengan didasarkan pada evaluasi representasi software, yang dibuat selama masa perekayasaan, dan diimplementasikan selama masa pemasangan.
Keunggulan model
- Model ini sangat baik digunakan untuk sistem dan software yang besar.
- Menekankan pada pencarian okumative, dan pemaksaan penggunaan kembali software yang telah ada.
- Adanya analisa resiko pada mekanisme untuk memperkecil resiko.
- Adanya prototyping sehingga memudahkan komunikasi dengan konsumen
Kelemahan model
- Memerlukan waktu yang cukup lama untuk mengembangkan software.
- Sistem pengendalian yang kurang baik
- Biasanya pihak developer dan perusahaan berada pada satu pihak yang sama sehingga pada tahap analisa resiko, mereka bisa sewaktu-waktu dapat membatalkan proses rekayasa Jika pihak developer adalah pihak di luar perusahaan, maka akan timbul masalah komunikasi
Sekian penjelasan dari saya :) berikut adalah REFERENSI-nya :
1. Waterfall Model : Laporan diskusi ahli
2. Prototyping Model : Laporan diskusi ahli
3. RAD model : http://top-bing.blogspot.com/2010/04/penjelasan-rapid-application.html
4. Incremental Model : http://niamfanie.wordpress.com/2011/11/11/proses-model-incrumental/
5. Spiral Model : http://gamzsta.wordpress.com/tag/model-spiral/
*Dengan editan dan ubahan.