1. Waterfall
Kelebihan
:
·
Mudah
diaplikasikan.
·
Memberikan
template tentang metode analisis, desain, pengkodean, pengujian, dan
pemeliharaan.
·
Cocok
digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga
minim kesalahannya.
·
Bisa
digunakan jika suatu persyaratan untuk membuat suatu software sudah dipahami
dengan baik dan sudah lengkap semua persyaratan yang ada.
Kekurangan:
·
Diperlukan
majemen yang baik, karena proses pengembangan tidak dapat dilakukan secara
berulang sebelum terjadinya suatu produk.
·
Kesalahan
kecil akan menjadi masalah besar jika tidak diketahui sejak awal pengembangan
yang berakibat pada tahapan selanjutnya.
·
Pelanggan
sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat mengakomodasi
ketidak pastian pada saat awal pengembangan.
·
Pelanggan
harus sabar, karena pembuatan perangkat lunak akan dimulai ketika tahap desain
sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan waktu yang
lama.
2. RAD (Rapid Application Development)
Kelebihan
:
·
Tahap-tahap
RAD membuatnya mampu untuk menggunakan kembali komponen yang ada (reusable
object), karena setiap komponen software dikerjakan secara terpisah dengan
tim-tim tersendiri sehingga dapat digunakan juga untuk aplikasi lain yang pada
akhirnya akan menghemat waktu.
·
Penggunaan
tim yang terpisah untuk mengerjakan pekerjaan yang berbeda membuat pekerjaan
lebih cepat dalam proses integrasi dan efisien terhadap waktu tanpa mengacaukan
aplikasi.
·
Cocok
untuk proyek yang memerlukan waktu yang singkat.
Kekurangan
:
·
Tidak
begitu cocok untuk proyek dengan skala besar karena dibutuhkan sumber daya
manusia yang semakin banyak seiring dengan semakin banyaknya komponen yang
dikerjakan selain itu, semakin besar proyek, semakin kompleks pula
koordinasi yang dibutuhkan.
·
Dalam
waktu yang singkat, rasanya sulit untuk pengembang dan pemakai berkomitmen
untuk melaksanakan berbagai kegiatan untuk melengkapi sistem. Apalagi bila
sistem ternyata tidak dapat dimodularisasi sementara sistem mempunyai resiko
teknik yang tinggi.
·
Jika
sistem tidak dibangun dengan benar maka RAD akan bermasalah.
·
Jika
ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara
pengembang dan customer.
3. V-Model
Kelebihan
:
·
V Model
sangat fleksibel. V Model mendukung project tailoring dan penambahan dan
pengurangan method dantool secara dinamik. Akibatnya sangat mudah untuk
melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan
sangat mudah untuk menambahkan method dan tool baru atau menghilangkan method
dan tool yang dianggap sudah obsolete.
·
V Model
dikembangkan dan di-maintain oleh publik. Userdari V Model berpartisipasi dalam
change control boardyang memproses semua change request terhadap V Model.
Kekurangan
:
·
V Model
adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam
suatu proyek.
·
V Model
terlalu fleksibel dalam arti ada beberapa activitydalam V Model yang
digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa yang
termasuk dalamactivity tersebut dan apa yang tidak.
4. Incremental
Kelebihan
:
·
Mampu
mengakomodasi perubahan secara fleksibel, dengan waktu yang relatif singkat dan
tidak dibutuhkan anggota/tim yang banyak untuk menjalankannya.
·
Personil
bekerja optimal.
·
Pihak
konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan.
·
Memaksimalkan
pengembalian modal investasi konsumen.
Kekurangan
:
·
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.
·
Hanya
akan berhasil jika tidak ada staffing untuk penerapan secara menyeluruh.
·
Penambahan
staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut.
·
Hanya
cocok untuk proyek dengan skala kecil.
·
kemungkinan
tiap bagian tidak dapat diintegrasikan.
5. Spiral
Kelebihan
:
·
Sangat
mempertimbangkan resiko kemungkinan munculnya kesalahan sehingga sangat dapat
diandalkan untuk pengembangan perangkat lunak skala besar.
·
Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
·
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 terhadap resiko teknis sehingga mengurangi resiko sebelum
menjadi permaslahan yang serius.
Kekurangan
:
·
Banyak
konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat
dikontrol oleh kedua pihak. Model spiral mempunyai resiko yang harus
dipertimbangkan ulang oleh konsumen dan developer.
·
Memerlukan
tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya
sukses.
·
Belum
terbukti apakah metode ini cukup efisien karena usianya yang relatif
baru.
6. Prototype
Kelebihan
:
·
Sifatnya
yang sangat interaktif sehingga pengembang dan pengguna (pemakai) dapat terus
berinteraksi selama pengerjaan tahapan–tahapan tersebut.
·
User
dapat berpartisipasi aktif.
·
Penentuan
kebutuhan lebih mudah diwujudkan.
·
Mempersingkat
waktu pengembangan SI.
·
Menghemat
waktu pengembangan.
·
Adanya
komunikasi yang baik antara pengembang dan pelanggan.
·
Punya
kemampuan menangkap requirement secara konkret daripada secara abstrak.
Kekurangan
:
·
Pada
prototype tentu saja banyak kebutuhan yang tidak di tampilkan seluruhnya karena
data yang dikumpulkan hanya sebagian.
·
Prototype
yang di setujui oleh client harus dikembangkan oleh developer tanpa ada data
tambahan dari client dan software dari prototype harus memiliki fungsi yang
lengkap.
·
Banyak
ketidak sesuaian pada bentuk prototype.
·
Proses
analisis dan perancangan terlalu singkat.
·
Pengembang
kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi
yang tidak relevan dan algoritma yang tidak efisien.
·
Mengesampingkan
alternatif pemecahan masalah.
·
Bisanya
kurang fleksible dalam mengahadapi perubahan.
·
Prototype
yang dihasilkan tidak selamanya mudah dirubah.
- Concurrent
Kelebihan
:
§
Hasil
yang di dapat akan menghasilkan suatu sistem yang sangat baik karena terdapat
perancangan yang terjadi secara besar dan terencana secara matang.
Kekurangan :
§
Memungkinkan
terjadinya perubahan besar-besaran, maka akan membuat biaya dan waktu yang
diperlukan membengkak.
Tidak ada komentar:
Posting Komentar