Evolutionary model (aka successive versions or incremental model):
- Sistem
ini dipecah menjadi beberapa modul yang dapat diimplementasikan secara
bertahap dan disampaikan.
Pertama mengembangkan modul inti dari sistem.
Kerangka produk awal yang disempurnakan menjadi tingkat peningkatan kemampuan:
- dengan
menambahkan fungsi baru pada versi berikutnya.
Berturut-turut versi produk:
- sistem
berfungsi mampu melakukan beberapa pekerjaan yang berguna.
- Rilis
baru dapat mencakup fungsi baru:
- juga
fungsi yang ada dalam rilis saat ini mungkin telah ditingkatkan.
Keuntungan Evolutionary Model
Pengguna mendapatkan kesempatan untuk bereksperimen dengan sistem sebagian dikembangkan:
- banyak
sebelum versi penuh bekerja dilepaskan,
Membantu menemukan kebutuhan pengguna yang tepat:
- banyak
sebelum sistem kerja sepenuhnya dikembangkan.
Core modul bisa diuji secara menyeluruh:
- mengurangi
kemungkinan kesalahan dalam produk akhir.
Kekurangan Evolutionary Model
Seringkali, sulit untuk membagi masalah menjadi unit-unit fungsional:
- yang
dapat diimplementasikan secara bertahap dan disampaikan.
- evolutionary
model ini berguna untuk masalah yang sangat besar,
- mana
lebih mudah untuk menemukan modul untuk implementasi tambahan.
Evolutionary Model with Iteration
Banyak organisasi menggunakan kombinasi berulang dan pengembangan inkremental:
- rilis
baru mungkin termasuk fungsi baru
- fungsi
yang ada dari rilis saat ini mungkin juga telah dimodifikasi.
Beberapa keuntungan:
- Pelatihan
dapat mulai pada rilis sebelumnya
- umpan
balik pelanggan diperhitungkan
- Pasar
dapat dibuat:
- untuk
fungsionalitas yang belum pernah ditawarkan.
- Rilis
Sering memungkinkan pengembang untuk memperbaiki masalah tak terduga
dengan cepat
Incremental process model / Iterasi
Model incremental (Incremental waterfall
model) merupakan perbaikan dari model waterfall dan sebagai standar
pendekatan top-down. Ide dasar dari model ini adalah membangun software secara
meningkat (increment) berdasarkan kemampuan fungsional. Model incremental ini
diaplikasikan pada sistem pakar dengan penambahan rules yang mengakibatkan
bertambahnya kemampuan fungsional sistem.
Kelebihan Incremental Model:
1.
Personil bekerja optimal.
2.
Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang
telah dilaksanakan.
3.
Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah
selesai dibangun. COntohnya pemasukan data karyawan.
4.
Mengurangi trauma karena perubahan sistem. Klien dibiasakan
perlahan-lahan menggunakan produknya bagian per bagian.
5.
Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
6.
Memaksimalkan pengembalian modal investasi konsumen.
7.
Cocok untuk pengembangan sistem dan perangkat lunak skala besar.
Kelemahan Incremental Model:
1.
kemungkinan tiap bagian tidak dapat diintegrasikan.
2.
Hanya berlaku untuk Short-Lifetime system.
3.
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu
mendapat perubahan selama proses rekayasa berlangsung
4.
Memerlukan alat ukur kemajuan secara regular.
5.
Memerlukan tenaga ahli dengan kemampuan tinggi.
Spiral model
Model spiral adalah model proses perangkat lunak yang evolusioner yang
merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek
sistematis dari model sekuensial linier. Model itu berpotensi untuk
pengambangan versi pertambahan perangkat lunak secara cepat.
Kelebihan model Spiral :
1. Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
2. Lebih cocok
untuk pengembangan sistem dan perangkat lunak skala besar.
3. Pengembang dan
pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
4. Menggunakan
prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam
evolusi produk.
5. Tetap
mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke
dalam kerangka kerja iteratif.
6. Membutuhkan
pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum
menjadi permaslahan yang serius.
Kelemahan model Spiral:
1. Sulit untuk
menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
2. Memerlukan
penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius
jika resiko mayor tidak ditemukan dan diatur.
3. Butuh
waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolut.
Formal Method Model
Pada model ini, yang digunakan disini adalah notasi matematika yang terperinci dan penuh ketelitian dalam mengidentifikasi desain dan menguji sistem yang berbasis komputer. Metode ini sering dipakai untuk spesifikasi yang detail, rancangan dan verifikasi pada bagian-bagian sistem yang penting (bersifat kritikal) seperti pada sistem avionic dan aerospace, serta pada sistem keamanan yang kritikal pada monitor jantung, ATM (Anjungan Tunai Mandiri) dan pada perbankan.dan secara khusus, metode formal sangat cocok dijalankan pada sistem yang kompleks.
Pada model ini, yang digunakan disini adalah notasi matematika yang terperinci dan penuh ketelitian dalam mengidentifikasi desain dan menguji sistem yang berbasis komputer. Metode ini sering dipakai untuk spesifikasi yang detail, rancangan dan verifikasi pada bagian-bagian sistem yang penting (bersifat kritikal) seperti pada sistem avionic dan aerospace, serta pada sistem keamanan yang kritikal pada monitor jantung, ATM (Anjungan Tunai Mandiri) dan pada perbankan.dan secara khusus, metode formal sangat cocok dijalankan pada sistem yang kompleks.
- Kelebihan
model ini adalah pengurangan waktu dan peningkatan produktivitas yang
besar.
- Kekurangan
model ini adalah kemungkinan akan sulit memanfaatkan alat
bantu/peralatan/tools 4GT dibandingkan dengan menggunakan bahasa
pemrograman yang konvensional, selain itu terdapat juga masalah dalam hal
kode sumber yang tidak efisien. Di samping itu, pemeliharaan sistem
software besar yang dikembangkan oleh 4GT juga masih sedang dalam proses
pengkajian.
Model ini
diaplikasikan untuk mengembangkan perangkat lunak yang memakai bentuk bahasa
khusus atau notasi grafik yang dieksekusi/diselesaikan dengan syarat atau
ketentuan yang dipahami oleh pemakai/pengguna/kustomer.
Component-based Development Model
Component-based development sangat
berkaitan dengan teknologi berorientasi objek. Pada pemrograman berorientasi
objek, banyak class yang dibangun dan menjadi komponen dalam suatu software.
Class-class tersebut bersifat reusable artinya bisa digunakan kembali. Model
ini bersifat iteratif atau berulang-ulang prosesnya.
Secara umum proses yang terjadi dalam model ini adalah:
1. Identifikasi
class-class yang akan digunakan kembali dengan menguji class tersebut dengan
data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru
2. Class yang
dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa
langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class
baru, maka class baru dibuat dengan metode berorientasi objek.
3. Bangun
software dengan class-class yang sudah ditentukan atau class baru yang dibuat,
integrasikan.
Penggunaan kembali komponen software yang sudah ada menguntungkan dari
segi:
► Siklus waktu pengembangan software, karena mampu mengurangi
waktu 70%
► Biaya produksi berkurang sampai
84% arena pembangunan komponen
berkurang
Pembangunan software dengan menggunakan
komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial
off-the-shelf) – yang bisa didapatkan dengan membeli atau komponen yang sudah
dibangun sebelumnya secara internal. Component-Based Software Engineering
(CBSE) adalah proses yang menekankan perancangan dan pembangunan software
dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua
bagian yang terjadi secara paralel yaitu software engineering (component-based
development) dan domain engineering.
Win-Win
Spiral Model
Eliciting kebutuhan PL yang didefinisikan melalui negosiasi antara pelanggan dan developer, di mana tiap pihak berusaha menyeimbangkan teknik dan batasan bisnis.
Concurrent Development Model Mirip Spiral model, biasa digunakan dalam pengembangan aplikasi client / server.
Component-Based Development Variasi Spiral model di mana aplikasi dibangun dari komponen PL prepackage yang disebut class
Eliciting kebutuhan PL yang didefinisikan melalui negosiasi antara pelanggan dan developer, di mana tiap pihak berusaha menyeimbangkan teknik dan batasan bisnis.
Concurrent Development Model Mirip Spiral model, biasa digunakan dalam pengembangan aplikasi client / server.
Component-Based Development Variasi Spiral model di mana aplikasi dibangun dari komponen PL prepackage yang disebut class
Tidak ada komentar:
Posting Komentar