Analisis Kebutuhan
Menentukan karakteristik operasional PL
Menunjukkan antarmuka PL dengan elemen sistem yang lain
Membuat batasan yang harus dipenuhi PL
Analisis Kebutuhan memungkinkan Software Engineer (disebut analis
atau modeler) untuk :
Memperinci kebutuhan dasar yang dibuat kapda rekayasa kebutuhan
sebelumnya
Membangun model yang dapat menggambarkan skenario user, aktivitas
fungsional, class masalah dan relasinya, sistem dan perilaku class, dan
aliran data ketika ditransformasikan.
Sebuah Jembatan 2
system
description
analysis
model
design
model
Aturan-Aturan 3
attribute
Bentuk Umum yang lain:
object 1 relationship
object 2
(0, m) (1, 1)
ERD: sebuah contoh 12
request
Customer places
(1,1) (1,m) for service
(1,1)
standard generates (1,n) work
task table order
(1,1) (1,1) (1,1)
selected work (1,w) consists
from (1,w) tasks of
(1,i)
materials lists
Konsep Object-Oriented 13
attributes:
operations
attributes:
operations:
Apakah Class? 16
occurrences roles
things organizational units
places
external entities
structures
class name
attributes:
operations:
Enkapuslasi/Penyembunyian 17
Objek mengenkapsulasi
Baik data dan prosedur
Logis yang dibutuhkan
method method
Untuk manipulasi #1 #2
data data
method
method #3
#6
method method
#5 #4
subclasses of the
instances of Chair
Method 19
(Operasi, Layanan)
Prosedur yang terenkapsulasi
pada sebuah class dan
didesain untuk beroperasi pada
satu atau lebih atribut data
yang ditentukan sebagai
bagian dari class.
Method dipanggil
melalui pesan
Model berbasis Scenario 20
Acce s s cam e ra
s u rve illan ce via t h e cam e ras
Int e rn e t
h o m e o wn e r
Se t alarm
Activity Diagram
24
Melengkapi use-case dengan menyediakan representasi diagram
dari aliran prosedural.
e n t e r p a ssw ord
a n d u se r ID
se le c t sp e c ific
se le c t c a me ra ic o n
c a me ra - t hu mb n a ils
vie w c a me ra o ut pu t
in la be lle d win do w
p ro mp t for
a n ot h e r vie w
e n t e r pa s s wo rd
a nd u s e r ID
valid p as s wo r d s/ ID
in valid
p as s wo r d s / ID
s e le c t m a jo r fu n c t ion
o t h er f u n ct io n s pro m p t fo r re e n t ry
m ay als o b e
s elect ed
in p u t t r ies
s e le c t s urv e illa nc e r em ain
n o in p u t
t r ies r em ain
s e le c t s pe c ific
s e le c t c a m e ra ic on
c a m e ra - t h um b na ils
g e n e ra t e v ide o
ou t p ut
v ie w c a m e ra ou t put p ro m p t fo r
in la b e lle d wind ow a no t h e r vie w
exit t h is
f u n ct io n
see
an o t h er
cam er a
26
Pemodelan berorientasi aliran
Menampilkan bagaimana objek data ditransformasi
ketika mereka bergerak di dalam sistem
Sebuah data flow diagram (DFD) merupakan bentuk
diagram yang digunakan
Walaupun dianggap pendekatan kuno, pemodelan
berorientasi aliran menyediakan pandangan unik
terhadap suatu sistem. Dia tetap layak digunakan untuk
mendukung analisis elemen model lainnya.
Model Aliran 27
computer
input based output
system
Notasi Model Aliran 28
Entitas Eksternal
proses
Aliran data
Penyimpanan data
Entitas Eksternal 29
sensor #
sensor #, type,
look-up location, age
sensor
report required data
type,
location, age
sensor number
sensor data
Petunjuk menggambar DFD 33
Mereview model data untuk mengisolasi objek data dan gunakan parsing
gramatikal untuk menentukan “Operasi”
Menentukan entitas eksternal (produsen dan konsumen data)
Membuat level 0 DFD
Contoh Level 0 DFD 35
processing
user request requested
video
digital signal
video monitor
processor
video
source NTSC
video signal
Membangun DFD—II 36
a b
x P y level 0
a c p2
p1
f
d p4 5 b
p3 e g
level 1
Catatan untuk DFD 38
PSPEC
naratif
pseudocode (PDL)
persamaan
tabel
Diagram dan atau grafik
Setelah DFD? 40
analysis model
Maps into
design model
Control Flow Diagram 41
• control flow diagram berada “di atas” DFD dan menunjukkan event
yang mengendalikan proses-proses yang terdapat pada DFD
• Aliran kendali—event dan item kendali– ditandai dengan panah putus-
putus
• Sebuah tiang vertikal menggambarkan input menuju atau output dari
sebuah control spec (CSPEC) — spesifikasi terpisah yang
menggambarkan bagaimana kendali ditangani
• Sebuah panah putus-putus memasuki tiang vertikal adalah input
menuju CSPEC
• Sebuah panah putus-putus meninggalkan proses menggambarkan
kondisi data
• Sebuah panah putus-patas memasuki sebuah proses menggambarkan
sebuah kendali input yang dibaca langsung oleh proses
• Aliran kendali tidak secara fisik mengaktifkan/menonaktifkan proses,
hal ini dilakukan melalui CSPEC
Control Flow Diagram 43
copies done
beeper on/off full
read
operator
input problem
manage
start copying light
empty
reload create
process user
displays
perform
problem
diagnosis
jammed
Control Specification (CSPEC) 44
activation tables
Panduan Membangun CSPEC 45
Lihat semua sensor yang “dibaca” oleh PL
Lihat semua kondisi interupsi
Lihat semua "switches" yang diaktifkan oleh operator
Lihat semua kondisi data
Menyimpan informasi
Layanan yang dibutuhkan
Beberapa atribut
Atribut umum
Operasi umum
Kebutuhan esensial
Class Diagram 49
Class name
System
systemID
verificationPhoneNumber
systemStatus attributes
delayTime
telephoneNumber
masterPassword
temporaryPassword
numberTries
program()
display()
reset()
query() operations
modify()
call()
Class Diagram
50
Flo o rPlan
type
name
outs ideDimensions
determineType ( )
pos itionFloorplan
s cale( )
change color( )
is pa rt of
Ca m e ra Wa ll
t yp e t yp e
ID wa llDim e n s io ns
lo c a t io n
fie ld Vie w
p a n An gle
Zo o m Se t t in g
determineType ( )
d e t e rm in e Ty p e ()
computeDimensions ( )
t ra n s la t e Lo c a t io n ()
d is p la y ID()
d is p la y Vie w()
d is p la y Zoo m ()
is us e d t o build is us e d t o build
is us e d t o build
type type t y pe
s t a rt Co o rd in a t e s s t a rt Coo rd in a t e s s t a rt Co ordina t e s
s t o p Co ord in a t e s s t o pCoo rd ina t e s s t op Co ordin a t e s
n e xt Wa llSe m e nt n e x t Win do w ne xt Do or
Class:
Class:
Description:
Class:
Description:
Class: FloorPlan
Description:
Responsibility:
Description: Collaborator:
Responsibility: Collaborator:
Responsibility: Collaborator:
Responsibility: Collaborator:
defines floor plan name/type
manages floor plan positioning
scales floor plan for display
scales floor plan for display
incorporates walls, doors and windows Wall
shows position of video cameras Camera
Tipe-tipe Class
53
Class entitas, sering disebut class model atau bisnis, yang diekstrak
langsung dari statemen permasalahan (contoh : Sensor).
Class perbatasan digunakan untuk membuat interface (contoh :
layar interaktif, atau laporan cetak) dimana user melihat dan
berinteraksi dengannya selama PL digunakan.
Class kendali mengelola “unit kerja [UML03] dari awal sampai
akhir. Class kendali dapat didesain mengelola :
Pembuatan atau update objek entitas;
Inisiasi objek perbatasan sebagaimana mereka mendapatkan informasi
dari objek entitas;
Komunikasi kompleks antara sekumpulan objek;
Validasi data yang dikomunikasikan antara user dan aplikasi.
Responsibilities 54
Player
Dua class analisis sering berhubungan satu dengan yang lain dalam
beberapa pola
Dalam UML relasi ini sering disebut asosiasi
Asosiasi dapat didapatkan dengan mengenali multiplicity (istilah
cardinality digunaikan dalam pemodelan data
Dalam banyak instans, relasi client-server ada diantara dua class
analisis.
Dalam kasus ini, class client tergantung pada class server dalam suatu
cara dan relasi dependensi terjadi
Multiplicity
59
Wa ll
1 1 1
Wa llSe g m e n t Win d o w Do o r
Dependencies 60
DisplayWindow Camera
<<access>>
{password}
Analisis Paket 61
En viro nm e n t
+Tree
+Landscape
+Road
+Wall
+Bridge
+Building Rule s OfThe Gam e
+VisualEffect
+Scene +RulesOfMovement
+ConstraintsOnAction
Charact e rs
+Player
+Protagonist
+Antagonist
+SupportingRole
Pemodelan Perilaku 63
p as s wo rd = in co rre ct
& n u mb e rOfTrie s < maxTrie s
s e le ct in g
act iv at io n s u cce s s fu l
Keadaan-Keadaan Sistem 66
h o meo w n er co n t ro l p an el s ys t em ssen
enssoors
rs
read in g
s ys t em A
read y
p as s w o rd en t ered
req u es t lo o ku p
co mp arin g
res u lt
p a s s wo rd = c orre c t
n um b e rOfTrie s > m a x Trie s req u es t act ivat io n
lo cked
s elect in g
Figure 8 .2 7 Se que nc e dia gra m (pa rt ia l) for Saf e Hom e s e c urit y func t ion