perangcangan perangkat lunakagungsr.staff.gunadarma.ac.id/downloads/files/71660/...rekayasa...

38
Perangcangan Perangkat Lunak

Upload: others

Post on 13-Dec-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

PerangcanganPerangkatLunak

Page 2: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Perangkat Lunak

Merupakan program-programkomputer dan dokumentasi yangberkaitan,produk perangkat lunakdibuat untuk pelanggan tertentuataupun untuk pasar umum

Merupakan program-programkomputer dan dokumentasi yangberkaitan,produk perangkat lunakdibuat untuk pelanggan tertentuataupun untuk pasar umum

Page 3: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Produk perangkat lunak tersebut:

Generik – dibuat untuk dijual kesuatu kumpulan pengguna yangberbeda .Bespoke (custom) – dibuat untuksuatu pengguna tunggal sesuaidengan spesifikasinya.

Generik – dibuat untuk dijual kesuatu kumpulan pengguna yangberbeda .Bespoke (custom) – dibuat untuksuatu pengguna tunggal sesuaidengan spesifikasinya.

Page 4: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Rekayasa Perangkat Lunak:adalah suatu disiplin rekayasa yang berkonsentrasiterhadap seluruh aspek produksi perangkat lunak.

mengadopsi pendekatan yang sistematis danterorganisir terhadap pekerjaannya danmenggunakan tool yang sesuai serta teknik yangditentukan berdasarkan masalah yang akandipecahkan, kendala pengembangan dan sumberdaya yang tersedia

adalah suatu disiplin rekayasa yang berkonsentrasiterhadap seluruh aspek produksi perangkat lunak.

mengadopsi pendekatan yang sistematis danterorganisir terhadap pekerjaannya danmenggunakan tool yang sesuai serta teknik yangditentukan berdasarkan masalah yang akandipecahkan, kendala pengembangan dan sumberdaya yang tersedia

Page 5: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Proses Perangkat LunakSekumpulan aktifitas yang memilikitujuan untuk pengembangan ataupunevolusi perangkat lunak.

Aktifitas generic dalam semua proses perangkatlunak adalah:

Spesifikasi – apa yang harus dilakukan oleh perangkat lunak danbatasan/kendala pengembangannyaPengembangan – proses memproduksi sistem perangkat lunakValidasi – pengujian perangkat lunak terhadap keinginanpenggunakEvolusi – perubahan perangkat lunak berdasarkan perubahankeinginan.

Sekumpulan aktifitas yang memilikitujuan untuk pengembangan ataupunevolusi perangkat lunak.

Aktifitas generic dalam semua proses perangkatlunak adalah:

Spesifikasi – apa yang harus dilakukan oleh perangkat lunak danbatasan/kendala pengembangannyaPengembangan – proses memproduksi sistem perangkat lunakValidasi – pengujian perangkat lunak terhadap keinginanpenggunakEvolusi – perubahan perangkat lunak berdasarkan perubahankeinginan.

Page 6: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Proses Perangkat Lunak

Suatu representasi proses perangkat lunakyang disederhanakan, dipresentasikan darperspektif khusus

Contoh perspektif proses:Perspektif Alur-kerja (workflow) - barisankegiatanPerspektif Alur Data (Data flow) – alur informasiPerspektif Peran/Aksi – siapa melakukan apa.

Suatu representasi proses perangkat lunakyang disederhanakan, dipresentasikan darperspektif khusus

Contoh perspektif proses:Perspektif Alur-kerja (workflow) - barisankegiatanPerspektif Alur Data (Data flow) – alur informasiPerspektif Peran/Aksi – siapa melakukan apa.

Page 7: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model proses Generik:

Waterfall (Air terjun)Pengembangan secara evolusiTransformasi formalModel SpiralIntegrasi daru komponen yang reusable

Waterfall (Air terjun)Pengembangan secara evolusiTransformasi formalModel SpiralIntegrasi daru komponen yang reusable

