Proses Perangkat Lunak
Proses Perangkat Lunak
Proses Perangkat Lunak
Suatu proses model adalah suatu representasi abstrak suatu model. Proses model menampilkan suatu deskripsi suatu proses dari beberapa perspektif tertentu Proses PL merupakan aktifitas yang saling terkait (koheren) untuk menspesifikasikan, merancang, implementasi dan pengujian sistem perangkat lunak.
Spesifikasi dan pengembangan saling bergantian Menggunakan suatu model sistem matematika yang ditransformasikan ke implementasi Sistem dibangun dari komponen yang sudah ada.
Model Linear
System/information engineering
analysis
design
code
test
System/Information Engineering Requirements Requirements Analysis Analysis Design Design Code Code
Test Test
Maintain Maintain
Models Iterative
listen to customer build/revise mock-up
Prototyping
2.
Customer melihat apa yang tampak sebagai versi software yang akan terjadi .Padahal masih banyak yang lain selain prototyping dalam pengembangan software. Developer kadang ingin prototype dapat cepat menjadi software, dengan segala macam cara, walaupun cara itu tidak optimal.
Iterative Models
team #3 team #2
b u s in e s s m o d e l in g
team #1
business modeling
b u s in e s s m o d e lin g
d a ta m o d e l in g
p roc e s s m o d e l in g
d a ta m o d e lin g
a p p l i c a tio n g e n e r a t io n
data modeling
p ro cess m o d e lin g
te s tin g & tu rn o v e r
a p p lic a t io n g e n e ra tio n
process modeling
te s tin g & tu rn o v e r
application generation
60 - 90 days
Specification
Initial version
Outline description
Development
Intermediate versions
Validation
Final version
Kekurangan visibilitas proses Model sistem biasanya tidak terstruktur Membutuhkan kemampuan khusus (mis.: bahasa pemrograman untuk rapid prototyping).
Untuk sistem interaktif yang kecil atau menengah Untuk salah satu bagian dari sistem yang besar (mis. User Interface) Untuk sistem yang digunakan tidak terlalu lama (short lifetime).
Berbasiskan pada transformasi spesifikasi secara matematik melalui representasi yang berbeda untuk suatu program yang dapat dieksekusi, Transformasi menyatakan spesifikasi program Menggunakan pendekatan Cleanroom untuk pengembangan PL.
Requirements definition Formal specification Formal transformation Integration and system testing
Requirements specification
Component analysis
Requirements modification
System validation
Pengembangan sistem berdasarkan model sistem yang dipecah sehingga model pengembangannya secara increment/bertahap Kebutuhan pengguna diprioritaskan dan prioritas tertinggi dimasukkan dalam awal increment Setelah pengembangan suatu increment dimulai, kebutuhan dibekukan dulu hingga increment berikutnya dimulai
increment 1
code test
analysis
design
increment 2 analysis
design
code
test
increment 3 analysis
design
code
test
increment 4 analysis
design
code
test
calendar time
Keuntungan
Nilai penggunan dapat ditentukan pada setiap increament sehingga fungsionalitas sistem disediakan lebih awal, Increment awal berupa prototype untuk membantu memahami kebutuhan pada increment berikutnya, Memiliki risiko lebih rendah terhadap keseluruhan pengembagan sistem, Prioritas tertinggi pd pelayanan sistem adalah yang paling diuji.
Proses direpresentasikan sebagai model spiral (bukan berupa barisan aktfitas yang dapat ditrack mundur) Setiap loop dalam model spiral menyatakan fase proses, Tidak terdapat fase tertentu seperti spesifikasi atau perancangan, tetapi loop dalam spiral ditentukan pada apa yang dibutuhkan,
Menentukan Tujuan
Mengidentifikasikan spesifikasi tujuan setiap fase Resiko dinial dan aktifitas ditempatkan untuk mengurangi resiko kunci Suatu model pengembangan sistem dipilih dari model generic Project di review dan fase spiral berikutnya direncanakan
Perencanaan
Product design
Detailed design