Nim : 1718023
Kekurangan:
Membutuhkan tim yang solid. apabila salah satu tim tidak dapat menjalankan tugas
dengan semestinya, maka akan sangat berpengaruh terhadap alur kerja tim yang lain.
Membutuhkan waktu yang lebih lama . pelanggan harus sabar untuk menanti produk
selesai, karena dikerjakan tahap per tahap, dan proses pengerjaannya akan berlanjut
ke setiap tahapan bila tahap sebelumnya sudah benar-benar selesai.
Semua tim dituntut untuk bekerja sesuai dengan arahan dan petunjuk yang telah
ditetapkan di awal. Sehingga, klien tidak dapat mengeluarkan pendapat
dan feedback kepada tim pengembang.
Sulit untuk mengalami perubahan kebutuhan yang diinginkan oleh customer/
pelanggan.
b. V-model :
Kelebihan :
Proaktif dalam pelacakan error dimana error ditemukan pada tahap awal bahkan
mungkin dalam tahap pengembangan sebelum aplikasi diuji.
Menurangi biaya untuk memperbaiki error karena error ditemukan pada tahap
awal.
Mudah untuk me-manage karena sifat kekakuan dari model dan setiap fase dalam
siklus memiliki tujuan yang spesifik.
Model yang menerapkan disiplin tingkat tinggi dan fase – fase dalam model
diselesaikan satu persatu
Dapat bekerja dengan sangat baik untuk proyek kecil dimana requirement sangat
mudah dipahami
Kekurangan :
Kerugian terbesar dari model-V adalah sangat kaku dan paling tidak fleksibel.
Yaitu jika ada perubahan yang terjadi di tengah jalan, tidak hanya dokumen
persyaratan tetapi juga dokumentasi pengujian perlu diperbarui.
membutuhkan banyak sumber daya dan uang, sehingga hanya dapat diterapkan
oleh beberapa perusahaan besar.
Hal ini tidak diusulkan untuk proyek jangka pendek karena memerlukan tinjauan
pada setiap tahap.
Tidak ada sistem yang dapat digunakan sampai satu siklus selesai
c. Prototype model :
Kelebihan :
Pelanggan berpartisipasi aktif dalam pengembangan sistem, sehingga hasil produk
pengembangan akan semakin mudah disesuaikan dengan keinginan dan
kebutuhan pelanggan.
Mempersingkat waktu pengembangan produk perangkat lunak.
Penentuan kebutuhan lebih mudah diwujudkan.
Prototype model melibatkan pelanggan dalam analisa dan desain.
Kekurangan :
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.
Prototype yang dihasilkan biasanya sulit dirubah.
d. Spiral Model
Kelebihan :
Perubahan tambahan atau fungsi-fungsi baru dapat dilakukan di tahap selanjutnya
jika ada perubahan secara tiba-tiba.
Perkiraan biaya menjadi mudah karena pembuatan prototipe dilakukan dalam
fragmen-fragmen kecil.
Pengembangan berkelanjutan atau berulang membantu dalam manajemen risiko.
Selalu ada ruang untuk umpan balik pelanggan.
Kekurangan :
Tidak semua aplikasi sesuai untuk RAD, bila system tidak dapat dimodulkan
dengan teratur, pembangunan komponen penting pada RAD akan menjadi sangat
bermasalah.
Membutuhkan tenaga kerja yang banyak untuk menyelesaikan sebuah proyek
dalam skala besar.
jika ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak
baru antra pengembang dan pelanggan.
Kelebihan :
Kekurangan :
Developer harus selalu siap dengan perubahan karena perubahan akan selalu
diterima.
Agile tidak akan berjalan dengan baik jika komitmen tim kurang.
Tidak cocok dalam skala tim yang besar (>20 orang).
Perkiraan waktu release dan harga perangkat lunak sulit ditentukan.
3. Pengukuran perangkat lunak
Perangkat lunak dapat diukur dengan melihat dari sudut pandang proses
pengembangan perangkat lunak (proses) dan hasil produk yang dihasilkan (product). Dari
sudut pandang process standart ISO 1900 dapat digunakan untuk mengukur kualitas
perangkat lunak Dan diskusi tentang ini berkembang dengan munculnya tema kajian
tentang CMM (The Capability Maturity Model) yang dikembangkan di Software
Engineering Institute, Carnegie Mellon University serta beberapa kajian lain seperti
SPICE (Software Process Improvement and Capability dEtermination) dan
BOOTSTRAP. CMM, SPICE dan BOOTSTRAP mengukur kualitas perangkat lunak dari
seberapa matang proses pengembangannya.
Sedangkan dari sudut pandang product pengukuran perangkat lunak dapat
menggunakan standart dari ISO 9126 atau best practice yang dikembangkan para praktis
dan pengembang perangkat lunak.
PARAMETER DAN METODE PENGUKURAN
Pendekatan engineering menginginkan bahwa kualitas perangkat lunak ini dapat diukur
secara kuantitatif, dalam bentuk angka-angka yang mudah dipahami oleh manusia. Untuk
itu perlu ditentukan parameter atau atribut pengukuran
a. Metode yang digunakan untuk mengembangkan sistem pada proyek skala kecil atau
menengah tidak sesuai bila diterapkan pada pengembangan sistem berskala besar atau
kompleks.
b. Perubahan dalam pengembangan perangkat lunak tidak dapat dihindari. Era sekarang
ini, perubahan terjadi dengan cepat dan harus dapat mengakomodasi perubahan ini
untuk mengembangkan perangkat lunak yang lengkap merupakan salah satu tantangan
utama yang dihadapi oleh para insinyur perangkat lunak (software engineer).
c. Kemajuan teknologi komputer dan perangkat lunak mengharuskan perubahan sifat
sistem perangkat lunak. Sistem perangkat lunak yang tidak dapat mengakomodasi
perubahan maka tidak akan banyak berguna. Dengan demikian, salah satu tantangan
rekayasa perangkat lunak adalah menghasilkan perangkat lunak berkualitas tinggi
yang mampu beradaptasi dengan kebutuhan yang berubah sesuai waktu yang dapat
diterima. Untuk memenuhi tantangan ini, pendekatan berorientasi objek lebih
diutamakan, namun mengakomodasi perubahan pada perangkat lunak dan
perawatannya dengan biaya yang dapat diterima masih merupakan tantangan
tersendiri.
d. Komunikasi informal mengambil sebagian besar waktu yang dihabiskan untuk proyek
perangkat lunak. Pemborosan waktu seperti itu dapat menunda penyelesaian proyek
dalam waktu yang telah ditentukan.
e. Pengguna umumnya memiliki gagasan samar tentang ruang lingkup dan persyaratan
sistem perangkat lunak. Hal ini biasanya menghasilkan pengembangan perangkat
lunak, yang tidak sesuai dengan ekspektasi pengguna.
f. Perubahan biasanya digabungkan dalam dokumen tanpa mengikuti prosedur standar
apapun. Dengan demikian, kegiatan verifikasi semua perubahan tersebut seringkali
menjadi sulit.
g. Pengembangan perangkat lunak yang berkualitas dan handal memerlukan perangkat
lunak untuk diuji secara menyeluruh. Meskipun pengujian menyeluruh terhadap
perangkat lunak menghabiskan sebagian besar sumber daya, tetapi apabila
meremehkannya dapat menyebabkan memburuknya kualitas perangkat lunak.