Page 8: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Biaya rekayasa perangkat lunak

Sekitar 60% untuk biaya pengembangan,40% biaya pengujian. Untuk perangkat lunakberbasis pengguna (custom), biaya evolusibiasanya melebihi biaya pengembangan.Biaya beragam tergantung pada tipe sistemyang akan dikembangkan dan kebutuhansistem seperti unjuk kerja dan kehandalansistem,Distribusi biaya bergantung pada modelpengembangan yang digunakan.

Sekitar 60% untuk biaya pengembangan,40% biaya pengujian. Untuk perangkat lunakberbasis pengguna (custom), biaya evolusibiasanya melebihi biaya pengembangan.Biaya beragam tergantung pada tipe sistemyang akan dikembangkan dan kebutuhansistem seperti unjuk kerja dan kehandalansistem,Distribusi biaya bergantung pada modelpengembangan yang digunakan.

Page 9: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Metode Rekayasa Perangkat Lunak

Pendekatan terstruktur pengembangan PLtermasuk model sistem, notasi, perancangandan petunjuk pemrosesan,Deskripsi Model: deskripsi pemodelandengan grafik,Aturan: Batasan yang digunakan pada modelsistemRekomendasi: nasihat bentuk perancanganyang baik,Petunjuk proses: Aktifitas yang harus diikuti,

Pendekatan terstruktur pengembangan PLtermasuk model sistem, notasi, perancangandan petunjuk pemrosesan,Deskripsi Model: deskripsi pemodelandengan grafik,Aturan: Batasan yang digunakan pada modelsistemRekomendasi: nasihat bentuk perancanganyang baik,Petunjuk proses: Aktifitas yang harus diikuti,

Page 10: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Atribut Perangkat Lunak yang baik:

PL seharusnya memberikan penggunakebutuhan fungsionalitas dan unjuk kerja yangdapat di rawat dan berguna.

Maintanability (Dapat Dirawat): PL harus dapatmemenuhi perubahan kebutuhanDependability: PL harus dapat dipercayaEfisiensi: PL harus efisien dalam penggunaanresourceUsability:PL harus dapat digunakan sesuaidengan yang direncanakan

PL seharusnya memberikan penggunakebutuhan fungsionalitas dan unjuk kerja yangdapat di rawat dan berguna.

Maintanability (Dapat Dirawat): PL harus dapatmemenuhi perubahan kebutuhanDependability: PL harus dapat dipercayaEfisiensi: PL harus efisien dalam penggunaanresourceUsability:PL harus dapat digunakan sesuaidengan yang direncanakan

Page 11: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Proses Perangkat Lunak

Suatu proses model adalah suaturepresentasi abstrak suatu model. Prosesmodel menampilkan suatu deskripsi suatuproses dari beberapa perspektif tertentu,

Proses PL merupakan aktifitas yang salingterkait (koheren) untuk menspesifikasikan,merancang, implementasi dan pengujiansistem perangkat lunak.

Suatu proses model adalah suaturepresentasi abstrak suatu model. Prosesmodel menampilkan suatu deskripsi suatuproses dari beberapa perspektif tertentu,

Proses PL merupakan aktifitas yang salingterkait (koheren) untuk menspesifikasikan,merancang, implementasi dan pengujiansistem perangkat lunak.

Page 12: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Proses PL yang Generic

Model Air terjun (Water fall)Memisahkan dan membedakan antara spesifikasi danpengembangan

Pengembangan yang berevolusiSpesifikasi dan pengembangan saling bergantian

Pengembangan sistem FormalMenggunakan suatu model sistem matematika yangditransformasikan ke implementasi,

Pengembangan berbasis Re-use (penggunaanulang)

Sistem dibangun dari komponen yang sudah ada.

Model Air terjun (Water fall)Memisahkan dan membedakan antara spesifikasi danpengembangan

Pengembangan yang berevolusiSpesifikasi dan pengembangan saling bergantian

