• Tidak ada hasil yang ditemukan

REKAYASA PERANGKAT LUNAK (RPL) Analisis Kebutuhan Perangkat Lunak

N/A
N/A
Protected

Academic year: 2021

Membagikan "REKAYASA PERANGKAT LUNAK (RPL) Analisis Kebutuhan Perangkat Lunak"

Copied!
43
0
0

Teks penuh

(1)

REKAYASA PERANGKAT

REKAYASA PERANGKAT

LUNAK (RPL)

LUNAK (RPL)

Analisis

Analisis

Kebutuhan

Kebutuhan

Perangkat

(2)

Anonymous Customer

Anonymous Customer

I know you believe you understood what you

I know you believe you understood what you

think I said, but I am not sure you realize that

think I said, but I am not sure you realize that

what you heard is not what I meant . . . . .

(3)

Communication

Communication

(4)

Pendahuluan

Pendahuluan

Relevansi

Relevansi

Perkuliahan

Perkuliahan

:

:

– Banyak terjadi kasus bahwa perangkat lunak yang Banyak terjadi kasus bahwa perangkat lunak yang sudah jadi tidak sesuai dengan apa yang dibutuhkan sudah jadi tidak sesuai dengan apa yang dibutuhkan

oleh

oleh customercustomer

– DenganDengan melakukanmelakukan analisisanalisis kebutuhankebutuhan perangkatperangkat lunak

lunak makamaka diharapkandiharapkan PL PL dikembangkandikembangkan berdasarkan

berdasarkan apaapa--apaapa yang yang dibutuhkandibutuhkan oleholeh customercustomer

Tujuan

Tujuan

Instruksional

Instruksional

Khusus

Khusus

:

:

Mahasiswa akan dapat menjabarkan pengertian dan Mahasiswa akan dapat menjabarkan pengertian dan

metode

(5)

Agenda

Agenda

Pembahasan

Pembahasan

Pendahuluan

Pendahuluan

Pengertian

Pengertian

Analisis

Analisis

Kebutuhan

Kebutuhan

dan

dan

Kebutuhan

Kebutuhan

Urgensi

Urgensi

dan

dan

Fungsi

Fungsi

Analisis

Analisis

Kebutuhan

Kebutuhan

Problem

Problem

Proses

Proses

Metode

Metode

Alat

(6)

Pengertian

Pengertian

:

:

S/W Req. Analysis (SRA)

S/W Req. Analysis (SRA)

Aktifitas

Aktifitas

RPL yang

RPL yang

menjembatani

menjembatani

antara

antara

kebutuhan

kebutuhan

di

di

tingkat

tingkat

sistem

sistem

dan

dan

perancangan

perancangan

perangkat

perangkat

lunak

lunak

(

(

Roger S. Pressman

Roger S. Pressman

)

)

Proses

Proses

yang

yang

digunakan

digunakan

untuk

untuk

mendapatkan

mendapatkan

,

,

menganalisis

menganalisis

,

,

dan

dan

memvalidasi

memvalidasi

kebutuhan

kebutuhan

-

-kebutuhan

(7)

Pengertian

Pengertian

:

:

Requirement

Requirement

Suatu

Suatu

kondisi

kondisi

atau

atau

kemampuan

kemampuan

yang

yang

dibutuhkan

dibutuhkan

oleh

oleh

pengguna

pengguna

untuk

untuk

menyelesaikan

menyelesaikan

permasalahan

permasalahan

atau

atau

untuk

untuk

mencapai

mencapai

sebuah

sebuah

tujuan

tujuan

(

(

IEEE

IEEE

)

)

Sebuah

Sebuah

kondisi

kondisi

atau

atau

kemampuan

kemampuan

yang

yang

harus

harus

dipenuhi

dipenuhi

atau

atau

dimiliki

dimiliki

oleh

oleh

sebuah

sebuah

sistem

sistem

untuk

untuk

memenuhi

memenuhi

sebuah

sebuah

kontrak

kontrak

, standard,

, standard,

spesifikasi

spesifikasi

,

,

atau

atau

dokumen2 formal

dokumen2 formal

lainnya

lainnya

(

(

IEEE

IEEE

)

)

