Macam-macam model pengembangan software beserta contoh dan perbedaannya
Agile Development
Methods
Kelebihan
dari Agile Modeling:
-
Meningkatkan kepuasan kepada klien
-
Pembangunan system dibuat lebih cepat
- Mengurangi resiko kegagalan implementasi
soware dari segi non-teknis
- Jika
pada saat pembangunan system terjadi kegagalan,kerugian dar segi materi
relative kecil.
Kelemahan
dari Agile Modeling:
Developer harus
selalu siap dengan perubahan karena perubahan akan selalu diterima.
Rapid
Application Development (RAD)
Kelebihan.
ü Sangat berguna dilakukan pada kondisi user tidak memahami kebutuhan
apa aja yang digunakan pada proses pengembangan perangkat lunak.
ü RAD mengikuti tahapan pengembangan sistem sepeti umumnya, tetapi
mempunyai kemampuan untuk menggunakan kembali komponen yang ada (reusable
object) sehingga pengembang tidak perlu membuat dari awal lagi dan waktunya
lebih singkat.
ü Karena mempunyai kemampuan untuk menggunakan komponen yang sudah ada
dan waktu yang lebih singkat maka membuat biaya menjadi lebih rendah
Kekurangan.
1.
Proyek yang berskala besar, RAD
memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim yang
baik.
2. RAD menuntut pengembang dan pelanggan memiliki komitmen dalam aktivitas
rapid fire yang diperlukan untuk melengkapi sebuah sistem dalam waktu singkat.
jika komitmen tersebut tidak ada maka proyek RAD akan gagal.
Dynamic System Development
Dynamic System Development merupakan
pengembangan tahap lanjut dari metode Rapid Application Development (RAD) yang
sangat menerapkan metode incremental dan iteratif. metode ini sangat ideal
digunakan ketika suatu soware dituntut untuk sangat fokus dan mementingkan
tampilan yang mudah dan aspek kegunaan yang baik dari produk tersebut.
Metode
ini digunakan ketika kondisi sistem yang akan dikembangkan memiliki kriteria :
üPengguna sistem dapat
aktif memberikan kontribusi mereka dalam merangkul pengembang
üFungsi utama telah
didefenisikan secara cepat, dan funsi lainnya dapat menyusul secara berkala
üPihak yang
berkepentingan dapat berkomunikasi secara lancar tanpa ada birokrasi yang rumit
atau halangan karena umpan balik dari pengguna sistem secara konstan baik dalam
pengembangan sistem.
üProyek memiliki indikator
awal apakah akan bekerja secara baik atau tidak, sehingga meminimalisir sesuatu
yang tidak diinginkan ketika aplikasi dikembangkan.
üSistem harus selesai
pada tepat waktu dan anggaran yang baik pas.
Pengguna sistem
mengerti dalam arah proyek.
Kelebihan
Ø Menyajikan kerangka
kerja (framework) untuk membangun dan memelihara sistem dalam waktu yang
terbatas melalui penggunaan prototyping yang incremental dalam lingkungan yang
terkondisikan
Ø Membangun soware
dengan cepat
Ø
DSDM
dapat dikombinasikan dengan XP menghasilkan kombinasi model proses yang
mengikuti DSDM dan praktek yang sejalan dengan XP
Kelemahan
- Setiap iterasi bergantung pada prototype sebelumya;
- Menentukan scope dari suatu prototype proyek tidak pernah selesai;
- Dokumentasi sering kali tidak lengkap fokus pada pembuatan prototype;
- Isu-isu mengenai system backup and recovery, system performance dan system security kurang/tidak diperhatikan dan sering terlupakan
Extreme Programming

XP merupakan suatu
model yang tergolong dalam pendekatan agile yang diusulkan oleh Kent Back.
Model ini cenderung menggunakan pendekatan Object-Oriented. Tahapan-tahapan
yang harus dilalui antara lain: Planning, Design, Coding, dan Testing. Sasaran
Extreme Programming adalah tim yang dibentuk berukuran antara kecil sampai
medium saja, tidak perlu menggunakan sebuah tim yang besar. Hal ini dimaksudkan
untuk menghadapi requirements yang tidak jelas maupun terjadinya
perubahan-perubahan requirements yang sangat cepat. Extreme Programming
merupakan agile methods yang paling banyak digunakan dan menjadi sebuah
pendekatan yang sangat terkenal.
ü Keperluan berubah dengan cepat
ü Resiko tinggi dan ada proyek dengan tantangan yang besar
ü Tim programmer sedikit, yaitu 2-10 orang, Mampu mengotomatiskan tes
ü Ada peran serta pelanggan secara langsung
Kelebihan :
-
Meningkatkan kepuasan kepada
klien
-
Pembangunan system dibuat lebih
cepat
-
Menjalin komunikasi yang baik
dengan client.
-
Meningkatkan komunikasi dan
sifat saling menghargai antar developer.
Kelemahan :
- Cerita-cerita yang menunjukkan requirements kemungkinan besar tidak lengkap sehingga Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
- Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga)
- XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user.
Scrum Development
Scrum
menguraikan proses untuk mengidentifikasi dan katalogisasi pekerjaan yang perlu
dilakukan, memprioritaskan yang bekerja dengan berkomunikasi dengan pelanggan
atau wakil pelanggan, dan pelaksanaan yang bekerja menggunakan rilis iterative
dan memiliki tujuan utama untuk mendapatkan perkiraan berapa lama akan
pembangunan.
digunakan
saat kondisi:
- Keperluan
berubah dengan cepat
- Tim
programmer sedikit, yaitu 5-9 orang
- Pelanggan
tidak terlalu paham dengan apa yang diinginkan
Ø Keperluan berubah dengan cepat
Ø Tim berukuran kecil sehingga melancarkan komunikasi, mengurangi
biaya dan memberdayakan satu sama lain
Ø Pekerjaan terbagi-bagi sehingga dapat diselesaikan dengan cepat
Ø Dokumentasi dan pengujian terus menerus dilakukan setelah soware
dibangun
Ø Proses Scrum mampu menyatakan bahwa produk selesai kapanpun
diperlukan
Kelemahan:
-
Developer harus selalu siap
dengan perubahan karena perubahan akan selalu diterima.




Komentar
Posting Komentar