Pengembangan sistem FormalMenggunakan suatu model sistem matematika yangditransformasikan ke implementasi,

Pengembangan berbasis Re-use (penggunaanulang)

Sistem dibangun dari komponen yang sudah ada.

Page 13: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Air Terjun (Water Fall)Requirements

definition

System andsoftware design

Implementationand unit testing

Integr ation andsystem testing

Operation andmaintenance

Requirementsdefinition

System andsoftware design

Implementationand unit testing

Integr ation andsystem testing

Operation andmaintenance

Proses kembali ke state sebelumnya untuk mengantisipasi perubahansetelah proses menuju ke suatu state di bawahnya adalah sangat sulit.

Page 14: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Fase Model Air Terjun

Analisis Kebutuhan danpendefinisiannyaPerancangan sistem dan PerangkatLunakImplementasi dan unit testingIntegrasi dan pengujian sistemPengoperasian dan perawatan

Analisis Kebutuhan danpendefinisiannyaPerancangan sistem dan PerangkatLunakImplementasi dan unit testingIntegrasi dan pengujian sistemPengoperasian dan perawatan

Page 15: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Partisi projek ke stages yang berbedatidak fleksibel.Hali ini mengakibatkan sulitnya untukmerespon perubahan kebutuhanpenggunaOleh sebab itu model ini hanya cocokdigunakan apabila kebutuhan penggunasudah dimengerti dengan baik,

Masalah pada Model Air Terjun:

Partisi projek ke stages yang berbedatidak fleksibel.Hali ini mengakibatkan sulitnya untukmerespon perubahan kebutuhanpenggunaOleh sebab itu model ini hanya cocokdigunakan apabila kebutuhan penggunasudah dimengerti dengan baik,

Page 16: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pengembangan yang berevolusi(Evolutionary Development)

Pengembangan yang berdasarkan penyidikanTujuannya untuk mengaktifkan pengguna danmemperolah model final berasal dari initialspesifikasi awal. Seharusnya diawali dengankebutuhan yang sudah dimengerti,

Throw-away prototypingTujuannya adalah untuk memahami kebutuhansistem. Biasanya diawali dengan pemahamankebutuhan yang minim.

Pengembangan yang berdasarkan penyidikanTujuannya untuk mengaktifkan pengguna danmemperolah model final berasal dari initialspesifikasi awal. Seharusnya diawali dengankebutuhan yang sudah dimengerti,

Throw-away prototypingTujuannya adalah untuk memahami kebutuhansistem. Biasanya diawali dengan pemahamankebutuhan yang minim.

Page 17: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Evolutionary Development

Validation Finalversion

Development Intermediateversions

Specification Initialversion

Outlinedescription

Concurrentactivities

Validation Finalversion

Development Intermediateversions

Specification Initialversion

Outlinedescription

Concurrentactivities

Page 18: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Evolutionary Development

Permasalahan dalam model pengembangan yangberevolusi:

Kekurangan visibilitas prosesModel sistem biasanya tidak terstrukturMembutuhkan kemampuan khusus (mis.: bahasa pemrogramanuntuk rapid prototyping).

Pemakaian model pengembangan yang berevolusiUntuk sistem interaktif yang kecil atau menengahUntuk salah satu bagian dari sistem yang besar (mis. UserInterface)Untuk sistem yang digunakan tidak terlalu lama (short lifetime).

Permasalahan dalam model pengembangan yangberevolusi:

Kekurangan visibilitas prosesModel sistem biasanya tidak terstrukturMembutuhkan kemampuan khusus (mis.: bahasa pemrogramanuntuk rapid prototyping).

Pemakaian model pengembangan yang berevolusiUntuk sistem interaktif yang kecil atau menengahUntuk salah satu bagian dari sistem yang besar (mis. UserInterface)Untuk sistem yang digunakan tidak terlalu lama (short lifetime).

Page 19: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pendekatan pengembangan sistemFormal