Setiap

Setiap

fungsi

fungsi

,

,

batasan

batasan

,

,

atau

atau

properti

properti

lainnya

lainnya

yang

yang

harus

harus

disediakan

disediakan

,

,

dimiliki

dimiliki

atau

atau

dipenuhi

dipenuhi

untuk

untuk

mencapai

mencapai

kebutuhan

kebutuhan

dari

dari

sistem

sistem

yang

yang

dimaksudkan

dimaksudkan

oleh

(8)

Urgensi

Urgensi

&

&

Fungsi

Fungsi

If you don

If you don

t analyze, it

t analyze, it

s highly likely that you

s highly likely that you

ll build a

ll build a

very elegant software solution that solves the wrong

very elegant software solution that solves the wrong

problem. The result is wasted time and money,

problem. The result is wasted time and money,

personal frustration

personal frustration

, and unhappy customers

, and unhappy customers

(

(

Roger S. Pressman

Roger S. Pressman

)

)

Kegunaan

Kegunaan hasilhasil analisisanalisis kebutuhankebutuhan::

– UntukUntuk mencapaimencapai kesepakatankesepakatan antaraantara developerdeveloper, , customercustomer

dan

dan penggunapengguna akhirakhir akanakan kebutuhankebutuhan yang yang harusharus dipenuhidipenuhi –

– UntukUntuk menyediakanmenyediakan dasardasar yang yang akuratakurat bagibagi perancanganperancangan perangkat

(9)

Problem

Problem

Stakeholder

Stakeholder ((endend--user, user, manajermanajer, maintenance engineer, maintenance engineer, ,

policy maker

policy maker) ) tidaktidak tahutahu persispersis apaapa yang yang sesungguhnyasesungguhnya mereka

mereka inginkaninginkan

Stakeholder

Stakeholder menyatakanmenyatakan kebutuhannyakebutuhannya dalamdalam bahasabahasa yang

yang dipahamidipahami oleholeh merekamereka sendirisendiri

Stakeholder

Stakeholder yang yang berbedaberbeda mungkinmungkin memilikimemiliki kebutuhankebutuhan yang

yang salingsaling bertentanganbertentangan Kebutuhan

Kebutuhan mungkinmungkin berubahberubah padapada saatsaat dilakukandilakukan analisis

analisis. . StakeholderStakeholder barubaru yang yang bergabungbergabung mungkinmungkin merubah

merubah dandan lingkunganlingkungan bisnisbisnis mengalamimengalami perubahanperubahan Pertentangan

Pertentangan antaraantara unjukunjuk kerjakerja ((performanceperformance) dan) dan kemudahan

(10)

Proses

Proses

Penggalian

Penggalian

dan

dan

analisis

analisis

kebutuhan

kebutuhan

(

(

s/w

s/w

req.

req.

elicitation and analysis

elicitation and analysis

)

)

Spesifikasi

Spesifikasi

kebutuhan

kebutuhan

(

(

s/w

s/w

req. specification

req. specification

)

)

Validasi

Validasi

kebutuhan

kebutuhan

(

(

s/w

s/w

req. validation

req. validation

)

)

Manajemen

Manajemen

kebutuhan

kebutuhan

(

(

s/w

s/w

req. management

req. management

)

)

Karakteristik

(11)

Proses

Proses

:

:

Elisitasi

Elisitasi

dan

dan

Analisis

Analisis

Developer

Developer

harus

harus

memahami

memahami

domain

domain

permasalahan

permasalahan

Developer

Developer

dan

dan

stakeholder

stakeholder

menggali

menggali

domain

domain

aplikasi

aplikasi

,

,

layanan

layanan

-

-

layanan

layanan

sistem

sistem

yang

yang

harus

harus

disediakan

disediakan

,

,

unjuk

unjuk

kerja

kerja

sistem

sistem

yang

yang

diperlukan

diperlukan

,

,

batasan

batasan

-

-

batasan

batasan

perangkat

perangkat

keras

keras

dan

dan

sejenisnya

sejenisnya

Fokus

Fokus

pada

pada

A P A (

A P A (

WHAT

WHAT

)

)

dan

dan

B U K A N

