02 Model Proses RPL v2

Post on 19-Jan-2016

10 views 0 download

description

RpL

Transcript of 02 Model Proses RPL v2

Sesi 3 :Model Proses Perangkat Lunak

Achmad BasukiPENS-ITS 2006

Laboratorium Rekayasa Perangkat Lunak

Materi Sesi 3Materi Sesi 3

• Model Proses Perangkat Lunak• Iterasi Proses• Spesifikasi Perangkat Lunak• Perancangan dan Implementasi PerangkatLunak

• Validasi Perangkat Lunak• Evolusi Perangkat Lunak

Laboratorium Rekayasa Perangkat Lunak

Proses Perangkat LunakProses Perangkat Lunak• Spesifikasi Perangkat Lunak: mendefinisikan

fungsionalitas dan batasan operasi.• Perancangan dan Implementasi PerangkatLunak: merancang dan membuat perangkat lunakyang memenuhi persyaratan

• Validasi Perangkat Lunak: menjamin perangkatlunak berjalan sesuai dengan apa yang dibutuhkan user.

• Evolusi Perangkat Lunak: mengembangkanperangkat lunak sesuai perubahan kebutuhan user.

Tidak ada proses perangkat lunak yang “ideal”, danstandarisasi proses perangkat lunak adalah salah satu

jaminan untuk memperoleh proses perangkat lunak yang baik.

Laboratorium Rekayasa Perangkat Lunak

Model Proses Perangkat LunakModel Proses Perangkat Lunak

• Waterfall• Pengembangan Evolusioner• Pengembangan Sistem Formal• Pengembangan Berdasarkan PemakaianUlang

Model proses perangkat lunak adalahrepresentasi abstrak dari proses perangkatlunak. Model proses perangkat lunak yang umum atau disebut dengan paradigmaumum antara lain:

Laboratorium Rekayasa Perangkat Lunak

WaterfallWaterfall

• Analisis dan Definisi Persyaratan• Perancangan Sistem dan Perangkat Lunak• Implementasi dan Pengujian Unit• Integrasi dan Pengujian Sistem• Operasi dan Pemeliharaan

Model ini pertama kali digunakan untukpengembangan perangkat lunak (Royce, 1970) dan merupakan model software life cycle.

Laboratorium Rekayasa Perangkat Lunak

WaterfallWaterfallDefinisi

PersyaratanDefinisi

Persyaratan

Perancangan Sistemdan Perangkat LunakPerancangan Sistemdan Perangkat Lunak

Implementasi danPengujian Unit

Implementasi danPengujian Unit

Integrasi danPengujian SistemIntegrasi dan

Pengujian Sistem

Operasi danPemeliharaanOperasi danPemeliharaan

Laboratorium Rekayasa Perangkat Lunak

Pengembangan EvolusionerPengembangan Evolusioner

• Pengembangan Eksplorasi:– Sistem berubah dengan adanya fitur-fiturtambahan dari user.

• Prototype yang dapat dibuang (Throw-Away):– Memahami persyaratan user untukmendapatkan definisi persyaratan yang lebihbaik.

Laboratorium Rekayasa Perangkat Lunak

Pengembangan EvolusionerPengembangan Evolusioner

PenjelasanGaris BesarPenjelasanGaris Besar

Spesifikasi

Pengembangan

Validasi

Versi AwalVersi Awal

Versi MenengahVersi Menengah

Versi AkhirVersi Akhir

Laboratorium Rekayasa Perangkat Lunak

Pengembangan EvolusionerPengembangan Evolusioner

• Proses tidak dapat dilihat• Sistem seringkali mempunyai strukturyang tidak baik

• Mungkin diperlukan alat bantu khusus

Masalah-masalah dalam PengembanganEvolusioner

Model pengembangan evolusioner ini cocok untukaplikasi yang kecil dan life-cycle yang pendek.

Laboratorium Rekayasa Perangkat Lunak

Pengembangan Sistem FormalPengembangan Sistem Formal• Pengembangan Sistem Formal mirip denganWaterfall, hanya pendekatannya didasarkanpada transformasi matematis.

• Biasanya model ini tidak berfokus padapengujian tetapi pada keandalan sistem.

• Perbedaan Pengembangan Sistem Formal danWaterfall adalah:– Spesifikasi persyaratan perangkat lunak dinyatakandalan notasi matematika

– Proses pengembangan dilakukan melaluiserangkaian proses transformasi

Laboratorium Rekayasa Perangkat Lunak

Pengembangan Sistem FormalPengembangan Sistem Formal

DefinisiPersyaratan

SpesifikasiFormal

TransformasiFormal

IntegrasiSistem

SpesifikasiFormal

SpesifikasiFormal ProgramProgramR1R1 R2R2 R3R3

P1P1 P2P2 P3P3 P4P4

T1 T2 T3 T4

Transformasi Formal

Laboratorium Rekayasa Perangkat Lunak

Pengembangan BerorientasiPemakaian Ulang

Pengembangan BerorientasiPemakaian Ulang

• Analisis Komponen• Modifikasi Persyaratan• Perancangan Sistem dengan PemakaianUlang

• Pengembangan dan Integrasi

Laboratorium Rekayasa Perangkat Lunak

Pengembangan BerorientasiPemakaian Ulang

Pengembangan BerorientasiPemakaian Ulang

SpesifikasiPersyaratanSpesifikasiPersyaratan

AnalisisKomponenAnalisis

KomponenModifikasiPersyaratanModifikasiPersyaratan