Berbasiskan pada transformasispesifikasi secara matematik melaluirepresentasi yang berbeda untuk suatuprogram yang dapat dieksekusi,Trasformasi menyatakan spesifikasiprogramMenggunakan pendekatan ‘Cleanroom’untuk pengembangan PL.

Berbasiskan pada transformasispesifikasi secara matematik melaluirepresentasi yang berbeda untuk suatuprogram yang dapat dieksekusi,Trasformasi menyatakan spesifikasiprogramMenggunakan pendekatan ‘Cleanroom’untuk pengembangan PL.

Page 20: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pendekatan pengembangan sistemFormal

Requirementsdefinition

Formalspecification

Formaltransformation

Integrationandsystemtesting

Requirementsdefinition

Formalspecification

Formaltransformation

Integrationandsystemtesting

Page 21: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pengembangan menggunakan konsepRe-use (Penggunaan Ulang)

Requirementsspecification

Componentanalysis

Developmentand integration

System designwith reuse

Requirementsmodification

Systemvalidation

Requirementsspecification

Componentanalysis

Developmentand integration

System designwith reuse

Requirementsmodification

Systemvalidation

Page 22: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Proses dengan metode Iterasi

Model Iterasi dapat digunakan pada setiapmodel proses generic. Terdapat duapendekatan:

Pengembangan IncrementalModel Spiral

Model Iterasi dapat digunakan pada setiapmodel proses generic. Terdapat duapendekatan:

Pengembangan IncrementalModel Spiral

Page 23: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Pengembangan Incremental

Pengembangan sistem berdasarkan modelsistem yang dipecah sehingga modelpengembangannya secara increament /bertahapKebutuhan pengguna diprioritaskan danpriritas tertinggi dimasukkan dalam awalincrementSetelah pengembangan suatu incrementdimulai, kebutuhan dibekukan dulu hinggaincrement berikutnya dimulai

Pengembangan sistem berdasarkan modelsistem yang dipecah sehingga modelpengembangannya secara increament /bertahapKebutuhan pengguna diprioritaskan danpriritas tertinggi dimasukkan dalam awalincrementSetelah pengembangan suatu incrementdimulai, kebutuhan dibekukan dulu hinggaincrement berikutnya dimulai

Page 24: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Pengembangan Incremental

Valida teincrement

Develop systemincrement

Design systemarchitecture

Integrateincrement

Valida tesystem

Define outlinerequirements

Assign requirementsto increments

System incomplete

Finalsystem

KeuntunganNilai penggunan dapat ditentukan pada setiap increamentsehingga fungsionalitas sistem disediakan lebih awal,Increment awal berupa prototype untuk membantu memahamikebutuhan pada increment berikutnya,Memiliki risiko lebih rendah terhadap keseluruhan pengembagansistem,Prioritas tertinggi pd pelayanan sistem adalah yang paling diuji.

Valida teincrement

Develop systemincrement

Design systemarchitecture

Integrateincrement

Valida tesystem

Define outlinerequirements

Assign requirementsto increments

System incomplete

Finalsystem

Page 25: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Pengembangan Spiral

Proses direpresentasikan sebagai modelspiral (bukan berupa barisan aktfitas yangdapat ditrack mundur)Setiap loop dalam model spiral menyatakanfase proses,Tidak terdapat fase tertentu sepertispesifikasi atau perancangan, tetapi loopdalam spiral ditentukan pada apa yangdibutuhkan,

Proses direpresentasikan sebagai modelspiral (bukan berupa barisan aktfitas yangdapat ditrack mundur)Setiap loop dalam model spiral menyatakanfase proses,Tidak terdapat fase tertentu sepertispesifikasi atau perancangan, tetapi loopdalam spiral ditentukan pada apa yangdibutuhkan,

Page 26: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Model Pengembangan Spiral

Riskanalys is

Riskanalys is

Riskanalys is

Riskanalysis Proto-

ty pe 1

Prototyp e 2Prototyp e 3