B U K A N

bagaimana

bagaimana

(

(

HOW

HOW

)

)

Via

(12)

Proses

Proses

:

:

Elisitasi

Elisitasi

dan

dan

Analisis

Analisis

Tipe

Tipe

kebutuhan

kebutuhan

(

(

D. T. Ross & K. F.

D. T. Ross & K. F.

Schoman

Schoman

) :

) :

Fungsional

Fungsional

(

(

functional

functional

)

)





fungsi/kapabilitas

fungsi/kapabilitas

yang

yang

harus

harus

mampu

mampu

dijalankan

dijalankan

oleh

oleh

sistem

sistem

Non

Non

fungsional

fungsional

(

(

non

non

-

-

functional

functional

)

)





performance

performance

,

,

reliability

reliability

,

,

security

security

,

,

availability

availability

,

,

constraints

constraints

,

,

dll

dll

.

.

Inversi

Inversi

(

(

inverse

inverse

)

)





apa

apa

-

-

apa

apa

yang

yang

harus

harus

tidak

tidak

boleh

boleh

dilakukan

dilakukan

sistem

sistem

Batasan

Batasan

perancangan

perancangan

&

&

implementasi

implementasi

(

(

design &

design &

implementation constraints

(13)

Proses

Proses

:

:

Elisitasi

Elisitasi

dan

dan

Analisis

Analisis

Sumber

Sumber

-

-

sumber

sumber

kebutuhan

kebutuhan

:

:

Relatively high Relatively

low

Approximate % of requirements gathered from people

Type of application

highly constrained

missile guidance system

flight control system for airliner

enhancement to corporate accounting system manufacturing control system

corporate accounting system

encounter video game

decision support system

(14)

Proses

Proses

:

:

Elisitasi

Elisitasi

dan

dan

Analisis

Analisis

Domain understanding Requirements checking Requirements collection Classification Prioritisation Conflict resolution Requirements definition Requirements specification

(15)

Proses

Proses

:

:

Elisitasi

Elisitasi

dan

dan

Analisis

Analisis

(

(

Contoh

Contoh

)

)

Perangkat

Perangkat lunaklunak harusharus mampumampu menyediakanmenyediakan saranasarana untuk

untuk menampilkanmenampilkan dandan mengaksesmengakses filefile--file yang file yang dibuatdibuat oleh

oleh tooltool yang lain. (yang lain. (ff)) Pengguna

Pengguna harusharus dapatdapat mencarimencari buku/dokumen/literaturbuku/dokumen/literatur di

di perpustakaanperpustakaan dgndgn memasukkanmemasukkan sebuahsebuah katakata kuncikunci. (. (ff)) Sistem

Sistem tidaktidak bolehboleh dioperasikandioperasikan oleholeh penggunapengguna yang yang tidak

tidak memilikimemiliki otoritasotoritas. (. (ii)) Sistem

Sistem harusharus menyediakanmenyediakan GUIGUI sehinggasehingga dapatdapat digunakan

digunakan secarasecara mudahmudah oleholeh penggunapengguna yang yang belumbelum berpengalaman

berpengalaman. (. (nn--ff)) Sistem

Sistem harusharus bisabisa memanfaatkanmemanfaatkan databasedatabase yang yang sudahsudah ada

ada. (. (dd--cc))

Sistem harus diimplementasikan dgn bahasa Java. (

(16)

Proses

Proses

:

:

Spesifikasi

Spesifikasi

Proses

Proses untukuntuk menjelaskanmenjelaskan kebutuhankebutuhan P/L yang P/L yang telahtelah didefinisikan

didefinisikan sebelumnyasebelumnya secarasecara lebihlebih detildetil dandan tepattepat yang

yang akanakan menjadimenjadi dasardasar bagibagi perancanganperancangan dandan implementasi

implementasi Definisi

Definisi kebutuhankebutuhan ((req. definitionreq. definition) :) :

1.

1. P/L P/L harusharus mampumampu menyediakanmenyediakan saranasarana untukuntuk menampilkanmenampilkan dan

dan mengaksesmengakses filefile--file yang file yang dibuatdibuat oleholeh tool yang lain. tool yang lain. (SRS_PRJ_100)

(SRS_PRJ_100)

Spesifikasi

Spesifikasi kebutuhankebutuhan ((req. specificationreq. specification) :) :

1.1

1.1 PenggunaPengguna harusharus disediakandisediakan fasilitasfasilitas untukuntuk mendefinisikanmendefinisikan tipe

tipe file. (SRS_PRJ_101)file. (SRS_PRJ_101) 1.2

1.2 SetiapSetiap tipetipe file direpresentasikanfile direpresentasikan dengandengan ikonikon tertentutertentu padapada layar

(17)

Proses

Proses

:

:

Validasi

Validasi

(+

(+

Verifikasi

Verifikasi

)

)

Proses

Proses pengecekanpengecekan untukuntuk menjaminmenjamin bahwabahwa pernyataanpernyataan kebutuhan

kebutuhan yang yang telahtelah didefinisikandidefinisikan dandan dispesifikasikandispesifikasikan adalah

adalah benarbenar, , akuratakurat dandan lengkaplengkap Dilakukan bersama

Dilakukan bersama--sama antara kustomer dan sama antara kustomer dan developer

developer Sangat

Sangat pentingpenting dilakukandilakukan karenakarena kesalahankesalahan didi dalamdalam menentukan

menentukan kebutuhankebutuhan akanakan berdampakberdampak padapada keseluruhan

keseluruhan prosesproses yang yang mengikutinyamengikutinya Validasi

Validasi : : do we make the right product do we make the right product …….. ?.. ?

Verifikasi

Verifikasi :: do we make the product right do we make the product right …….. ?.. ?

Teknik Teknik ::

ReviewReview : : Software Specification Review (SSR)Software Specification Review (SSR)

(18)

Proses

Proses

:

:

Validasi

Validasi

(+

(+

Verifikasi

Verifikasi

)

)

Parameter

Parameter

validasi

validasi

:

:

ValidityValidity  does the system provide the functions which does the system provide the functions which best support the customer

best support the customer’’s needs ?s needs ?

ConsistencyConsistency  are there any requirements conflicts ?are there any requirements conflicts ?

ComprehensibilityComprehensibility  are all functions required by the are all functions required by the customer included ?

customer included ?

Parameter

Parameter

verifikasi

verifikasi

:

:

– – ReadabilityReadability – – TestabilityTestability – – CompletenessCompleteness – – IdentifiabilityIdentifiability

(19)

Proses

Proses

:

:

Manajemen

Manajemen

Kebutuhan

Kebutuhan

Aktifitas untuk melakukan kontrol terhadap

Aktifitas untuk melakukan kontrol terhadap

kebutuhan yang sedang maupun telah didefinisikan :

kebutuhan yang sedang maupun telah didefinisikan :

– IdentifikasiIdentifikasi  bagaimanabagaimana setiapsetiap kebutuhankebutuhan dapatdapat diidentifikasi

diidentifikasi dengandengan mudahmudah (Cont. : SRS_PRJ_XXX, (Cont. : SRS_PRJ_XXX, IRS_PRJ_XXX)

IRS_PRJ_XXX) –

– ManajemenManajemen perubahanperubahan  bagaimanabagaimana mekanismemekanisme untuk

untuk menanganimenangani perubahanperubahan kebutuhankebutuhan yang yang terjaditerjadi –

– DokumentasiDokumentasi  SRS SRS dandan IRS IRS sebagaisebagai deliverable, deliverable, ECP, PCR

ECP, PCR –

TrackingTracking  penelusuranpenelusuran informasiinformasi yang yang berhubunganberhubungan dengan

dengan sebuahsebuah kebutuhankebutuhan ((sumber/asalsumber/asal, , alokasialokasi keke perancangan

(20)

Metode

Metode

:

:

Pemodelan

Pemodelan

Bagian dari proses elisitasi/analisis dan spesifikasi Bagian dari proses elisitasi/analisis dan spesifikasi kebutuhan

kebutuhan Mengapa

Mengapa ::

– MemudahkanMemudahkan memahamimemahami dandan menganalisismenganalisis kebutuhankebutuhan –

– IdentifikasiIdentifikasi potensipotensi masalahmasalah lebihlebih awalawal

Model

Model ygyg baikbaik ::

– MengurangiMengurangi kompleksitaskompleksitas –

– MemfasilitasiMemfasilitasi penjelasanpenjelasan daridari permasalahanpermasalahan ygyg komplekskompleks –

– TidakTidak mahalmahal dandan mudahmudah untukuntuk modifikasimodifikasi

Structured Analysis

(21)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Pertama

Pertama

kali

kali

dipopulerkan

dipopulerkan

oleh

oleh

T.

T.

DeMarco

DeMarco

(1979)

(1979)





Structured Analysis and System

Structured Analysis and System

Specification

Specification

Perluasan

Perluasan

notasi

notasi

untuk

untuk

kebutuhan

kebutuhan

real

real

-

-

time

time

systems

systems

oleh

oleh

Hatley

Hatley

dan

dan

Pirbhai

Pirbhai

(1987)

(1987)

SA/RT

SA/RT





Strategies for Real

Strategies for Real

-

-

Time System Specification

Time System Specification

Processes

(22)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Elemen

Elemen

-

-

elemen

elemen

:

:

Data Dictionary Data Flow Diagram (DFD) ER Diagram State Transition Diagram (STD) Process Specification (PSPEC) Data Object Description Control

(23)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

ER Diagram : ER Diagram :

– EntitasEntitas –

– ModalitasModalitas : : tingkattingkat mandatorymandatory –

– KardinalitasKardinalitas : : tingkattingkat relasirelasi –

– BentukBentuk relasirelasi

Manufacturer Builds Car

Data Flow Diagram (DFD) : Data Flow Diagram (DFD) :

– DFD level 0 : DFD level 0 : Context DiagramContext Diagram

– DFD level 1, dstDFD level 1, dst. : breakdown . : breakdown detildetil, , konsistensikonsistensi –

Terminator, process, data flow, control flow, memory/storage, Terminator, process, data flow, control flow, memory/storage, control bar

(24)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Contoh

Contoh

Data/Control Context Diagram

Data/Control Context Diagram

(DCD/CCD)

(DCD/CCD)

Vend product Customer returned coins 0* Customer product object customer selection slug coin return request product

(25)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Contoh

Contoh

Data/Control Flow Diagram (DFD/CFD

Data/Control Flow Diagram (DFD/CFD

level 1)

level 1)

1* Get customer payment 2p Get product price 3p Validate payment 4p Get valid selection 5* Dispense change 6p Dispense product price table coins products returned coins product object customer selection slug coin return request payment price valid selection change due valid selection coin detected sufficient payment product dispensed product available product available

(26)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

PSPEC

PSPEC

Validate payment (Process 3)

Validate payment (Process 3)

Inputs : payment (data in) price (data in)

Outputs : change due (data out)

sufficient payment (control out)

Body :

IF payment >= price THEN

change due = payment – price sufficient payment = TRUE ELSE

(27)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Data/Control Flow Diagram (DFD/CFD level 2) :

Data/Control Flow Diagram (DFD/CFD level 2) :

Dispense change

Dispense change

5.1p Get change coin coin return request 5.2p Get payment coin product available change due coins payment payment coins

(28)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

CSPEC

CSPEC

–– Dispense change : Process Activation TableDispense change : Process Activation Table

1 1 0 0 FALSE FALSE D/C D/C 0 0 1 1 TRUE TRUE TRUE TRUE get get payment payment coin coin get change get change coin coin product product available available coin return coin return request request

(29)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

State Transition Diagram (STD)

State Transition Diagram (STD)

Waiting for a coin Waiting for selection Dispensing product Returning payment initial accept new coin

payment returned accept new coin coin detected

accept customer request product dispensed

accept new coin

sufficient payment dispense product

product available=FALSE

return payment coin return request

(30)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Data Dictionary

Data Dictionary

Representasi Simbol : = : composed of + : and { } : iterations of [….|…] : selection / or ( ) : optional “ “ : literal * * : comment/description Vend product (partly) :

Name Element Type

object [coin | slug](product) data product [ice cream | coffee | candy] data coins 0{[quarter | nickel | dime]}8 data product available [TRUE | FALSE] control

(31)

Metode

Metode

:

:

Structured Analysis

Structured Analysis

Beberapa

Beberapa panduanpanduan pemodelanpemodelan ::

– JumlahJumlah prosesproses dalamdalam satusatu diagram DFD : 4 diagram DFD : 4 ++ 22 –

– MaksMaks. 4 level . 4 level dekomposisidekomposisi (DFD/CFD)(DFD/CFD) –

– DekomposisiDekomposisi fungsionalfungsional (DFD) :(DFD) :

fungsi

fungsi--fungsifungsi yang yang salingsaling berhubunganberhubungan dikelompokkandikelompokkan fungsi

fungsi--fungsifungsi yang yang tidaktidak berhubunganberhubungan dipisahkandipisahkan setiap

setiap fungsifungsi dispesifikasidispesifikasi hanyahanya sekalisekali

Data flowData flow membawamembawa informasiinformasi ygyg diperlukandiperlukan oleholeh sebuahsebuah prosesproses untuk

untuk transformasitransformasi, , control flowcontrol flow membawamembawa informasiinformasi yang yang harusharus diinterpretasikan

diinterpretasikan untukuntuk merubahmerubah perilakuperilaku sistemsistem dandan/ / aktifasiaktifasi prosesproses –

– ProsesProses pemodelanpemodelan DFD/CFD DFD/CFD adalahadalah prosesproses iterasiiterasi, , tidaktidak sekalisekali jadijadi –

Context DiagramContext Diagram adalahadalah level level tertinggitertinggi daridari Data/Control Flow Data/Control Flow Diagram

Diagram

(32)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

Mulai

Mulai populerpopuler akhirakhir ’’80an 80an –– ’’90an (90an (BoochBooch, , Rumbaugh-Rumbaugh -OMT, Jacobson

OMT, Jacobson--OOSE, OOSE, Coad+YourdonCoad+Yourdon, , WirfsWirfs--Brock) :Brock) :

– ElisitasiElisitasi kebutuhankebutuhan customercustomer

– IdentifikasiIdentifikasi skenarioskenario / use/ use--case (case (useuse--case diagramcase diagram)) –

– IdentifikasiIdentifikasi klasklas berdasarkanberdasarkan kebutuhankebutuhan customercustomer

– IdentifikasiIdentifikasi atributatribut dandan operasioperasi setiapsetiap klasklas –

– DefinisiDefinisi strukturstruktur klasklas ((class diagramclass diagram)) –

– DefinisiDefinisi model model relasirelasi antarantar klasklas ((collaboration/sequence collaboration/sequence diagram

diagram)) –

– DefinisiDefinisi perpindahanperpindahan status status sistemsistem ((statechartstatechart diagramdiagram))

1996 : UML (

(33)

Object, Class

Object, Class

Apa

Apa

Itu

Itu

?

?

Objek

Objek

(

(

Object

Object

) :

) :

– Benda (Benda (tangible & intangible thingtangible & intangible thing)) –

– ContohContoh : : AndiAndi, , EkoEko, Susi , Susi –– dalamdalam sistemsistem akademikakademik perkuliahan

perkuliahan –

– SebuahSebuah objekobjek memilikimemiliki karakteristikkarakteristik : : identity identity

(

(identitasidentitas), ), statestate ((sekumpulansekumpulan atributatribut) & ) & behaviourbehaviour

(

(sekumpulansekumpulan operasioperasi))

Notasi

Notasi

:

:

Nama

Nama ObjekObjek Atribut2 Atribut2 Operasi2 Operasi2

(34)

Object, Class

Object, Class

Apa

Apa

Itu

Itu

?

?

Klas

Klas

(

(

Class

Class

) :

) :

– GambaranGambaran umumumum ((template, bluetemplate, blue--printprint) yang ) yang menjelaskanmenjelaskan sekumpulan

sekumpulan objekobjek yang yang memilikimemiliki kesamaankesamaan karakteristikkarakteristik (

(atributatribut dandan operasioperasi)) –

– MerupakanMerupakan cetakancetakan daridari objekobjek –

– DigunakanDigunakan untukuntuk menginstansiasimenginstansiasi objekobjek yang yang memilikimemiliki identitas

identitas yang yang berbedaberbeda –

– ContohContoh : : KlasKlas MahasiswaMahasiswa  objekobjek AndiAndi, , EkoEko, Susi , Susi –

– KlasKlas AbstrakAbstrak dandan KonkretKonkret ((abstract & concrete classabstract & concrete class)) –

– AbstrakAbstrak : : tidaktidak bisabisa diinstansiasidiinstansiasi, , sebagaisebagai interfaceinterface ((harusharus ada

(35)

Object, Class

Object, Class

Apa

Apa

Itu

Itu

?

?

Mahasiswa Mahasiswa -- NIMNIM -- NamaNama

-- BuatBuat skripsiskripsi -- UjianUjian Mahasiswa Mahasiswa -- NIM : 001NIM : 001

-- NamaNama : : AndiAndi

-- BuatBuat skripsiskripsi

-- UjianUjian

Mahasiswa

Mahasiswa : Andi: Andi

Mahasiswa Mahasiswa

-- NIM : 002NIM : 002

-- NamaNama : : EkoEko

-- BuatBuat skripsiskripsi

-- UjianUjian

Mahasiswa

Mahasiswa : Eko: Eko

Mahasiswa Mahasiswa

-- NIM : 003NIM : 003

-- NamaNama : Susi: Susi

-- BuatBuat skripsiskripsi

-- UjianUjian

Mahasiswa

Mahasiswa : Susi: Susi Instansiasi

Instansiasi : : penciptaan

(36)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Diagram

Diagram

utama

utama

:

:

UseUse--case diagramcase diagram ((statisstatis)) –

Class diagramClass diagram (statis(statis)) –

Collaboration/sequence diagramCollaboration/sequence diagram ((dinamisdinamis)) –

StatechartStatechart diagramdiagram ((dinamisdinamis))

Use

Use

-

-

case diagram

case diagram

:

:

– MenjelaskanMenjelaskan perilakuperilaku sistemsistem daridari tampaktampak luarluar –

– MenyediakanMenyediakan fungsifungsi-fungsi-fungsi ygyg harusharus dipenuhidipenuhi sistemsistem –

– AktorAktor ((orangorang, , sistemsistem lain) lain) dandan useuse--casecase

(37)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Use

Use

-

-

case diagram :

case diagram :

Select product

Get return coins Customer

(38)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Use

Use--case scenariocase scenario ::

Customer

Customer

Actors Actors

1.

1. If the selected product is not available, the system will If the selected product is not available, the system will display a message

display a message ““Your selected product is not availableYour selected product is not available””..

2.

2. If the selected product is available but there isnIf the selected product is available but there isn’’t enough t enough number to order, the system will display a

number to order, the system will display a messangemessange ““The The

number isn

number isn’’t enough, max. xt enough, max. x”. X is the existing number of the ”. X is the existing number of the

product.

product.

Alternative flows Alternative flows

1.

1. The customer selects a button product.The customer selects a button product. 2.

2. The system displays an entry prompt of number of product The system displays an entry prompt of number of product to order.

to order.

Main flow Main flow

Coin detected and valid

Coin detected and valid

Pre

Pre--conditioncondition

Allow customer to select a certain product to dispense

Allow customer to select a certain product to dispense

Objective Objective

Flow of events for the

(39)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Class diagram (

Class diagram (

is a

is a

-

-

inheritance)

inheritance)

:

:

Product name : String description : String price : Currency getName() : String getDescription() : String getPrice() : Currency setName(newName : String) setDescription(newDescription : String) setPrice(newPrice : Currency) Candy weight : double t ast e : String Coffee volume : double sugarContent : double type : String Ice Cream weight : double milkContent : double

(40)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Class diagram (

Class diagram (

part of

part of

-

-

aggregation)

aggregation)

:

:

Product name : String

description : St ring price : Currency getName() : String getDescript ion() : String getP rice() : Currency

setName(newName : String) Products

getP roduct(name : String) : Product

isP roductAvailable(name : String) : boolean

0..* 0..*

(41)

Metode

Metode

:

:

Object Oriented Analysis

Object Oriented Analysis

UML

UML

Sequence diagram

Sequence diagram

:

:

: Customer : SelectionScreen : SelectionController : Products :

DispenserProduct

selectProduct( )

getValidSelection(String)

isProductAvailable(String)

(42)

Alat Bantu + Dokumentasi : Alat Bantu

Alat Bantu + Dokumentasi : Alat Bantu

Structured Analysis

Structured Analysis

:

:

– AplikasiAplikasi pengolahpengolah model : Visio, dllmodel : Visio, dll.. –

– AplikasiAplikasi pengolahpengolah katakata : MS Word, : MS Word, dlldll.. –

– CASE Tool : CASE Tool : StPStP ((Software through PictureSoftware through Picture), PSL/PSA ), PSL/PSA (

(Problem Statement Language/Problem Statement Problem Statement Language/Problem Statement Anaylzer

Anaylzer), ), ILeafILeaf, SPMS, , SPMS, dlldll..

OO Analysis

OO Analysis

:

:

– AplikasiAplikasi pengolahpengolah model : Visio, model : Visio, dlldll.. –

– AplikasiAplikasi pengolahpengolah katakata : MS Word, dll: MS Word, dll.. –

(43)

Alat Bantu + Dokumentasi : Dokumentasi

Alat Bantu + Dokumentasi : Dokumentasi

IEEE Standard+ (IRS/SRS):

IEEE Standard+ (IRS/SRS):

1.

1. IntroductionIntroduction 1.1.

1.1. Purpose of the requirements documentPurpose of the requirements document 1.2.

1.2. Scope of the productScope of the product 1.3.

1.3. Definition, acronyms and abbreviationsDefinition, acronyms and abbreviations 1.4.

1.4. ReferencesReferences 2.

2. General DescriptionGeneral Description 2.1.

2.1. Product perspectiveProduct perspective 2.2.

2.2. Product functionsProduct functions 2.3.

2.3. User characteristicsUser characteristics 2.4.

2.4. General constraintsGeneral constraints 3.

3. Specific RequirementsSpecific Requirements All functional and non

All functional and non--functional requirements, system models (functional requirements, system models (egeg. DFD/CFD, ERD, . DFD/CFD, ERD, STD, Use

STD, Use--Case, Class, Sequence, Case, Class, Sequence, StatechartStatechart diagrams), performance, database diagrams), performance, database requirements, design constraints, security.

requirements, design constraints, security.

3.

3. Qualification/Validation RequirementsQualification/Validation Requirements 4.

Referensi

Dokumen terkait

”… meillä on tullut äärettömän paljon väkee ja resurssia lisää tohon tukifunktioon joka näkyy sitten tietysti kun mitataan yksikkö liikevoittoon saakka,

Berdasarkan hasil penelitian dapat disimpulkan bahwa perbedaan kualitas fisik daging ayam tiren dan daging ayam sehat menunjukkan bahwa daging ayam tiren memiliki

Artikel ini membahas tentang komunikasi pemasaran pendidikan di Madrasah Ibtidaiyah Nurul Qomar Palembang. Hal ini dilatar belakangi oleh persoalan dalam komunikasi

Proses penetapan target IKU BPK RI tahun 2012 telah mengacu kepada target yang ditetapkan dalam Renstra dan Rencana Implementasi Renstra 2011- 2015, serta memperhatikan

Metode ini didasarkan pada asumsi bahwasanya apabila orang menerima biaya untuk mencegah kerusakan yang disebabkan oleh hilangnya jasa lingkungan atau mengganti jasa ekosistem,

Bank Tabungan Pensiunan Nasional Syariah, Tbk dalam meningkatkan loyalitas nasabah (3) untuk menjelaskan faktor-faktor yang mempengaruhi strategi pelayanan PT.. Bank Tabungan

Saat dipalpasi terjadi nyeri karena kemungkinan adanya taut band pada m.masseter dan m.temporalis  yang akan menyebabkan adanya trigger pointpada taut band tersebut ketika

Ketergantungan pihak konsumen kepada distributor farmasi membuat pihak distributor mempunyai peranan yang sangat besar dalam memperkenalkan dan memasarkan produk-produk tersebut