Proses Perangkat Lunak

Anda mungkin juga menyukai

Anda di halaman 1dari 19

RPL Proses Perangkat Lunak dwi martha sari

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.

Model Proses PL yang Generic

Model Air terjun (Water fall)

Memisahkan dan membedakan antara spesifikasi dan pengembangan

Pengembangan yang berevolusi

Spesifikasi dan pengembangan saling bergantian Menggunakan suatu model sistem matematika yang ditransformasikan ke implementasi Sistem dibangun dari komponen yang sudah ada.

Pengembangan sistem Formal

Pengembangan berbasis Re-use (penggunaan ulang)

Model Linear

System/information engineering
analysis

design

code

test

Model linear - Model Waterfall (classical Life Cycle)

System/Information Engineering Requirements Requirements Analysis Analysis Design Design Code Code

Test Test

Maintain Maintain

Model Air terjun (Water fall)


Masalah pada Model Air Terjun: Partisi projek ke stages yang berbeda tidak fleksibel. Hali ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna Oleh sebab itu model ini hanya cocok digunakan apabila kebutuhan pengguna sudah dimengerti dengan baik,

Models Iterative
listen to customer build/revise mock-up

customer test-drives mock-up

Prototyping

Problem penggunaan prototyping


1.

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

testing & turnover

60 - 90 days

Pengembangan yang berevolusi (Evolutionary Development)


Pengembangan yang berdasarkan penyidikan Tujuannya untuk mengaktifkan pengguna dan memperolah model final berasal dari initial spesifikasi awal. Seharusnya diawali dengan kebutuhan yang sudah dimengerti, Throw-away prototyping Tujuannya adalah untuk memahami kebutuhan sistem. Biasanya diawali dengan pemahaman kebutuhan yang minim.

Pengembangan yang berevolusi (Evolutionary Development)


Concurrent activities

Specification

Initial version

Outline description

Development

Intermediate versions

Validation

Final version

Pengembangan yang berevolusi (Evolutionary Development)


Permasalahan dalam model pengembangan yang berevolusi:

Kekurangan visibilitas proses Model sistem biasanya tidak terstruktur Membutuhkan kemampuan khusus (mis.: bahasa pemrograman untuk rapid prototyping).

Pemakaian model pengembangan yang berevolusi


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).

Pendekatan pengembangan sistem Formal

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

Pengembangan menggunakan konsep Re-use (Penggunaan Ulang)

Requirements specification

Component analysis

Requirements modification

System design with reuse

Development and integration

System validation

Model Pengembangan Incremental

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

The Incremental (evolutionary) Model


System/information engineering

increment 1
code test

analysis

design

delivery of 1st increment

increment 2 analysis

design

code

test

delivery of 2nd increment

increment 3 analysis

design

code

test

delivery of 3rd increment

increment 4 analysis

design

code

test

delivery of 4th increment

calendar time

Model Pengembangan Incremental

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.

Model Pengembangan Spiral

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,

Sektor pada model Spiral

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

Menilai Resiko dan Pengurangannya

Pengembangan dan validasi

Perencanaan

Model Pengembangan Spiral


Determine objectives alternatives and constraints Evaluate alternatives identify, resolve risks
Risk analysis Risk analysis Risk analysis Prototype 2 Risk analysis Prototype 1 Concept of Operation Prototype 3 Operational protoype

REVIEW Requirements plan Life-cycle plan

Simulations, models, benchmarks S/W requirements

Product design

Development plan Integration and test plan

Requirement validation Design V&V

Detailed design

Code Unit test

Plan next phase

Integration test Acceptance test Develop, verify Service next-level product

Anda mungkin juga menyukai