analisis dan perancangan sistem...

26
ANALISIS DAN PERANCANGAN SISTEM (APS) Pemodelan Kebutuhan: Pendekatan Terstruktur

Upload: ngodiep

Post on 14-Mar-2019

226 views

Category:

Documents


0 download

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