5 ADSI Pemodelan Kebutuhan SA
5 ADSI Pemodelan Kebutuhan SA
Pendekatan Terstruktur
Fajar Pradana S.ST., M.Eng
Tujuan perkuliahan
• Memahami pemodelan yang dibutuhkan dalam rekayasa
kebutuhan
• Memahami konsep pendekatan terstruktur dalam pemodelan
kebutuhan
Agenda
• Konsep pemodelan kebutuhan
• Konsep pemodelan terstruktur
• Elemen-elemen pemodelan terstruktur
Konsep pemodelan kebutuhan
• Model kebutuhan menjembatani antara deskripsi sistem secara
umum dengan model perancangan
• Tujuan utama model kebutuhan:
Menjelaskan apa yang dibutuhkan oleh customer
Menjadi dasar bagi perancangan PL
Menjadi referensi dalam melakukan validasi kebutuhan
• Metode: terstruktur & berorientasi objek
Prinsip pemodelan kebutuhan
• Model yang dibuat harus fokus pada kebutuhan yang relevan
dengan domain permasalahan WHAT
• Setiap model kebutuhan harus bisa dilacak ke model
perancangan traceability
• Setiap elemen dalam model kebutuhan harus mampu
memperjelas pemahaman secara utuh terhadap kebutuhan PL
domain masalah, fungsionalitas dan perilaku sistem
• Minimalisasi kopling antar klas/modul
• Pastikan bahwa model kebutuhan memiliki nilai manfaat untuk
seluruh stakeholders
• Model dibuat sesederhana mungkin notasi yang sederhana,
non duplikasi informasi
Tipe pemodelan kebutuhan
• Scenario-based models
Berdasarkan sudut pandang aktor
• Data models
Menjelaskan domain informasi dari masalah
• Class-oriented models
Merepresentasikan klas-klas yang relevan dengan kebutuhan PL
• Flow-oriented models
Merepresentasikan proses dan data dari sistem
• Behavioral models
Merepresentasikan perilaku sistem berdasar event
Pemodelan terstruktur
Konsep
• Pertama kali dipopulerkan oleh T. DeMarco (1979) Structured
Analysis and System Specification
• Perluasan notasi untuk kebutuhan real-time systems oleh Hatley
dan Pirbhai (1987) – SA/RT Strategies for Real-Time System
Specification
Processes
Data Behavior
Elemen-Elemen Pemodelan
Process
Data Object
Specificatio
Description
Data Flown (PSPEC)
ER
Diagram
Diagram
(DFD)
Data
Dictionary
State
Transition
Diagram
(STD)
Control
Specificatio
n (CSPEC)
Data Dictionary
Representasi Simbol :
= : composed of + : and
{} : iterations of [….|…] : selection / or
() : optional “ “ : literal
* * : comment/description
object
returned coins
0*
customer
selection Vend
Customer Customer
product
slug
product
coin return
request product
available
Data/Control Flow Diagram (DFD/CFD level 1)
coin return
object request
coins
1* 5* returned
slug Get payment Dispense coins
customer change
payment sufficient change due
coin detected payment 3p
Validate product
payment product
price 6p
available product
2p Dispense
dispensed
Get product
product 4p valid
valid
price Get valid selection
price table selection
selection
customer product products
selection available
Data/Control Flow Diagram (DFD/CFD level 2)
coin return
request
product
change due
available
5.2p
Get payment coins
coins payment
coin
payment
PSPEC
• 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
• change due = 0
• sufficient payment = FALSE
• END IF
Behaviour Model
• State Transition Diagram (STD) initial
accept new coin
Waiting for a
coin payment returned
accept new coin
coin detected
accept customer coin return request
request return payment
product dispensed
Waiting for Returning
accept new coin
selection payment
product
sufficient payment available=FALSE
dispense product return payment
Dispensing
product
CSPEC
get
coin return product get change
payment
request available coin
coin
TRUE TRUE 1 0
D/C FALSE 0 1
Terima Kasih
Ada Pertanyaan