Opera-tionalprotoyp e

Concept o fOperation

Simulations, models, b en ch marks

S/Wrequi rements

Requi rementvalid ation

DesignV&V

Prod uctdesign Detailed

design

CodeUni t tes t

Integr ationtestAccep tance

testServ ice Develop, v erifynext -level p rod uct

Ev aluate altern ativesid en tify, resolve risk s

Determine ob jectiv esalternatives and

cons traints

Plan next p hase

Integrationand test p lan

Develop mentplan

Requi rements planLife-cycle plan

REVIEW

Riskanalys is

Riskanalys is

Riskanalys is

Riskanalysis Proto-

ty pe 1

Prototyp e 2Prototyp e 3

Opera-tionalprotoyp e

Concept o fOperation

Simulations, models, b en ch marks

S/Wrequi rements

Requi rementvalid ation

DesignV&V

Prod uctdesign Detailed

design

CodeUni t tes t

Integr ationtestAccep tance

testServ ice Develop, v erifynext -level p rod uct

Ev aluate altern ativesid en tify, resolve risk s

Determine ob jectiv esalternatives and

cons traints

Plan next p hase

Integrationand test p lan

Develop mentplan

Requi rements planLife-cycle plan

REVIEW

Page 27: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Sektor pada model Spiral

Menentukan TujuanMengidentifikasikan spesifikasi tujuan setiap fase

Menilai Resiko dan PengurangannyaResiko dinial dan aktifitas ditempatkan untukmengurangi resiko kunci

Pengembangan dan validasiSuatu model pengembangan sistem dipilih darimodel generic

PerencanaanProject di review dan fase spiral berikutnyadirencanakan

Menentukan TujuanMengidentifikasikan spesifikasi tujuan setiap fase

Menilai Resiko dan PengurangannyaResiko dinial dan aktifitas ditempatkan untukmengurangi resiko kunci

Pengembangan dan validasiSuatu model pengembangan sistem dipilih darimodel generic

PerencanaanProject di review dan fase spiral berikutnyadirencanakan

Page 28: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Spesifikasi Perangkat Lunak

Proses untuk menentukan pelayanan (servis)apa yang dibutuhkan dan kendala-kendalapengoperasian sistem serta pengembangannya

Proses Rekayasa Kebutuhan:Studi KelayakanAnalisis kebutuhanSpesifikasi KebutuhanValidasi spesifikasi

Proses untuk menentukan pelayanan (servis)apa yang dibutuhkan dan kendala-kendalapengoperasian sistem serta pengembangannya

Proses Rekayasa Kebutuhan:Studi KelayakanAnalisis kebutuhanSpesifikasi KebutuhanValidasi spesifikasi

Page 29: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Proses Rekayasa Kebutuhan:

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirementsdocument

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirementsdocument

Page 30: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Aktifitas dalam Perancangan:

Perancangan ArsitekturSpesifikasi AbstrakPerancangan InterfacePerancangan KomponenPerancangan Struktur DataPerancangan Algoritma

Perancangan ArsitekturSpesifikasi AbstrakPerancangan InterfacePerancangan KomponenPerancangan Struktur DataPerancangan Algoritma

Page 31: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Aktifitas dalam Perancangan:

Architecturaldesign

Abstractspecification

Interfacedesign

Componentdesign

Datastructuredesign

Algorithmdesign

Systemarchitecture

Softwarespecification

Interfacespecification

Componentspecification

Datastructure

specification

Algorithmspecification

Requirementsspecification

Design activities

Design products

Architecturaldesign

Abstractspecification

Interfacedesign

Componentdesign

Datastructuredesign

Algorithmdesign

Systemarchitecture

Softwarespecification

Interfacespecification

Componentspecification

Datastructure

specification

Algorithmspecification

Requirementsspecification

Design activities

Design products

Page 32: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Metode Perancangan

Pendekatan sistematis untuk merancangperangkat lunakPerancangan biasanya didokumentasikandengan model grafikBeberapa model yang dapat digunakan:

