1. Model Sekuensial Linier atau Waterfall
Development Model
Model Sekuensial Linier atau sering
disebut Model Pengembangan Air Terjun, merupakan paradigma model pengembangan
perangkat lunak paling tua, dan paling banyak dipakai. Model ini mengusulkan
sebuah pendekatan perkembangan perangkat lunak yang sistematik dan sekunsial
yang dimulai pada tingkat dan kemajuan sistem pada seluruh tahapan analisis,
desain , kode, pengujian, dan pemeliharaan.
Contoh dari penerapan model pengembangan ini
adalah pembuatan program pendaftaran online ke suatu Instansi Pendidikan. Program
ini akan sangat membantu dalam proses pendaftaran, karena dapat meng-efektifkan
waktu serta pendaftar tidak perlu repot-repot langsung mendatangi Instansi
Pendidikan.
·
Kelebihan
Model Sekuensial Linear / Waterfall Development Model :
o
Tahapan
proses pengembangannya tetap (pasti), mudah diaplikasikan, dan prosesnya
teratur.
o
Cocok
digunakan untuk produk software/program yang sudah jelas kebutuhannya di awal,
sehingga minim kesalahannya.
o
Software
yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
o
Documen
pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan
dengan lengkap sebelum melangkah ke fase berikutnya.
·
Kekurangan
Model Sekuensial Linear / Waterfall Development Model :
o
Proyek
yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan, sehingga
perubahan yang terjadi dapat menyebabkan hasil yang sudah didapatkan tim
pengembang harus diubah kembali/iterasi sering menyebabkan masalah baru.
o
Terjadinya
pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen
harus dilakukan pada tahap awal proses.
o
Sulit
untuk mengalami perubahan kebutuhan yang diinginkan oleh customer/pelanggan.
o
Pelanggan
harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap,
dan proses pengerjaanya akan berlanjut ke setiap tahapan bila tahap sebelumnya
sudah benar-benar selesai.
o
Perubahan
ditengah-tengah pengerjaan produk akan membuat bingung tim pengembang yang
sedang membuat produk.
o
Adanya
waktu kosong (menganggur) bagi pengembang, karena harus menunggu anggota tim
proyek lainnya menuntaskan pekerjaannya.
2. Model Prototype
Metode Prototype merupakan suatu
paradigma baru dalam metode pengembangan perangkat lunak dimana metode ini
tidak hanya sekedar evolusi dalam dunia pengembangan perangkat lunak, tetapi
juga merevolusi metode pengembangan perangkat lunak yang lama yaitu sistem
sekuensial yang biasa dikenal dengan nama SDLC atau waterfall development
model.
Dalam Model Prototype, prototype dari perangkat
lunak yang dihasilkan kemudian dipresentasikan kepada pelanggan, dan pelanggan
tersebut diberikan kesempatan untuk memberikan masukan sehingga perangkat lunak
yang dihasilkan nantinya betul-betul sesuai dengan keinginan dan kebutuhan pelanggan.
Contoh Penerapan Metode Prototype.
Sebuah rumah sakit ingin membuat
aplikasi sistem database untuk pendataan pasiennya. Seorang atau sekelompok
programmer akan melakukan identifikasi mengenai apa saja yang dibutuhkan oleh
pelanggan, dan bagaimana model kerja program tersebut. Kemudian dilakukan
rancangan program yang diujikan kepada pelanggan. Hasil/penilaian dari
pelanggan dievaluasi, dan analisis kebutuhan pemakai kembali di lakukan.
Kelebihan Model Prototype :
·
Pelanggan
berpartisipasi aktif dalam pengembangan sistem, sehingga hasil produk
pengembangan akan semakin mudah disesuaikan dengan keinginan dan kebutuhan
pelanggan.
·
Penentuan
kebutuhan lebih mudah diwujudkan.
·
Mempersingkat
waktu pengembangan produk perangkat lunak.
·
Adanya
komunikasi yang baik antara pengembang dan pelanggan.
·
Pengembang
dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
·
Lebih
menghemat waktu dalam pengembangan sistem.
·
Penerapan
menjadi lebih mudah karena pelanggan mengetahui apa yang diharapkannya.
Kekurangan Model Prototype :
·
Proses
analisis dan perancangan terlalu singkat.
·
Biasanya
kurang fleksibel dalam mengahadapi perubahan.
·
Walaupun
pemakai melihat berbagai perbaikan dari setiap versi prototype, tetapi pemakai
mungkin tidak menyadari bahwa versi tersebut dibuat tanpa memperhatikan
kualitas dan pemeliharaan jangka panjang.
·
Pengembang
kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi
yang tidak relevan dan algoritma yang tidak efisien.
3. Model Rapid Application Development
(RAD)
Rapid Aplication Development (RAD)
adalah sebuah model proses perkembanganperangkat lunak sekuensial linier yang
menekankan siklus perkembangan yang sangat pendek (kira-kira 60 sampai 90
hari). Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model
sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan
pendekatan konstruksi berbasis komponen.
Kelebihan Model RAD :
·
Lebih
efektif dari Pengembangan Model waterfall/sequential linear dalam menghasilkan
sistem yang memenuhi kebutuhan langsung dari pelanggan.
·
Cocok
untuk proyek yang memerlukan waktu yang singkat.
·
Model
RAD mengikuti tahap pengembangan sistem seperti pada umumnya, tetapi mempunyai
kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak
perlu membuatnya dari awal lagi sehingga waktu pengembangan menjadi lebih
singkat dan efisien.
Kekurangan Model RAD :
·
Model
RAD menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas
rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka
waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD
akan gagal.
·
Tidak
semua aplikasi sesuai untuk RAD, bila system tidak dapat dimodulkan dengan
teratur, pembangunan komponen penting pada RAD akan menjadi sangat bermasalah.
·
RAD
tidak cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi.
·
Membutuhkan
Tenaga kerja yang banyak untuk menyelesaikan sebuah proyek dalam skala besar.
·
Jika
ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru
antara pengembang dan pelanggan.
4. Model Incremental
Model
Incremental merupakan hasil kombinasi elemen-elemen dari model waterfall yang
diaplikasikan secara berulang, atau bisa disebut gabungan dari Model linear
sekuensial (waterfall) dengan Model Prototype. 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.
Contoh Penerapan Model Incremental
Perangkat lunak pengolah kata yang
dikembangkan dengan menggunakan paradigma pertambahan akan menyampaikan
manajemen file, editing, serta fungsi penghasilan dokumen pada pertambahan
pertama, dan selanjutnya. Pertambahan pertama dapat disebut sebagai produk inti
(core product). Dan pada pertambahan selanjutnya, produk inti akan
dikembangkan terus hingga menghasilkan produk jadi yang siap untuk
digunakan/dipasarkan.
Kelebihan Model Incremental :
·
Personil
bekerja optimal.
·
mampu
mengakomodasi perubahan secara fleksibel, dengan waktu yang relatif singkat dan
tidak dibutuhkan anggota/tim kerja yang banyak untuk menjalankannya.
·
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 setiap bagian demi bagian.
·
Memaksimalkan
pengembalian modal investasi konsumen.
Kekurangan Model Incremental :
·
Tidak
cocok untuk proyek berukuran besar (lebih dari 200.000 baris coding).
·
Sulit
untuk memetakan kebutuhan pemakai ke dalam rencana spesifikasi tiap-tiap hasil
dari increament.
Referensi :
https://murtri.wordpress.com/2014/08/25/model-model-pengembangan-perangkat-lunak-beserta-contoh-penerapannya/