ANALISIS DAN PERANCANGAN SISTEM (APS) Pemodelan Perancangan
Tujuan perkuliahan Memahami pendekatan terstruktur Memahami pendekatan berorientasi objek
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
2/32
Agenda Pemodelan terstruktur Pemodelan berorientasi objek
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
3/32
Metode Functional Design – Berorientasi pada fungsi – Structured Design (Constantin & Yourdon, 1979), Step wise Refinement (Wirth, 1971, 1976), Jackson Structured Programming (Jackson, 1975), dll.
Object-oriented Design – Berorientasi pada objek/data – Booch (1994), Meyer (1988), Jacobson et all (1993), dll.
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
4/32
Pemodelan Terstruktur (Functional Design)
Functional Design Approaches Transform Mapping - langkah perancangan untuk tipe DFD transform flow : – Incoming flow : aliran/jalur informasi eksternal masuk ke sistem untuk ditransformasikan menjadi informasi internal – Transform center : pusat transformasi di dalam sistem yang akan mentriger informasi keluar dari sistem – Outgoing flow : aliran/jalur informasi internal keluar dari sistem menjadi informasi eksternal
Transaction Mapping - langkah perancangan untuk tipe DFD transaction flow : – Transaction : data tunggal yang mentriger satu atau beberapa aliran data – Transaction center : penghubung antara aliran-aliran data hasil pentrigeran dengan data trigernya – Action path : aliran/jalur informasi hasil triger Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
6/32
Functional Design Approaches Transform flow : tipe dasar DFD b
incoming flow
a
e d
c transform center
h
f g outgoing flow
Transaction flow : b
transaction center
transaction
a
action path
g
c
d
f
e
h
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
7/32
Transform Mapping Langkah-langkah Transform Mapping : – Review dan refine DFD sampai ke level paling bawah – Tentukan apakah DFD tsb. memiliki karakteristik tipe transform flow atau transaction flow – Tentukan batas antara incoming flow, transform center dan outgoing flow – Bangun first level factoring – Bangun second level factoring – Refine first iteration
Contoh Transform Mapping : SafeHome Security Software Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
8/32
Transform Mapping – Contoh DFD level 1 : Control panel
user commands and data 1* Interact with user
configuration data
2* Configure system configure request
start stop password
configuration data
configuration data
3 Activate /deactivate sytem A/D msg.
5* Process password
configuration information
valid ID msg.
4 Display messages and status
display information
sensor information Sensors
sensor status
6* Monitor sensors
Control panel display Alarm
alarm type telephone number tones
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
Telephone line
9/32
Transform Mapping – Contoh DFD level 2 : Monitor sensors 6.3* Format for display configuration information
configuration data
sensor ID, type, location 6.2* Assess against setup
sensor status
6.1 Read sensors
sensor ID, type
alarm data
sensor information
6.4 Generate alarm signal
alarm type
telephone number
6.5* Dial phone
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
telephone number tones
10/32
Transform Mapping – Contoh DFD level 3 : Monitor sensors configuration information
formated ID, type, location 6 Format display
configuration data
sensor status
sensor ID, type, location 1 Read sensors sensor ID, type
2 Acquire response info alarm cond. code, sensor ID, timing information
7 Generate alarm signal
9 Generate display
list of numbers
4 Select phone number telephone number
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
telephone number tones
alarm type 8 Generate pulses to line
alarm data 3 Establish alarm conditions
sensor information
5 Set up conn. to phone net
tone ready telephone number
11/32
Transform Mapping – Contoh First level factoring : Monitor sensors configuration information 9 6 1 2
7 3 4 5
8
Monitor sensors executive
Sensor input controller
Alarm conditions controller
Alarm output controller
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
12/32
Transform Mapping – Contoh Second level factoring : Monitor sensors Monitor sensors executive
Sensor input controller
Acquire response info
Read sensors
Alarm conditions controller
Establish alarm conditions
Select phone number
Alarm output controller
Format display
Generate alarm signal
Generate display
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
Set up conn. to phone net
Generate pulses to line
13/32
Transform Mapping – Contoh Refine first iteration : Monitor sensors Monitor sensors executive
Acquire response info
Read sensors
Establish alarm conditions
Alarm output controller
Produce display
Generate alarm signal
Set up conn. to phone net
Generate pulses to line
– Incoming controller dihapus : data input tunggal, cukup sederhana – Transform controller dihapus dan digabung dalam satu modul : ada penurunan tingkat kohesifitas – Format display dan generate display digabung : sederhana Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
14/32
Transaction Mapping Langkah-langkah Transaction Mapping : – Review dan refine DFD sampai ke level paling bawah – Tentukan apakah DFD tsb. memiliki karakteristik tipe transform flow atau transaction flow – Tentukan batas antara incoming path/transaction, transaction center dan action path – Bangun first level factoring – Bangun second level factoring – Refine first iteration
Contoh Transaction Mapping : SafeHome Security Software Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
15/32
Transaction Mapping Transaction structuring Transaction control a
Reception path
b
b
d
Dispatcher
c1
a q
r
s
d p p q r s
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
16/32
Transaction Mapping – Contoh DFD level 2 : User interaction user commands and data 1 Read user command
configure request command type
2 Invoke command processing
8 Build configurat ion file
configuration data configuration information
start stop password
3 Read password
7 Read system data
raw configuration data
5 Activate/d eactivate system
configuration data A/D msg.
four digits 4 Compare password w/ file
valid ID msg.
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
configuration data 6 Display message & status display information
17/32
Transaction Mapping – Contoh First/Second level factoring : User interaction User interaction executive Invoke command processing
Read user command
Read system data
System configuration controller
Activate /deactivate system
Password processing controller
Build configuration file
Display messages & status
Read password
Compare password w/ file
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
18/32
Transaction Mapping – Contoh Arsitektur SafeHome Security Software SafeHome Security Monitor sensors executive User interaction executive
Read user command
Read system data
Invoke command processing
Acquire response info
Establish alarm conditions
Read sensors
System configuration controller
Activate /deactivate system
Password processing controller
Build configuration file
Display messages & status
Read password
Produce display
Alarm output controller Generate alarm signal
Set up conn. to phone net
Generate pulses to line
Compare password w/ file
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
19/32
Latihan
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
20/32
Pemodelan Berorientasi Objek (Object-oriented Design)
OOA, OOD, OOP Object-oriented analysis, design and programming are related but distinct OOA is concerned with developing an object model of the application domain OOD is concerned with developing an objectoriented system model to implement requirements OOP is concerned with realising an OOD using an OO programming language such as Java or C++
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
22/32
Konsep Metode untuk melakukan dekomposisi arsitektur sistem berdasarkan objek-objek yang dimanipulasi oleh sistem yang sedang dibangun Identifikasi dan mendefinisikan klas-klas tambahan yg merefleksikan implementasi dari kebutuhankebutuhan hasil analisis Notasi = OOA Proses : – Perancangan sistem : struktur klas, user interface, data management – Perancangan objek : atribut/struktur data, algoritma operasi Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
23/32
Struktur klas Gunakan klas-klas hasil analisis dan tambahkan sesuai dengan kebutuhan perancangan Reuse jika memungkinkan Model dari OOA Vehicle VIN c olor s tyle y ear make validat eVIN()
Model OTS
VehicleOTS
VehicleOTS VIN
VIN
validateVIN()
validateVIN()
Vehicle color style year make
packaging : pengelompokan klas-klas yg sesuai Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
24/32
Package diagram
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
25/32
Finding classes Identifying object classes is often a difficult part of object oriented design There is no 'magic formula' for object identification. It relies on the skill, experience and domain knowledge of system designers. Object identification is an iterative process. You are unlikely to get it right first time. Use domain analysis as before Use a grammatical approach based on a natural language description of the system Base the identification on tangible things in the application domain Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
26/32
Finding classes Derive them from the use cases (descriptions/scenarios) Look for data which must be stored or analysed Are there external systems? Are there any devices under the control of the system? Are there any organisational parts?
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
27/32
Object Design Attributes – Describe the state and characteristics of the object – Must be typed : primitive or class – Only name and type are mandatory
Operations – Operations manipulate attributes and perform other tasks – Scope is the class – Operation signature is composed of name, parameters and return type Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
28/32
Object Design Sifat akses atribut dan operasi/service : – private (klas/objek ybs.) – protected (klas/objek ybs. dan turunannya) – public (semua klas/objek)
Algoritma operasi untuk implementasi spesifikasi dari setiap operasi – operasi manipulasi data (set, delete, get, dll.) – operasi komputasi – operasi pengontrolan
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
29/32
Operations – polymorphism Polymorphism means many (poly) shapes (morph) There are two kinds of polymorphism: – Overloading Two or more methods with different signatures with the same name They essentially do the same thing, e.g. class constructors
– Overriding Replacing an inherited method class with another having the same signature (no matter with different parameter’s name) Do different thing using the same method’s signature Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
30/32
Latihan A weather station is a package of software controlled instruments which collects data, performs some data processing and transmits this data for further processing. The instruments include air and ground thermometers, an anemometer, a wind vane, a barometer and a rain gauge. Data is collected periodically. When a command is issued to transmit the weather data, the weather station processes and summarises the collected data. The summarised data is transmitted to the mapping computer when a request is received.
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
31/32
Penutup Pemodelan perancangan dilakukan berdasarkan hasil pemodelan analisis kebutuhan (RE modeling) Transform dan transaction mapping digunakan untuk membangun arsitektur PL berdasarkan DFD OOD dilakukan berdasarkan hasil OOA dengan perluasan klas jika diperlukan untuk keperluan implementasi
Bahan Kuliah APS - Pemodelan Perancangan | Tri A. Kurniawan, S.T, M.T, Ph.D
32/32