Dimana sebuah proses akan kembali ke state sebulumnya agar tidak ada perubahan setelah
proses menuju state di bawahnya sebab sangat sulit.
Setiap model pasti ada kekurangan dan kelebihan, dan berikut merupakan kekurangan dan
kelebihan dari model Waterfall :
Kekurangan Model Waterfall:
Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen
harus dilakukan pada tahap awal proses.
Hal ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna (user).
Model air terjun harus digunakan hanya ketika persyaratan dipahami dengan baik.
Bisa digunakan jika suatu persyaratan untuk membuat suatu software sudah dipahami
dengan baik dan sudah lengkap semua persyaratan yang ada.
Model RAD
Rapid Aplication Model (RAD) adalah sebuah proses perkembangan perangkat lunak sekuensial
linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan
sebuah adaptasi kecepatan tinggi dari model sekuensial linier dimana perkembangan cepat
dicapai dengan menggunakan pendekatan konstruksi berbasis komponen. Jika kebutuhan
dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan sistem
fungsional yang utuh dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari).
Dimungkinkan dalam proses pembuatan membutuhkan waktu yang sangat singkat (60-90
hari).
Menghemat biaya, karena penekannya adalah penggunaan komponen-komponen yang
sudah ada.
RAD menggunakan kembali komponen-komponen yang sudah ada, maka beberapa
komponen program sudah diuji sehingga kita dapat melakukan penghematan waktu
dalam uji coba
ANANG WAHYU PRADANA | XI RPL
Seperti semua proses model yang lain, pendekatan RAD memiliki kekurangankekurangan sebagi berikut :
Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang
memadai untuk menciptakan jumlah tim RAD yang baik.
RAD menuntut pengembangan dan pelanggan yang memiliki komitmen di dalam
aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka
waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan
gagal. RAD menekankan perkembangan komponen program yang bisa dipakai
kembali. Reusable menjadi batu pertama teknologi objek dan ditemui di dalam proses
rakitan komponen
Tidak semua aplikasi sesuai untuk RAD. Bila sistem tidak dapat dimodulkan dengan
teratur, pembangunan komponen penting pada RAD akan menjadi sangat problematis.
RAD menjadi tidak sesuai jika risiko teknisnya tingggi. Hal ini terjadi bila sebuah
aplikasi baru memforsir teknologi baru atau bila perangkat lunak baru membutuhkan
tingkat interoperabilitas yang tinggi dengan program komputer yang ada.
Model Prototype
Metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem
informasi yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang
lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau
digabungkan dengan sistem informasi yang lain bila perlu.
1. a. Jenis-Jenis Prototyping
Feasibility prototyping digunakan untuk menguji kelayakan dari teknologi yang akan
digunakan untuk system informasi yang akan disusun.
Requirement prototyping digunakan untuk mengetahui kebutuhan aktivitas bisnis user.
Desain Prototyping digunakan untuk mendorong perancangan system informasi yang
akan digunakan.
Implementation prototyping merupakan lanjytan dari rancangan protipe, prototype ini
langsung disusun sebagai suatu system informasi yang akan digunakan.
Model Spiral
Model ini cukup baru ditemukan,yaitu tahun 1988 oleh Barry Boehm. Spiral adalah salah satu
bentuk evolusi yang menggunakan metode iterasi natural yang dimiliki oleh model prototyping
dan digabungkan dengan aspek sistematis yang dikembangkan model waterfall.
Spiral model dibagi menjadi beberapa framework aktivitas, yang disebut dengan task regions.
Kebanyakan aktivitas2 tersebut dibagi antara 3 sampai 6 aktivitas. Berikut adalah aktivitasaktivitas yang dilakukan dalam spiral model :
Model incremental
Model Incremental dalam rekayasa perangkat lunak, menerapkan rekayasa perangkat lunak
perbagian, hingga menghasilkan perangkat lunak yang lengkap. Proses membangun berhenti
jika produk telah mencapai seluruh fungsi yang diharapkan.
Adapun beberapa tahapan yang ada pada model incremental dimana tahapan-tahapan tersebut
dilakukan secara berurutan. Setiap bagian yang sudah selesai dilakukan testing, dikirim ke
pemakai untuk langsung dapat digunakan.
Tahapan Incremental Model adalah :
Requirement
Specification
Architecture Design
Pada incremental model, tiga tahapan awal harus diselesaikan terlebih dahulu sebelum sebelum
tahap membangun tiap modal.
Incremental Model merupakan gabungan antara model linear sekuensial dan prototyping. Setiap
linear sekuen menghasilkan produk yang deliveriables. Increment pertama merupakan produk
inti yang mengandung persyaratan/kebutuhan dasar. Penambahan dilakukan pada incrementincremet berikutnya.
Keunggulan dari Incremental Model :
1. Personil bekerja optimal
2. Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
3. Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan
menggunakan produknya bagian per bagian
4. Memaksimalkan pengembalian modal investasi konsumen
Kekurangan dari Incremental Model :
1. Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
2. Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment
3. Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung
2. Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa
langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru,
maka class baru dibuat dengan metode berorientasi objek.
3. Bangun software dengan class-class yang sudah ditentukan atau class baru yang dibuat,
integrasikan.
Penggunaan kembali komponen software yang sudah ada menguntungkan dari segi:
Siklus waktu pengembangan software, karena mampu mengurangi
waktu 70%
Biaya produksi berkurang sampai 84% arena pembangunan komponen
berkurang
Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat
menggunakan komponen COTS (Commercial off-the-shelf) yang bisa didapatkan dengan
membeli atau komponen yang sudah dibangun sebelumnya secara internal. Component-Based
Software Engineering (CBSE) adalah proses yang menekankan perancangan dan pembangunan
software dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua
bagian yang terjadi secara paralel yaitu software engineering (component-based development)
dan domain engineering.