analisis dan perancangan sistem (aps) · perancangan traceability setiap elemen dalam model...
TRANSCRIPT
ANALISIS DAN PERANCANGAN SISTEM (APS)
Pemodelan Kebutuhan: Pendekatan Terstruktur
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 2/26
Tujuan perkuliahan
Memahami pemodelan yang dibutuhkan dalam rekayasa kebutuhanMemahami konsep pendekatan terstruktur dalam pemodelan kebutuhan
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 3/26
Agenda
Konsep pemodelan kebutuhanKonsep pemodelan terstrukturElemen-elemen pemodelan terstruktur
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 4/26
Konsep pemodelan kebutuhan
Model kebutuhan menjembatani antara deskripsi sistem secara umum dengan model perancanganTujuan utama model kebutuhan:– Menjelaskan apa yang dibutuhkan oleh customer– Menjadi dasar bagi perancangan PL– Menjadi referensi dalam melakukan validasi
kebutuhanMetode: terstruktur & berorientasi objek
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 5/26
Prinsip pemodelan kebutuhan
Model yang dibuat harus fokus pada kebutuhan yang relevan dengan domain permasalahan WHATSetiap model kebutuhan harus bisa dilacak ke model perancangan traceabilitySetiap elemen dalam model kebutuhan harus mampu memperjelas pemahaman secara utuh terhadap kebutuhan PL domain masalah, fungsionalitas dan perilaku sistemMinimalisasi kopling antar klas/modulPastikan bahwa model kebutuhan memiliki nilai manfaat untuk seluruh stakeholdersModel dibuat sesederhana mungkin notasi yang sederhana, non duplikasi informasi
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 6/26
Tipe-tipe model 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 PLFlow-oriented models– Merepresentasikan proses dan data dari sistem
Behavioral models– Merepresentasikan perilaku sistem berdasar event
Pemodelan Terstruktur
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 8/26
Konsep
Pertama kali dipopulerkan oleh T. DeMarco (1979) Structured Analysis and System SpecificationPerluasan notasi untuk kebutuhan real-time systems oleh Hatley dan Pirbhai (1987) – SA/RT Strategies for Real-Time System Specification
Processes
Data Behavior
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 9/26
Elemen-elemen pemodelan
Data Dictionary
Data Flow Diagram
(DFD)ER Diagram
State Transition Diagram
(STD)
Process Specification
(PSPEC)Data Object Description
Control Specification
(CSPEC)
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 10/26
Data dictionary
Representasi Simbol := : composed of + : and{ } : iterations of [….|…] : selection / or( ) : optional “ “ : literal* * : comment/description
Vend product (partly) :Name Element Typeobject [coin | slug](product) dataproduct [ice cream | coffee | candy] datacoins 0{[quarter | nickel | dime]}8 dataproduct available [TRUE | FALSE] control
[“YES” | “NO”]quarter *25 cents US currency*coin return request [TRUE | FALSE] control
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 11/26
Data model – ER diagram
Entitas (atribut dan nilai atribut)Modalitas : tingkat mandatory (minimal)Kardinalitas : tingkat relasi (maksimal)Bentuk relasi
Manufacturer CarBuilds
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 12/26
Data model – data object description
Data object– represents a composite information– consists of a number of different attributes or
properties– encapsulates data only no operation applied to its
data– can be external entity, thing, occurrence/event, role,
organizational unit, structure, etc. – e.g. dimensions (height, weight, depth), cars (make,
model, ID, body type, color, owner)– can be represented in a tabular representation
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 13/26
Process model – DFD
Useful for analyzing existing as well as proposed systems process decompositionFocus on the movement of data between external entities and processes, and between processes and data storesA relatively simple technique to learn and useModel elements: terminator, process, data flow, control flow, storage, control barThe highest level (0) Context diagram– Single process– Terminators– Data flows, control flows
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 14/26
Process model – Elemen2 DFD
Terminator– Representasi entitas eksternal– Notasi: persegi panjang– Tidak memproses data
Data flow– Representasi aliran data– Notasi: anak panah penuh– Umumnya satu arah– Hubungkan terminator, process dan storage
Control flow– Representasi aliran kontrol proses– Notasi: anak panah putus2– Hubungkan terminator, process dan control bar
Customer
data
control
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 15/26
Process model – Elemen2 DFD (1)
Process– Representasi aktifitas sistem– Notasi: lingkaran– Memproses data
Storage– Representasi tempat penyimpanan data– Notasi: dua garis paralel– Data flow in = diubah, data flow out = dibaca
Control bar– Representasi spesifikasi kontrol– Notasi: garis tegak
1Proses A
data X
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 16/26
Process model – Panduan DFD
Jumlah proses dalam satu diagram DFD : 4 + 2Maks. 4 level dekomposisi (DFD/CFD)Dekomposisi fungsional (DFD) :– fungsi-fungsi yang saling berhubungan dikelompokkan– fungsi-fungsi yang tidak berhubungan dipisahkan– setiap fungsi dispesifikasi hanya sekali
Data flow membawa informasi yg diperlukan oleh sebuah proses untuk transformasi, control flow membawa informasi yang harus diinterpretasikan untuk merubah perilaku sistem dan/ aktifasi prosesProses pemodelan DFD/CFD adalah proses iterasi, tidak sekali jadiPenjenjangan CFD harus sesuai dengan DFD
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 17/26
Data – control identification
Identify data first rather than control to know what you are controlling firstContinuous signals, and processes that act on them, are always categorized as dataDiscrete signals, and processes that act on them, are usually categorized as controlTerms like activate, turn on, engage and execute are usually associated with control requirements
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 18/26
Process model – DFD/CFD leveling
Must be consistent
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 19/26
Data/Control Context Diagram (DCD/CCD)
Vendproduct Customer
returned coins0*
Customer
product
object
customer selection
slug
coin return request product
available
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 20/26
Data/Control Flow Diagram (DFD/CFD level 1)
1*Get
customer payment
2pGet
product price
3pValidate payment
4pGet valid selection
5*Dispense change
6pDispense product
price table
coins
products
returned coins
product
object
customer selection
slug
coin return request
payment
price
valid selection
change due
valid selection
coin detectedsufficient payment
product dispensed
product available
product available
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 21/26
Data/Control Flow Diagram (DFD/CFD level 2)
DFD/CFD level 2 : Dispense change
5.1pGet change
coin
coin return request
5.2pGet
payment coin
product availablechange due
coins
payment
payment coins
change coins returned coins
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 22/26
Process model – Process specification
PSPEC – 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 – pricesufficient payment = TRUE
ELSEchange due = 0sufficient payment = FALSE
END IF
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 23/26
Behavior model
State Transition Diagram (STD)
Waiting for a coin
Waiting for selection
Dispensing product
Returning payment
initial
accept new coin
payment returned
accept new coincoin detected
accept customer request
product dispensed
accept new coin
sufficient payment
dispense product
product available=FALSEreturn payment
coin return request
return payment
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 24/26
Behavior model (1)
CSPEC – Dispense change : Process Activation Table
coin return request
product available
get change coin
get payment
coin
TRUE TRUE 1 0
D/C FALSE 0 1
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 25/26
Latihan DFD
Buat DFD untuk mesin ATM– Mulai dari diagram konteks– Identifikasi aliran data dan kontrol– Identifikasi proses2 utama– Dekomposisi proses
Buat STD untuk mesin ATM– Identifikasi state-state yang ada– Identifikasi transisinya
Bahan Kuliah APS - Pemodelan Kebutuhan: Terstruktur | Tri A. Kurniawan, S.T, M.T, Ph.D 26/26
Summary
Pemodelan kebutuhan diperlukan untuk meningkatkan pemahaman terhadap kebutuhan yang sedang dianalisisPemodelan terstruktur meliputi pemodelan data, proses dan perilaku dari sistem yang sedang dikembangkan