Prototype
Prototype merupakan salah
satu metode pengembangan perangat lunak yang banyak digunakan.
Keunggulan
dan Kelemahan dari Prototyping:
- Keunggulan prototyping adalah:
- Adanya komunikasi yang baik
antara pengembang dan pelanggan
- Pengembang dapat bekerja lebih
baik dalam menentukan kebutuhan pelanggan
- Pelanggan berperan aktif dalam
pengembangan system
- Lebih menghemat waktu dalam
pengembangan system
- Penerapan menjadi lebih mudah
karena pemakai mengetahui apa yang diharapkannya.
- Kelemahan prototyping adalah :
- Pelanggan kadang tidak melihat
atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas
perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan
pemeliharaan untuk jangja waktu lama.
- Pengembang biasanya ingin
cepat menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa
pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai
tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan
cetak biru sistem .
- ubungan pelanggan dengan komputer
yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik.
Transformasi
Formal
Transformasi formal
digunakan untuk mengembangkan bagian ‐bagian
sistem yang memiliki persyaratan keselamatan
yang tinggi dan pendekatan reuse digunakan
untuk pengimplementasian bagian ‐bagian lain dari
sistem data manajemen.
Masalah pengembangan sistem forma
(kekurangan) :
- Dibutuhkan
ketrampilan dan pelatihan
khusus untuk mengaplikasikan teknik ini
- Kesulitan dalam menspesifikasikan beberapa aspek
ke dalam
sistem misalnya dalam penentuan user interface.
RAD (Rapid
Application Development)
Rapid Application Development
(RAD) adalah sebuah model proses perkembangan software sekuensial linier yang
menekankan siklus perkembangan yang sangat pendek.
Keuntungan RAD:
Beberapa
keuntungan dalam menggunakan metode RAD adalah sebagai berikut:
·
Membeli
sistem yang baru memungkinkan untuk lebih menghemat biaya ketimbang
mengembangkan sendiri.
·
Proses
pengiriman menjadi lebih mudah, hal ini dikarenakan proses pembuatan lebih
banyak menggunakan potongan-potongan script.
·
Mudah untuk
diamati karena menggunakan model prototype, sehingga user lebih mengerti akan
sistem yang dikembangkan.
·
Lebih
fleksibel karena pengembang dapat melakukan proses desain ulang pada saat yang
bersamaan.
·
Bisa
mengurangi penulisan kode yang kompleks karena menggunakan wizard.
·
Keterlibatan
user semakin meningkat karena merupakan bagian dari tim secara keseluruhan.
·
Mampu
meminimalkan kesalahan-kesalahan dengan menggunakan alat-alat bantuan (CASE
tools).
·
Mempercepat
waktu pengembangan sistem secara keseluruhan karena cenderung mengabaikan
kualitas.
·
Tampilan
yang lebih standar dan nyaman dengan bantuan software-software pendukung.
Kerugian RAD:
Beberapa kerugian
dalam menggunakan metode RAD adalah sebagai berikut :
·
Dengan
melakukan pembelian belum tentu bisa menghemat biaya dibanding-
kan dengan mengembangkan sendiri.
·
Membutuhkan
biaya tersendiri untuk membeli peralatan-peralatan penunjang seperti misalnya
software dan hardware.
·
Kesulitan
melakukan pengukuran mengenai kemajuan proses.
·
Kurang
efisien karena apabila melakukan pengkodean dengan menggunakan tangan bisa
lebih efisien.
·
Ketelitian
menjadi berkurang karena tidak menggunakan metode yang formal
dalam melakukan pengkodean.
·
Lebih banyak
terjadi kesalahan apabila hanya mengutamakan kecepatan diban-
dingkan dengan biaya dan kualitas.
·
Fasilitas-fasilitas
banyak yang dikurangi karena terbatasnya waktu yang tersedia.
·
Sistem sulit
diaplikasikan di tempat yang lain.
·
Fasilitas
yang tidak perlu terkadang harus disertakan, karena menggunakan komponen yang
sudah jadi, sehingga hal ini membuat biaya semakin meningkat.
Pengembangan
Incremental
Model incremental merupakan perbaikan dari model waterfall dan sebagai standar pendekatan top-down.
Kelebihan
Incremental Model
- Memberikan
kualitas produk operasional pada setiap tahap tetapi hanya satu yang
memenuhi persyaratan dari klien.
- Pihak konsumen
dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun.
Contohnya pemasukan data karyawan.
- Mengurangi
trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan
produknya bagian per bagian.
- Memaksimalkan
pengembalian modal investasi konsumen.
Kekurangan
Incremental Model
- Tiap bagian
tidak dapat diintegrasikan.
- setiap tambahan
yang dibangun harus dimasukkan kedalam struktur yang ada tanpa menurunkan kualitas
dari yang telah dibangun system tersebut sampai saat ini.
- Penambahan
staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut.
Spiral
Spiral Model merupakan penggabungan ide pengembangan
berulang (prototyping) dengan, aspek sistematis terkendali model air terjun
(waterfall).
a. Kelebihan model Spiral :
- Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
- Lebih
cocok untuk pengembangan sistem dan perangkat lunak skala besar.
- Pengembang
dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap
tingkat evolusi karena perangkat lunak terus bekerja selama proses .
- Menggunakan
prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di
dalam evolusi produk.
- Tetap
mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya
ke dalam kerangka kerja iteratif .
- Membutuhkan
pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko
sebelum menjadi permaslahan yang serius.
b. Kelemahan model Spiral :
- Sulit
untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa
dikontrol.
- Memerlukan
penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius
jika resiko mayor tidak ditemukan dan diatur.
- Butuh
waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolut.
Four - Generation Techniques (4GT)
Istilah generasi ke empat,
mengarah ke perangkat lunak yang umum yaitu tiap pengembang perangkat lunak
menentukan beberapa karakteristik perangkat lunak pada level tinggi.
Saat ini pengembangan perangkat lunak yang mendukung
4GT, berisi tool-tool berikut :
- Bahasa
non prosedural untuk query basis data
- Report
generation
- Data
manipulation
- Interaksi
layar
- Kemampuan
grafik level tinggi
- Kemampuan
spreadsheet
Tiap tool
ini ada tapi hanya untuk sauatu aplikasi khusus.
Salah satu keuntungan
penggunaan model 4GT adalah pengurangan waktu dan peningkatan produktivitas
secara besar, sementara
kekurangannya terletak pada kesulitan
penggunaan perangkat bantu
dibandingkan dengan bahasa pemrograman, dan juga kode sumber yang
dihasilkannya tidak efisien.