Data Flow ModelModel relasi atribut entitasModel terstrukturModel Object

Pendekatan sistematis untuk merancangperangkat lunakPerancangan biasanya didokumentasikandengan model grafikBeberapa model yang dapat digunakan:

Data Flow ModelModel relasi atribut entitasModel terstrukturModel Object

Page 33: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pemrograman dan Debug

Translasi perancangan ke dalampemrograman dan menghilangkan error dariprogramPemrograman adalah aktifitas personal –tidak terdapat model program genericPemrogram melakukan beberapa programtesting untuk menemukan fault dalamprogram dan menghilangkan fault tersebutdalam proses debug.

Translasi perancangan ke dalampemrograman dan menghilangkan error dariprogramPemrograman adalah aktifitas personal –tidak terdapat model program genericPemrogram melakukan beberapa programtesting untuk menemukan fault dalamprogram dan menghilangkan fault tersebutdalam proses debug.

Page 34: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Pemrograman dan Debug

Locateerror

Designerror repair

Repairerror

Re-testprogram

Locateerror

Designerror repair

Repairerror

Re-testprogram

Page 35: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Validasi Perangkat Lunak

Verifikasi dan validasi bertujuan menunjukkan bahwasistem sesuai dengan spesifikasinya dan yangdiinginkan penggunaMelibatkan proses pengujian dan review sistemPengujian sistem melibatkan eksekusi sistem denganmenggunakan kasus tes yang ditentukan darispesifikasi data real yang akan diproses oleh sistem.

S u b - s ys te mt es t in g

M o d u let e s t i n g

U n i tt e s t i n g

S y s t e mt es t i n g

A c c e p ta n c et es t i n g

C o m p o n e n tt e s t i n g

I n t e g r a t io n t e s t in g U s e rt e s t i n g

Verifikasi dan validasi bertujuan menunjukkan bahwasistem sesuai dengan spesifikasinya dan yangdiinginkan penggunaMelibatkan proses pengujian dan review sistemPengujian sistem melibatkan eksekusi sistem denganmenggunakan kasus tes yang ditentukan darispesifikasi data real yang akan diproses oleh sistem.

Page 36: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Stage Pengujian Perangkat Lunak

Unit Testing: Pengujian Komponen-komponen secaraindividuModul Testing: Pengujian terhadap komponen yangsaling berhubungan,Sub-system Testing: Pengujian terhadap module-module sistem yang saling berhubungan. Fokus padapengujian interface.System Testing: Pengujian keseluruhan sistem,Acceptance Testing: Pengujian yang dilakukan olehpengguna untuk melihat apakah sistem sudah dapatditerima.

Unit Testing: Pengujian Komponen-komponen secaraindividuModul Testing: Pengujian terhadap komponen yangsaling berhubungan,Sub-system Testing: Pengujian terhadap module-module sistem yang saling berhubungan. Fokus padapengujian interface.System Testing: Pengujian keseluruhan sistem,Acceptance Testing: Pengujian yang dilakukan olehpengguna untuk melihat apakah sistem sudah dapatditerima.

Page 37: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek

Stage Pengujian Perangkat Lunak

Requirementsspecification

Systemspecification

Systemdesign

Detaileddesign

Moduleandunitcodeand tess

Sub-systemintegrationtest plan

Systemintegrationtest plan

Acceptancetest plan

Service Acceptancetest

Systemintegrationtest

Sub-systemintegrationtest

Requirementsspecification

Systemspecification

Systemdesign

Detaileddesign

Moduleandunitcodeand tess

Sub-systemintegrationtest plan

Systemintegrationtest plan

Acceptancetest plan

Service Acceptancetest

Systemintegrationtest

Sub-systemintegrationtest

Page 38: Perangcangan Perangkat Lunakagungsr.staff.gunadarma.ac.id/Downloads/files/71660/...Rekayasa Perangkat Lunak: adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek