3. Model Linear Sequential / Model
Waterfall
Model ini pertama kali dikemukakan oleh Royce. Model ini disebut juga model klasik atau
waterfall. Model ini menyarankan pendekatan pengembangan secara sekuen dan
sistematik untuk pengembangan perangkat lunak dimulai di level sistem, berlanjt ke
analisis, lalu perancangan, pemrograman, pengujian, dan pemeliharaan.
4. Model Linear Sequential / Model
Waterfall
Prinsip dari metode ini adalah hasil dari setiap fase merupakan satu atau lebih dokumen
yang disetujui. Fase berikutnya tidak boleh dimulai sebelum sebelumnya selesai.
5. Model Linear Sequential / Model
Waterfall
Tahap-tahap utama dalam model pengembangan ini antara lain :
1. Analisis dan definisi kebutuhan (Layanan, batasan, dan tujuan sistem ditentukan melalui konsultasi dengan user)
2. Perancangan sistem dan perangkat lunak (Proses perancangan sistem membagi persyaratan dalam sistem
perangkat keras atau perangkat lunak. Hal itu bertujuan untuk menentukan arsitektur sistem secara keseluruhan.
Perancangan melibatkan identifikasi dan deskripsi abstraksi sistem perangkat lunak yang mendasar)
3. Implementasi dan pengujian unit (Perancangan perangkat lunak direalisasikan dengan program atau unit
program. Pengujian ini melibatkan verifikasi bahwa setiap unit telah memenuhi spesifikasinya)
4. Integrasi dan pengujian sistem (Unit program atau program individual diintegrasikan dan diuji sebagai sistem
yang lengkap untuk menjamin bahwa kebutuhan sistem telah dipenuhi)
5. Operasi dan pemeliharaan (Mengoperasikan program di lingkungannya dan melakukan pemeliharaan.
Pemeliharaan mencakup koreksi dari berbagai error yang tidak ditemukan pada tahap-tahap sebelumnya,
melakukan perbaikan atas implementasi unit sistem dan pengembangan layanan sistem, dan persyaratan-
persyaratan baru ditambahkan)
6. Model Linear Sequential / Model
Waterfall
Kelemahan dari model ini antara lain :
■ bersifat kaku sehingga sulit untuk diubah
pada sistem perangkat lunaknya
■ terjadinya pembagian proyek
menjadi tahap!tahap yang
tidak fleksibel, karenakomitmen harus
dilakukan pada tahap awal proses
■ memakan waktu yang lebih lama
■ pembuatan dilakukan oleh sekelompok
team sehingga apabila berhenti
di tengah jalanakan membingungkan
anggota yang lain
Kelebihan dari model ini antara lain :
■ Mudah diaplikasikan
■ Pengerjaan proyek akan mudah dikontrol
dan terjadwal dengan baik
■ Cocok untuk software berskala besar dan
yang bersifat umum
7. Model Linear Sequential / Model
Waterfall
Model waterfal ini sangat sesuai digunakan dalam pengembangan sistem perangkat lunak
dan hardware yang luas dan apabila kebutuhan pengguna telah dimengerti dengan baik.
Selain itu, juga apabila waktu yang tersedia juga masih cukup banyak.
9. RAD Model (Rapid Application
Development)
RAD adalah proses pengembangan perangkat lunak yang semakin meningkatkan
(incremental) yang menekankan pada siklus pengembangan yang cepat. Model RAD
merupakan adaptasi “berkecepatan tinggi” dari linear sequential model dimana
pengembangan yang cepat dapat diperoleh dengan menggunakan pembangunan berbasis
pada komponen.
RAD harus didukung oleh perangkat dan lingkungan pengembangan yang memadai,
biasanya dikembangkan berdasarkan orientasi komponen. Lingkungan pengembangan telah
memiliki library yang luar biasa besar dan lengkap seperti Java Development Kit beserta
seluluru library dari Sun dan vendor-vendor lain pendukung.
Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan dalam waktu yang
hampir bersamaan dalam batasan waktu yang sudah ditentukan.
10. RAD Model (Rapid Application
Development)
Modul-modul dalam RAD antara lain :
1. Business modelling (Menjawab pertanyaan-pertanyaan: informasi apa yang mengendalikan proses
bisnis? Informasi apa yang dihasilkan? Siapa yang menghasilkan informasi? Kemana informasi itu
diberikan? Siapa yang mengolah informasi? untuk kebutuhan dari sistem)
2. Data modelling (Aliran informasi yang sudah didefinisikan, disusun menjadi sekumpulan objek data.
Ditentukan karakteristik/atribut dan hubungan antar objek-objek tersebut untuk analisis kebutuhan
dan data)
3. Process Modelling (Objek data yang sudah didefinisikan diubah menjadi aliran informasi yang
diperlukan untuk menjalankan fungsi-fungsi bisnis)
4. Application Generation (RAD menggunakan component program yang sudah ada atau membuat
component yang bisa digunakan lagi, selama diperlukan)
5. Testing and Turnover: karena menggunakan component yang sudah ada, maka kebanyakan
component sudah melalui uji atau testing. Namun, component baru dan interface harus tetap diuji.
11. RAD Model (Rapid Application
Development)
Kelemahan :
■ Butuh orang banyak untuk menyeles
aikan sebuah proyek berskala besar
■ Tidak cocok digunakan untuk sistem
yang mempunyai resiko teknik yang
tinggi
■ Pengembang dan customer harus pu
nya komitmen yang kuat untuk
menyelesaikan sebuah software
Kelebihan :
■ Cocok untuk proyek yang
memerlukan waktu yang singkat
■ Lebih efektif dalam menghasilkan
sistem yang memenuhi kebutuhan
langsung dari pelanggan
12. RAD Model (Rapid Application
Development)
Model RAD sangat tepat diterapkan untuk sistem yang telah jelas dan lengkap
kebutuhannya, di mana terdapat komponen-komponen yang dapat dipakai kembali
dalam proyek yang berskala kecil dengan waktu pengembangan perangkat lunak yang
singkat.
14. Prototyping Model (Evolusioner)
Pengembangan evolusioner berdasarkan pada ide untuk mengembangkan implementasi
awal, memperlihatkannya kepada user untuk dikomentari, dan memperbaikinya secara
bertahap sampai sistem yang memenuhi persyaratan diperoleh.
Pengembangan prototyping terbagi dua:
■ Exploratory Programming (menyelidiki kebutuhan mereka dan mengirimkan sistem
akhir)
■ Throw-away prototyping (memahami kebutuhan pelanggan dan mendefinisikan
kebutuhan yang lebih baik untuk sistem)
15. Prototyping Model (Evolusioner)
Tahapan Pengembangan Prototype:
■ Pengumpulan kebutuhan
■ Quick design
■ Pembangunan Prototipe
■ Evaluasi Pelanggan
■ Pembuatan dan Implementasi
16. Prototyping Model (Evolusioner)
Masalah yang dapat terjadi pada pengembangan prototype :
■ Proses tidak bisa dilihat. Manajer membutuhkan hasil reguler untuk mengukur
kemajuan. Jika sistem dikembangkan dengan cepat, tidaklah efektif dari segi biaya
jika dihasilkan dokumen yang merefleksikan setiap versi sistem.
■ Sistem seringkali memiliki struktur yang buruk. Perubahan yang terus-menerus
cenderung merusak struktur perangkat lunak. Penyesuaian perubahan perangkat
lunak menjadi semakin sulit dan mahal.
■ Diperlukan alat bantu dan teknik khusus. Keperluan ini memungkinkan
pengembangan yang cepat tetapi mungkin tidak kompatibel dengan alat bantu atau
teknik lain dan relatif hanya sedikit orang yang memiliki keahlian untuk memakainya.
17. Prototyping Model (Evolusioner)
Kelemahan :
■ Bentuk prototype banyak yang tidak
sesuai
■ Apabila data yang dikumpulkan hanya
sebagian maka banyak
kebutuhan yang tidak ditampilkan
■ Proses analisis dan perancangan
sangat singkat
■ Versi perbaikan dibuat tanpa
memperhatikan kualitas dan
pemeliharaan jangka panjang
Kelebihan :
■ Komunikasi antara pengembang dan
pelanggan menjadi lebih baik
■ Menghemat waktu pengembangan
■ Pengembang dapat
menentukan kebutuhan pelanggan
sehingga dia dapat bekerjadengan
baik
■ User dapat berpartisipasi aktif dalam
pengembangan sistem
18. Prototyping Model (Evolusioner)
Model Prototyping ini sangat sesuai diterapkan untuk kondisi yang beresiko tinggi di
mana masalah-masalah tidak terstruktur dengan baik, terdapat fluktuasi kebutuhan
pemakai yang berubah dari waktu ke waktu atau yang tidak terduga, bila interaksi dengan
pemakai menjadi syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh
penyelesaian yang segera. Model ini juga dapat berjalan dengan maksimal pada situasi di
mana sistem yang diharapkan adalah yang inovatif dan mutakhir sementara tahap
penggunaan sistemnya relatif singkat.
20. Incremental Process Model
Model ini merupakan hasil kombinasi elemen-elemen dari model waterfall yang
diaplikasikan secara berulang. Elemen-elemen tersebut dikerjakan hingga menghasilkan
produk dengan spesifikasi tertentu kemudian proses dimulai dari awal kembali hingga
muncul hasil yang spesifikasinya lebih lengkap dari sebelumnya dan tentunya memenuhi
kebutuhan pemakai.
21. Incremental Process Model
■ Pengembangan sistem berdasarkan model sistem yang dipecah sehingga model
pengembangannya secara increment/bertahap.
■ Kebutuhan pengguna diprioritas dan prioritas tertinggi dimasukkan dalam awal
increment
■ Mengkombinasi elemen-elemen dari waterfall dengan sifat iterasi/perulangan
■ Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk
yang sudah bisa berfungsi dengan spesifikasi dasar.
■ Mampu mengakomodasi perubahan secara fleksibel
22. Incremental Process Model
Kelemahan :
■ Hanya cocok untuk proyek dengan
skala kecil
■ Hanya akan berhasil jika tidak ada
staffing untuk penerapan secara
menyeluruh
■ Penambahan staf dilakukan jika hasil
incremental akan dikembangkan
lebih lanjut
Kelebihan :
■ Dikerjakan
secara urut dan sistematis
■ Tidak membutuhkan anggota/tim
yang banyak untuk menjalankannya
■ waktu yang dibutuhkan relatif
singkat
23. Incremental Process Model
Model ini cocok dipakai untuk proyek kecil dengan anggota tim yang sedikit dan
ketersediaan waktu yang terbatas.
25. Spiral Model
Model spiral adalah model proses perangkat lunak evolusioner yang merupakan pasangan
sifat iteratif dari prototipe dengan aspek terkontrol dan sistematis dari model waterfall. Ini
memberikan potensi untuk pengembangan yang semakin cepat menjadi versi lebih
lengkap dari perangkat lunak.
26. Spiral Model
Setiap Loop dibagi menjadi beberapa sektor :
■ Tahap Liason (membangun komunikasi dengan calon pengguna)
■ Tahap Planning (perencanaan)
■ TahapAnalisis Resiko
■ Tahap Rekayasa (engineering)
■ Tahap Konstruksi dan Pelepasan (release)
■ Tahap Evaluasi
27. Spiral Model
Kelemahan :
■ Membutuhkan waktu yang lama
■ Memerlukan tenaga ahli untuk
memperkirakan resiko
■ Metode ini belum terjamin efisien
Kelebihan :
■ Sangat mempertimbangkan resiko
kemungkinan munculnya kesalahan
■ Lebih cocok untuk pengembangan
sistem dan perangkat lunak skala besar
■ Pengembang dan pemakai dapat
lebih mudah memahami dan bereaksi
terhadap resikosetiap tingkat evolusi
karena perangkat lunak terus bekerja
selama proses
■ Menggunakan prototipe
sebagai mekanisme pengurangan resiko
dan pada setiap keadaan di dalam evolusi
produk.
28. Spiral Model
Model spiral sangat cocok diterapkan untuk pengembangan sistem dan perangkat lunak
skala besar di mana pengembang dan pemakai dapat lebih mudah memahami kondisi
pada setiap tahapan dan bereaksi terhadap kemungkinan terjadinya kesalahan. Selain itu,
diharapkan juga waktu dan dana yang tersedia cukup memadai.
30. Component Assembly Model
(CAM/Model Perakitan Komponen)
Merupakan gabungan dari berbagai sifat dan karakter dari model spiral Boehm dan sangat
erat keterikatannya dengan model RAD (Rapid Application Development) model karena
model CAM ini menggunakan peralatan-peralatan dan GUI (Graphic User Interface) untuk
membangun software.
31. Component Assembly Model
(CAM/Model Perakitan Komponen)
Tahapan-tahapan Model ini adalah :
■ Tahap Identifikasi calon-calon komponen (kelas objek)
■ Tahap melihat komponen-komponen dalam pustaka
■ Tahap mengekstrak komponen jika ada
■ Tahap membangun komponen jika tidak ada
■ Tahap menyimpan komponen baru pada pustaka
■ Tahap mengkonstruksi iterasi ke-n dari sistem
32. Component Assembly Model
(CAM/Model Perakitan Komponen)
Kelemahan :
■ Seringnya program atau komponen-
komponen terdahulu tidak
kompatibel
Kelebihan :
■ Menggunakan program atau
komponen yang sudah ada
■ Waktu dan tenaga yang digunakan
lebih efisien
■ Menyediakan kemampuan untuk
memvisualisasikan hasil rakitan
dengan kesanggupan untuk
mengukur, menganalisa, merancang
dan merancang ulang program
33. Component Assembly Model
(CAM/Model Perakitan Komponen)
Model ini sangat sesuai digunakan oleh perusahaan besar yang sudah berpengalaman
mengembangkan software. Mereka dapat memanfaatkan software-software yang telah
umum dikembangkan sebelumnya menjadi bentuk baru dari software yang ingin
dikomersilkan.
35. The Concurrent Development Model
Model ini disebut juga dengan concurrent engineering yang dapat digambarkan secara
skematik sebagai serial dari kegiatan teknis utama, tugas-tugas, dan hubungan antar
bagian-bagian yang saling terkait di mana aktifitas analisa seperti desain/rancangan atau
komunikasi pelanggan dapat diskemakan dengan cara yang sama.
36. The Concurrent Development Model
Terdapat dua dimensi aktivitas yang digambarkan oleh model ini sebagai berikut.
■ Dimensi sistem : terdapat tiga proses di dalamnya yakni perancangan, perakitan
(assembly) dan penggunaan (use).
■ Dimensi komponen : terdapat dua kegiatan utama yaitu perancangan dan realisasi
37. The Concurrent Development Model
Concurrency (pertemuan) dapat diperoleh dengan dua cara: 1) sistem dan komponen
kegiatan (aktifitas) terjadi secara simultan dan dapat diperagakan dengan memanfaatkan
pendekatan yang berdasar pada status sebelumnya; 2) aplikasi client/server yang bersifat
unik/khas di mana dapat diterapkan pada banyak komponen yang tiap-tiap komponen
bisa dirancang dan direalisasikan secara serentak.
38. The Concurrent Development Model
Kelemahan :
■ Implementasi awal desain yang
sedikit sulit
■ Waktu yang dibutuhkan lebih lama
■ Karena kegiatannya berbentuk
paralel akan sedikit sulit bila
ditemukansuatu permasalahan di
tengah proses`
Kelebihan :
■ Produk yang dihasilkan oleh model
concurrent development ini
lebihkokoh dan teratur
■ Fitur fitur baru dapat ditambahkan
nanti di akhir proyek
■ Bersifat flexibel
39. The Concurrent Development Model
Concurrent model cocok digunakan untuk pengembangan aplikasi client/server yang
terdiri atas satu set komponen yang fungsional.
41. Fourth GenerationTechniques/Model
Teknik Generasi ke-4/4GT
Fourth Generation Techniques (4GT) mencakup seperangkat peralatan perangkat lunak
yang berfungsi sebagai perangkat bantu yang memudahkan seorang pengembang
software mengaplikasi beberapa karakteristik software pada tingkat yang tinggi, yang
akan menghasilkan source code dan object code secara otomatis sesuai dengan
spesifikasi (persyaratan khusus) yang dibuat oleh sang pengembang perangkat lunak.
4GT tools dipakai sebagai bahasa non prosedur untuk DataBase Query, Pembentukan
laporan (Report Generation), Manipulasi data, Definisi dan interaksi layar (screen),
Pembentukan object dan source ( Object and source generation ), Kemampuan grafik
yang tinggi, dan Kemampuan spreadsheet.
42. Fourth GenerationTechniques/Model
Teknik Generasi ke-4/4GT
Tahapan-tahapan model 4GT dapat diringkas sebagai berikut :
■ Tahap Pengumpulan Kebutuhan
■ Tahap Merancang Strategi
■ Tahap Implementasi Menggunakan Bahasa Keempat
■ Tahap Produksi
43. Fourth GenerationTechniques/Model
Teknik Generasi ke-4/4GT
Kelemahan :
■ kemungkinan akan sulit
memanfaatkan alat
bantu/peralatan/tools 4GT
dibandingkan dengan menggunakan
bahasa pemrograman yang
konvensional
■ pemeliharaan sistem software besar
yang dikembangkan oleh 4GT juga
masih sedang dalam proses
pengkajian
Kelebihan :
■ Pengurangan waktu dan
peningkatan produktivitas yang
besar.
44. Fourth GenerationTechniques/Model
Teknik Generasi ke-4/4GT
Model ini diaplikasikan untuk mengembangkan perangkat lunak yang memakai bentuk
bahasa khusus atau notasi grafik yang dieksekusi/diselesaikan dengan syarat atau
ketentuan yang dipahami oleh pemakai/pengguna/kustomer.