Sunday 25 December 2011

Model Spiral (Original: Boehm)

 Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi beberapa sektor :
1.  Objective settings (menentukan tujuan): menentukan tujuan dari fase yang ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
2.  Risk assessment and reduction (Penanganan dan pengurangan resiko): setiap resiko dianalisis secara detil pada sektor ini. Langkah-langkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
3.  Development and Validation (Pembangunan dan pengujian):
Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah integrasi sistem model waterfall lebih cocok. 
4.  Planning: Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop selanjutnya.

Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah ini:
1.  Customer communication: Yaitu tugas-tugas untuk membangun komunikasi antara pelanggan dan  kebutuhan-kebutuhan yang diinginkan oleh pelanggan
2.  Planning: Yaitu tugas-tugas untuk mendefinisikan sumber daya, ketepatan waktu, dan proyek informasi lain yg berhubungan.
3.  Risk analysis: Yaitu tugas-tugas yang dibutuhkan untuk menaksir resikomanajemen dan teknis.
4.  Engineering: Yaitu tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari apikasi tersebut.
5.  Construction and release : Yaitu tugas-tugas yang dibutuhkan untuk mengkonstruksi, menguji, memasang dan memberi pelayanan kepada pemakai.
6.  Customer evaluation: mendapatkan feedback dari pengguna beradasarkan evaluasi PL pada fase engineering dan fase instalasi.


Dari gambar tersebut, proses dimulai dari inti bergerak searah dengan jarum jam mengelilingi spiral.  Lintasan pertama putaran  menghasilkan perkembangan spesifikasi produk.  Putaran selanjutnya digunakan untuk mengembangkan sebuah prototype, dan secara progresif mengembangkan versi perangkat lunak yang lebih canggih.  Masing-masing lintasan yang melalui daerah perencanaan menghasilkan penyesuaian pada rencanan proyek.  Biaya dan jadwal disesuaikan berdasarkan umpan balik yang disimpulakan dari evaluasi pelanggan. Manajer proyek akan menambah jumlah iterasi sesuai dengan yang dibutuhkan.

 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

No comments:

Post a Comment