Modern Systems Analysis and Design
Modern Systems Analysis and Design
and Design
Chapter 7
Structuring System Process
Requirements
Learning Objectives
Understand the logical modeling of processes by
studying examples of data flow diagrams
(DFDs).
Draw data flow diagrams following specific rules
and guidelines that lead to accurate and well-
structured process models.
Decompose data flow diagrams into lower-level
diagrams.
Balance higher-level and lower-level data flow
diagrams.
Chapter 7 2
Learning Objectives (Cont.)
Use data flow diagrams as a tool to
support the analysis of information
systems.
Discuss process modeling for electronic
commerce applications.
Use decision tables to represent the logic
of choice in conditional statements.
Chapter 7 3
Process Modeling
Process modeling involves graphically
representing the functions, or processes, that
capture, manipulate, store, and distribute data
between a system and its environment and
between components within a system.
Chapter 7 4
Process Modeling (Cont.)
Data flow diagram (DFD)
• Data Flow Diagram (DFD) provides a visual
representation of the flow data within a system.
• A picture of the movement of data between external
entities and the processes and data stores within a
system.
Chapter 7 5
Process Modeling
FIGURE 7-1
Systems development life cycle with the analysis phase highlighted
Chapter 7 6
Deliverables and Outcomes
Chapter 7 7
Data Flow Diagramming
Mechanics
only four symbols, you can use DFDs
to represent both physical and logical
information systems
Chapter 7 8
Definitions and Symbols
FIGURE 7-2
Comparison of DeMarco
and Yourdon
and Gane and Sarson
DFD symbol sets
Chapter 7 9
Definitions and Symbols (Cont.)
Process:
actions performed on data so that they are
transformed, stored, or distributed
Data store:
data at rest (inside the system)
A data store may represent one of many
different physical locations for data
Chapter 7 10
Definitions and Symbols (Cont.)
Source/sink:
isthe origin and/or destination of the data.
sometimes referred to as extra entities because they
are outside the system.
Data flow:
arrows depicting movement of data
data in motion, moving from one place in a system to
another
Chapter 7 11
Developing DFDs
Context diagram is an overview of an organizational
system that shows:
the system boundaries.
external entities that interact with the system.
major information flows between the entities and the
system.
There is only one visible process node that
represents the functions of a complete system
Note: only one process symbol, and no data stores
shown
Chapter 7 12
Context Diagram
To illustrate how DFDs are used to model the logic of data flows in
information systems, we will present and work through an example.
Chapter 7 13
Context Diagram
FIGURE 7-4
Context diagram of YUMMY’s food-ordering system
Chapter 7 14
Data Flow Diagramming Rules (Cont.)
TABLE 7-2 Rules Governing Data Flow Diagramming
Chapter 7 15
Data Flow Diagramming Rules (Cont.)
TABLE 7-2 Rules Governing Data Flow Diagramming (cont.)
Chapter 7 16
Developing DFDs (Cont.)
Level-0 diagram is a data flow diagram
that represents a system’s major
processes, data flows, and data stores at
a high level of detail.
Processes are labeled 1.0, 2.0, etc. These will
be decomposed into more primitive (lower-
level) DFDs.
Chapter 7 17
Level-0 Diagram
FIGURE 7-5
Level-0 DFD of YUMMY’s food-
ordering system
Chapter 7 18
Problems and Exercises
A system analyst developed the diagrams below while working on a
Cap & Gown Ordering System. Are there any errors in the
diagrams? If yes, please list them line by line
Context diagram:
-D1 inventory illegal – eliminate
-Place Order illegal name of DF1 – should be
Order
-Shipp Cap & Gown illegal name EE2 – should
be Shipping
Chapter 7 19
Problems and Exercises
A system analyst developed the diagrams below while working on a
Cap & Gown Ordering System. Are there any errors in the
diagrams? If yes, please list them line by line
Level-0 diagram:
-Shipp Cap & Gown data flow wrongly goes to Student – should go to
Shipping
-Receipt data flow wrongly goes to Shipping – should go to Student
-Process 2 uses illegal name (noun) – should be Finalize Order
-Process 1 is black hole (no output)
-Process 2 creates outputs out of nothing (no input)
Chapter 7 20
Decomposition of DFDs
Functional decomposition is an iterative
process of breaking a system description down
into finer and finer detail.
Creates a set of charts in which one process on a
given chart is explained in greater detail on another
chart.
Continues until no subprocess can logically be broken
down any further.
Chapter 7 21
Decomposition of DFDs (Cont.)
Primitive DFD is the lowest level of a DFD.
Level-1 diagram results from decomposition of
Level-0 diagram.
Level-n diagram is a DFD diagram that is the
result of n nested decompositions from a
process on a level-0 diagram.
Chapter 7 22
Level-1 DFD FIGURE 7-8
Level-1 diagram showing the decomposition
of Process 4.0 from the level-0 diagram for
AUAF’s food-ordering system
Chapter 7 23
Level-n DFD
FIGURE 7-9
Level-2 diagram showing the decomposition of
Level-n DFD shows
Process 4.3 from the level-1 diagram for Process
the sub-processes
4.0 for AUAF’s food-ordering system
of one of the
processes in the
Level n-1 DFD.
This is a Level-2
DFD for Process
4.3.
Chapter 7 24
Balancing DFDs
Conservation Principle: conserve inputs
and outputs to a process at the next level
of decomposition
Chapter 7 25
Balancing DFDs (Cont.)
Balanced means:
Number of inputs to lower level DFD equals
number of inputs to associated process of
higher-level DFD
Number of outputs to lower level DFD equals
number of outputs to associated process of
higher-level DFD
Chapter 7 26
Balancing DFDs (Cont.)
FIGURE 7-10 An unbalanced set of data flow diagrams
Chapter 7 27
Guidelines for Drawing DFDs
Completeness
DFD must include all components necessary for
system.
If your DFD contains data flows that do not lead
anywhere or data stores, processes, or external
entities that are not connected to anything else, your
DFD is not complete.
Each component must be fully described in the
project dictionary or CASE repository.
Chapter 7 28
Guidelines for Drawing DFDs
Consistency
The extent to which information contained on one level of a set
of nested DFDs is also included on other levels.
Timing
Time is not represented well on DFDs.
On a given DFD, there is no indication of whether a data flow
occurs constantly in real time, once per week, or once per year.
There is also no indication of when a system would run
Best to draw DFDs as if the system has never started and will
never stop.
29
Guidelines for Drawing DFDs
(Cont.)
Iterative Development
Analyst should expect to redraw diagram
several times before reaching the closest
approximation to the system being modeled.
Primitive DFDs
Lowest logical level of decomposition
Decision has to be made when to stop
decomposition
Chapter 7 30
Guidelines for Drawing DFDs
(Cont.)
Rules for stopping decomposition
When each process has been reduced to a
single decision, calculation or database
operation
When each data store represents data about
a single entity
Chapter 7 31
Guidelines for Drawing DFDs
(Cont.)
Rules for stopping decomposition, cont.
When the system user does not care to see
any more detail
When every data flow does not need to be
split further to show that data are handled in
various ways
Chapter 7 32
Guidelines for Drawing DFDs
(Cont.)
Rules for stopping decomposition, cont.
When you believe that you have shown each
business form or transaction, online display
and report as a single data flow
When you believe that there is a separate
process for each choice on all lowest-level
menu options
Chapter 7 33
Summary
In this chapter you learned how to:
Understand logical process modeling via
data flow diagrams (DFDs).
Draw data flow diagrams of well structured
process models.
Decompose data flow diagrams into lower-
level diagrams.
Chapter 7 34
Summary (Cont.)
Balance high-level and low-level data flow
diagrams.
Use data flow diagrams for analyzing
information systems.
Use decision tables to represent the logic
of choice in conditional statements.
Chapter 7 35