RPL 3 Analysis Modeling
RPL 3 Analysis Modeling
RPL 3 Analysis Modeling
y Data modeling
y Functional modeling and information flow
y Behavioral modeling
y Structured analysis
Ir. I Gede Made Karma, MT
Overview Structured Analysis (DeMarco)
y The analysis model is the first technical representation of a system. y Analysis products must be highly maintainable, especially the
y Analysis modeling uses a combination of text and diagrams to represent software software requirements specification.
requirements (data, function, and behavior) in an understandable way.
y Building analysis models helps make it easier to uncover requirement inconsistencies y Problems of size must be dealt with using an effective method of
and omissions. partitioning.
y Two types of analysis modeling are commonly used:
yp y g y
y structured analysis (discussed in this chapter) and
y Graphics should be used whenever possible.
Graphics should be used whenever possible
y object‐oriented analysis (discussed in Chapter 21). y Differentiate between the logical (essential) and physical
y Data modeling uses entity‐relationship diagrams to define data objects, attributes, (implementation) considerations.
and relationships.
y Functional modeling uses data flow diagrams to show how data are transformed
y Find something to help with requirements partitioning and
inside the system. document the partitioning before specification.
y Behavioral modeling uses state transition diagrams to show the impact of events. y Devise a way to track and evaluate user interfaces.
y Analysis work products must be reviewed for completeness, correctness, and
consistency. y Devise tools that describe logic and policy better than narrative
y The SEPA web site contains descriptions of several classical analysis techniques text.
(DSSD, JSD, SADT).
Analysis Model Objectives Analysis Model Elements
y Describe what the customer requires. y Data dictionary ‐ contains the descriptions of all data objects
consumed or produced by the software
y Establish a basis for the creation of a software design. y Entity relationship diagram (ERD) ‐ depicts relationships
y Devise a set of requirements that can be validated once the between data objects
software is built.
f i b il y Data flow diagram (DFD) ‐
Data flow diagram (DFD) provides an indication of how data
are transformed as they move through the system; also depicts
functions that transform the data flow (a function is represented
in a DFD using a process specification or PSPEC)
y State transition diagram (STD) ‐ indicates how the system
behaves as a consequence of external events, states are used to
represent behavior modes. Arcs are labeled with the events
triggering the transitions from one state to another (control
information is contained in control specification or CSPEC)
Functional Modeling and Information Flow
(DFD) Behavioral Modeling (STD)
y Shows the relationships of external entities, process or y State transition diagrams represent the system states and
transforms, data items, and data stores events that trigger state transitions
y DFD's cannot show procedural detail (e.g. conditionals y STD's indicate actions (e.g. process activation) taken as a
or loops) only the flow of data through the software
p y g consequence of a particular event
q p
y Refinement from one DFD level to the next should y A state is any observable mode of behavior
follow approximately a 1:5 ratio (this ratio will reduce as y Hatley and Pirbhai control flow diagrams (CFD) can also be
the refinement proceeds) used for behavioral modeling
y To model real‐time systems, structured analysis
notation must be available for time continuous data
and event processing (e.g. Ward and Mellor or Hately
and Pirbhai)
Creating Entity Relationship Diagrams E‐R Diagram (1)
y Customer asked to list "things" that application y Contoh:
addresses, these things evolve into input objects, n m
output objects, and external entities Buku meminja
Peminjam
y Analyst and customer define connections between the
y y Entitas: m
objects y Buku
y One or more object‐relationship pairs is created for y Atribut: ISBN, Judul, Pengarang, Penerbit, ...
each connection y Peminjam
y The cardinality and modality are determined for an y Atribut: NIM, Nama, Alamat, ...
object‐relationship pair
y Attributes of each entity are defined
y The entity diagram is reviewed and refined
• Merepresentasikan sistem sebagai sebuah • Penjabaran lebih lanjut dari Diagram Konteks
‘black box’ terhadap lingkungan sekitarnya • dapat terdiri atas beberapa level
• Contoh: gg
– level 0: level tertinggi
– level 1: penjabaran dari level 0
Id_ pemakai +
jenis permintaan
Creating Control Flow Diagrams Data Dictionary Contents
y Creating Control Flow Diagrams y Data Dictionary Contents
y Name ‐ primary name for each data or control item,
y Begin by stripping all the data flow arrows form the DFD data store, or external entity
y Events (solid arrows) and control items (dashed arrows) are y Alias ‐ alternate names for each data object
added to the diagram
dd d h di y Where‐used/how‐used ‐
Wh d/h d a listing of processes that use
li i f h
y Add a window to the CSPEC (contains an STD that is a
the data or control item and how it is used (e.g. input
to process, output from process, as a store, as an
sequential specification of the behavior) for each bubble in external entity)
the final CFD y Content description ‐ notation for representing content
y Supplementary information ‐ other data type
information, preset values, restrictions, limitations,
etc.
y mendeskripsikan kelakuan sistem
inisialisasi
Pembayaran dikembalikan
Terima koin baru
Terima koin baru
y Tools: Menunggu koin
Kembalikan pembayaran
y Control Specification Minuman dikeluarkan
Menunggu masukan pilihan Mengembalikan
Terima koin baru pembayaran
y Umumnya digunakan pada sistem waktu‐nyata Pembayaran mencukupi
Minuman tersedia = 0
Kembalikan pembayaran
Keluarkan minuman
Mengeluarkan minuman
yyang
g dapat
p muncul p pada sistem Process
activators
PSPEC
Control Data
Model conditions
CFD
CSPEC
Control output Control input