Chapter 7 - Req Modeling (DFD)
Chapter 7 - Req Modeling (DFD)
All copyright information MUST appear if these slides are posted on a website for student
use.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
Requirements Modeling Strategies
● One view of requirements modeling, called structured
analysis, considers data and the processes that transform
the data as separate entities.
● Data objects are modeled in a way that defines their attributes
and relationships.
● Processes that manipulate data objects are modeled in a manner
that shows how they transform data as data objects flow
through the system.
● A second approach to analysis modeled, called object-
oriented analysis, focuses on
● the definition of classes and
● the manner in which they collaborate with one another to effect
customer requirements.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
Flow-Oriented Modeling
● Represents how data objects are transformed at
they move through the system
● data flow diagram (DFD) is the diagrammatic
form that is used
● Considered by many to be an “old school”
approach, but continues to provide a view of
the system that is unique—it should be used to
supplement other analysis model elements
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
The Flow Model
Every computer-based system is an
information transform ....
compute
input r outpu
based
system t
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
What is a Data Flow Diagram?
● A data flow diagram (DFD) is a graphical
tool that allows system analysts (and
system users) to depict the flow of data in
an information system.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
Process
A data transformer (changes input to output)
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
Types of Diagrams
● Context Diagram
● A data flow diagram (DFD) of the scope of
an organizational system that shows the
system boundaries, external entities that
interact with the system and the major
information flows between the entities and
the system
● Level-0 Diagram
● A data flow diagram (DFD) that represents
a system’s major processes, data flows
and data stores at a high level of detail
Example
Context diagram for Food ordering system
Example – Cont.
Level-0 DFD for food ordering system
The Data Flow Hierarchy
a b
x P y level 0
c p2
a f
p1
p4 b
d 5
p3 e g
level 1
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
DFD: Numbering Levels
In a DFD with many levels it’s easy to forget which
level you are on. That’s why each level has different
numbering for the processes on the diagram. The
‘level’ corresponds to the number of decimal places
required to define a process in it. Here’s how it
works:
● Context Diagram Process labeled “0”
● Level 0 Processes labeled 1.0, 2.0, 3.0, .
● Level 1 Processes labeled 1.1, 1.2, 1.3, .
● Level 2 Processes labeled 1.11, 1.12,...
DFDs: A Look Ahead
analysis model
Maps into
design model
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0
Writing the Software Specification
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e
(McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman. 0