Perancangan Sistemdengan Pemakaian UlangPerancangan Sistem

dengan Pemakaian Ulang

Pengembangandan Integrasi

Pengembangandan Integrasi Validasi SistemValidasi Sistem

Laboratorium Rekayasa Perangkat Lunak

Iterasi ProsesSoftware Life-Cycle

Iterasi ProsesSoftware Life-Cycle

• Pengembangan Incremental: – Proses perangkat lunak dibagi menjadiserangkaian increment yang dikembangkansecara bergantian.

• Pengembangan Spiral: – Pengembangan sistem membentuk spiral proses, dengan spiral luar adalah sistempengembangan akhir.

Laboratorium Rekayasa Perangkat Lunak

Pengembangan IncrementalPengembangan Incremental

DefinisiPersyaratanDefinisi

PersyaratanTerapkan

PersyaratanTerapkan

PersyaratanRancangArsitekturSistem

RancangArsitekturSistem

Kembangkan PembagianSistem

Kembangkan PembagianSistem

ValidasiIncrementValidasiIncrement

IntegrasiIncrementIntegrasiIncrement Validasi SistemValidasi Sistem

SistemAkhir

Laboratorium Rekayasa Perangkat Lunak

KeuntunganPengembangan Incremental

KeuntunganPengembangan Incremental

• User tidak perlu menunggu seluruh sistemdikirimkan, karena increment pertamamempunyai persyaratan kritis dan perangkatlunak segera dapat digunakan.

• User dapat memakai increment pertamasebagai prototype

• Resiko kegagalan proyek secara keseluruhanlebih rendah

• Pengujian paling ketat diberlakukan padaincrement pertama.

Laboratorium Rekayasa Perangkat Lunak

Pengembangan SpiralPengembangan Spiral

• Penentuan Tujuan• Penilaian dan Pengurangan Resiko• Pengembangan dan Validasi• Perencanaan

Empat Sektor Spiral:

Laboratorium Rekayasa Perangkat Lunak

Pengembangan SpiralPengembangan Spiral

Laboratorium Rekayasa Perangkat Lunak

Fase Utama PersyaratanPerangkat Lunak

Fase Utama PersyaratanPerangkat Lunak

• Studi Kelayakan• Elisitasi dan Analisis Persyaratan• Spesifikasi Persyaratan• Validasi Persyaratan

Laboratorium Rekayasa Perangkat Lunak

Spesifikasi PersyaratanPerangkat Lunak

Spesifikasi PersyaratanPerangkat Lunak

StudiKelayakanStudi

KelayakanElisitasi danAnalisis

Persyaratan

Elisitasi danAnalisis

Persyaratan

SpesifikasiPersyaratanSpesifikasiPersyaratan

ValidasiPersyaratanValidasi

PersyaratanLaporanKelayakanLaporanKelayakan Model SistemModel Sistem

PersyaratanUser dan SistemPersyaratan

User dan Sistem

DokumenPersyaratanDokumenPersyaratan

Laboratorium Rekayasa Perangkat Lunak

Kegiatan PerancanganPerangkat Lunak

Kegiatan PerancanganPerangkat Lunak

• Perancangan Arsitektural• Spesifikasi Abstrak• Perancangan Interface• Perancangan Komponen• Perancangan Struktur Data• Perancangan Algoritma

Laboratorium Rekayasa Perangkat Lunak

Perancangan dan ImplementasiPerangkat Lunak

Perancangan dan ImplementasiPerangkat Lunak

SpesifikasiPersyaratan

PerancanganArsitektural

SpesifikasiAbstrak

PerancanganInterface

PerancanganKomponen

PerancanganStruktur Data

PerancanganAlgoritma

ArsitekturSistem

ArsitekturSistem

SpesifikasiPerangkat LunakSpesifikasi

Perangkat Lunak

SpesifikasiInterface

SpesifikasiInterface

SpesifikasiKomponenSpesifikasiKomponen

SpesifikasiStruktur dataSpesifikasiStruktur data

SpesifikasiAlgoritma

SpesifikasiAlgoritma

Laboratorium Rekayasa Perangkat Lunak

Metode PerancanganMetode Perancangan

• Model Aliran Data – DAD, DFD

• Model Entity Relational – ERD

• Model Struktural– Flow Chart

• Model Berorientasi Obyek– Class Diagram

Laboratorium Rekayasa Perangkat Lunak

DebugDebug

Cari Lokasi ErrorCari Lokasi Error

RancangPerbaikan ErrorRancang

Perbaikan Error

Perbaiki ErrorPerbaiki Error

Uji Ulang ProgramUji Ulang Program

Laboratorium Rekayasa Perangkat Lunak

Validasi Perangkat LunakValidasi Perangkat Lunak

PengujianUnit

PengujianUnit

PengujianModul

PengujianModul

PengujianSub SistemPengujianSub Sistem

PengujianSistem 1

PengujianSistem 1

PengujianSistem 2

PengujianSistem 2

PengujianKomponen Pengujian Integrasi Pengujian User

Laboratorium Rekayasa Perangkat Lunak

Evolusi Perangkat LunakEvolusi Perangkat Lunak

DefinisiPersyaratan

Sistem

DefinisiPersyaratan

SistemNilai SistemYang Ada

Nilai SistemYang Ada

PengajuanPerubahanSistem

PengajuanPerubahanSistem

ModifikasiSistem

ModifikasiSistem

SistemYang AdaSistem

Yang AdaSistemBaru

SistemBaru

Question ?

End of Session 3