Systems Analysis & Design
Eleventh Edition
Chapter # 7
Using Data Flow
Diagrams
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Learning Objectives
7.1 Comprehend the importance of using data flow diagrams
(DFDs) to better understand the need of systems users.
7.2 Learn how to develop DFDs by identifying external entities,
data flows, processes, and data stories.
7.3 Be able to create both logical DFDs and physical DFDs.
7.4 Realize all of the steps it takes to develop a DFD by
studying an example from start to finish.
7.5 Understand and apply the concept of portioning websites.
7.6 Learn how to communicate with users and others by
developing and sharing DFDs.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Flow Diagrams
• Graphically characterize data processes and flows in a
business system
• Depict:
– System inputs
– Processes
– Outputs
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Major Topics
• Data flow diagram symbols
• Data flow diagram levels
• Creating data flow diagrams
• Physical and logical data flow diagrams
• Partitioning
• Communicating using data flow diagrams
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Advantages of the Data Flow Approach
• Freedom from committing to the technical implementation
too early
• Understanding of the interrelatedness of systems and
subsystems
• Communicating current system knowledge to users
• Analysis of the proposed system
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
7.1 Comprehend the importance of
using data flow diagrams (D F D s)
to better understand the need of
systems users.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Basic Symbols
• A double square for an external entity
• An arrow for movement of data from one point to another
• A rectangle with rounded corners for the occurrence of a
transforming process
• An open-ended rectangle for a data store
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.1 The Four Basic Symbols Used in Data
Flow Diagrams, Their Meanings, and Examples
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
External Entities
• Represent another department, a business, a person, or
a machine
• A source or destination of data, outside the boundaries of
the system
• Should be named with a noun
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Flow
• Shows movement of data from one point to another
• Described with a noun
• Arrowhead indicates the flow direction
• Represents data about a person, place, or thing
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Process
• Denotes a change in or transformation of data
• Represents work being performed in the system
• Naming convention:
– Assign the name of the whole system when naming a
high-level process
– To name a major subsystem attach the word
subsystem to the name
– Use the form verb-adjective-noun for detailed
processes
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Store
• A depository for data that allows examination, addition,
and retrieval of data
• Named with a noun, describing the data
• Data stores are usually given a unique reference number,
such as D1, D2, D3
• Represents a:
– Database
– Computerized file
– Filing cabinet
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.2 Steps in Developing Data Flow
Diagrams (1 of 2)
Developing Data Flow Diagrams Using a Top-Down Approach
1. Make a list of business activities and use it to determine various
– External entities
– Data flows
– Processes
– Data stores
2. Create a context diagram that shows external entities and data
flows to and from the system. Do not show any detailed processes
or data stores.
3. Draw Diagram 0, the next level. Show processes, but keep them
general. Show data stores at this level.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.2 Steps in Developing Data Flow
Diagrams (2 of 2)
4. Create a child diagram for each of the processes in Diagram 0.
5. Check for errors and make sure the labels you assign to each
process and data flow are meaningful.
6. Develop a physical data flow diagram from the logical data flow
diagram. Distinguish between manual and automated processes,
describe actual files and reports by name, and add controls to
indicate when processes are complete or errors occur.
7. Partition the physical data flow diagram by separating or grouping
parts of the diagram in order to facilitate programming and
implementation.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Creating the Context Diagram
• The highest level in a data flow diagram
• Contains only one process, representing the entire
system
• The process is given the number 0
• All external entities, as well as major data flows are
shown
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Basic Rules
• The data flow diagram must have one process
• Must not be any freestanding objects
• A process must have both an input and output data flow
• A data store must be connected to at least one process
• External entities should not be connected to one another
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.3 Context Diagram
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Drawing Diagram 0 (1 of 2)
• The explosion of the context diagram
• May include up to nine processes
• Each process is numbered
• Major data stores and all external entities are included
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Drawing Diagram 0 (2 of 2)
• Start with the data flow from an entity on the input side
• Work backward from an output data flow
• Examine the data flow to or from a data store
• Analyze a well-defined process
• Take note of any fuzzy areas
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.3 Note Greater Detail in
Diagram 0
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Example
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Online shopping system
Context Diagram-Level0
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
What about Level 1
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
What about Diagram 0
Process 1 (Customer Order Processing): This process
handles the customer's order.
Process 2 (Inventory Management): This process manages
the inventory and updates product availability.
Process 3 (Payment Processing): Handles the customer's
payment.
Process 4 (Order Confirmation): This process confirms the
customer's order and sends an order confirmation to the
customer.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Flow Diagram Levels
• Data flow diagrams are built in layers
• The top level is the context level
• Each process may explode to a lower level
• The lower level diagram number is the same as the
parent process number
• Processes that do not create a child diagram are called
primitive
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Creating Child Diagrams (1 of 2)
• Each process on diagram 0 may be exploded to create a
child diagram
• A child diagram cannot produce output or receive input
that the parent process does not also produce or receive
• The child process is given the same number as the
parent process
– Process 3 would explode to Diagram 3
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Creating Child Diagrams (2 of 2)
• Entities are usually not shown on the child diagrams
below Diagram 0
• If the parent process has data flow connecting to a data
store, the child diagram may include the data store as
well
• When a process is not exploded, it is called a primitive
process
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.4 Differences Between the Parent
Diagram (Above) and the Child Diagram (Below)
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Flow Diagrams Error Summary (1 of 2)
• Forgetting to include a data flow or pointing an arrow in
the wrong direction
• Connecting data stores and external entities directly to
each other
• Incorrectly labeling processes or data flow
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Data Flow Diagrams Error Summary (2 of 2)
• Including more than nine processes on a data flow
diagram
• Omitting data flow
• Creating unbalanced decomposition (or explosion) in
child diagrams
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.5 Typical Errors That Can Occur
in a Data Flow Diagram
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Logical and Physical Data Flow
Diagrams (1 of 2)
• Logical
– Focuses on the business and how the business
operates
– Not concerned with how the system will be
constructed
– Describes the business events that take place and
the data required and produced by each event
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Logical and Physical Data Flow
Diagrams (2 of 2)
• Physical
– Shows how the system will be implemented
– Depicts the system
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.7 Features Common of Logical
and Physical Data Flow Diagrams
Design Feature Logical Physical
What the model depicts. How the business How the system will be implemented (or
operates. how the current system operates).
What the processes Business activities. Programs, program modules, and manual
represent. procedures.
What the data stores Collections of data Physical files and databases, manual
represent. regardless of how the files.
data are stored.
Type of data stores. Show data stores Master files, transition files. Any
representing permanent processes that operate at two different
data collections. times must be connected by a data store.
System controls. Show business controls. Show controls for validating input data, for
obtaining a record (record found status),
for ensuring successful completion of a
process, and for system security
(example: journal records).
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.8 The Progression of Models
from Logical to Physical
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.9 Logical Data Flow Diagram
Example
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Developing Logical Data Flow Diagrams
• Better communication with users
• More stable systems
• Better understanding of the business by analysts
• Flexibility and maintenance
• Elimination of redundancy and easier creation of the
physical model
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Developing Physical Data Flow Diagrams
• Clarifying which processes are performed by humans and
which are automated
• Describing processes in more detail
• Sequencing processes that have to be done in a
particular order
• Identifying temporary data stores
• Specifying actual names of files and printouts
• Adding controls to ensure the processes are done
properly
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.10 Physical Data Flow Diagrams Contain Many
Items Not Found in Logical Data Flow Diagrams
Contents of Physical Data Flow Diagrams
• Manual processes
• Processes for adding, deleting, changing, and updating records
• Data entry and verifying processes
• Validation processes for ensuring accurate data input
• Sequencing processes to rearrange the order of records
• Processes to produce every unique system output
• Intermediate data stores
• Actual file names used to store data
• Controls to signify completion of tasks or error conditions
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Example
7.4 Realize all of the steps it takes
to develop a D F D by studying an
example from start to finish.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Context Diagram
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Diagram 0
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Level 1- Process1
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Level 1- Process3
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Physical DFD
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
CRUD Matrix
• Physical data flow diagrams include processes for
adding, reading, changing, and deleting records.
• The acronym CRUD is often used for
– Create
– Read
– Update
– Delete
• These are the activities that must be present in a system
for each master file
• A CRUD matrix is a tool to represent where each of these
processes occurs in a system
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.11 CRUD Matrix
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Event Modeling and Data Flow Diagrams
• An input flow from an external entity is sometimes called
a trigger because it starts the activities of a process
• Events cause the system to do something and act as a
trigger to the system
• An approach to creating physical data flow diagrams is to
create a data flow diagram fragment for each unique
system event
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Event Response Tables
• An event table is used to create a data flow diagram by
analyzing each event and the data used and produced by
the event
• Every row in an event table represents a data flow
diagram fragment and is used to create a single process
on a data flow diagram
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Figure 7.12 An Event Response Table for
an Internet Storefront
Event Source Trigger Activity Response Destination
Customer logs Customer Customer number Find customer record and Welcome web Customer
on and password verify password. page
Send Welcome web page
Customer Customer Item information Find item price and quantity Item Response Customer
browses items available. web page
at Web Send Item Response web
storefront page.
Customer Customer Item purchase (item Store data on Order Detail Items Customer
places item into number and Record. Calculate shipping Purchased web
shopping quantity) cost using shipping tables. page
basket at Web Update customer total.
storefront Update item quantity on
hand.
blank
Customer Customer Clicks “Check Out” Display Customer Verification web
checks out button on web page Order web page. page
Obtain Customer Credit card Verify credit card amount Credit card data Credit card
customer information with credit card company. Customer company
Payment Send. feedback Customer
blank blank
Send customer Temporal, hourly Send customer an email Customer
email confirming
shipment.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Use Cases and Data Flow Diagrams
• A use case is another approach used to develop a data
flow diagram.
• Each use case defines one activity and its trigger, input,
and output
• A use case is used to create a data flow diagram by
providing a framework for obtaining processes, input,
output, and data stores required for user activities.
• Allows the analyst to work with users to understand the
nature of the processes and activities and then create a
single data flow diagram fragment
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
© 2005 Pearson Prentice Hall Kendall & Kendall 7-54
Use Case
The major sections of a use case are:
–Use case name.
–Description.
–Trigger.
–Trigger type.
–Input name and source.
–Output name and destination.
–Steps performed.
–Information required for each step.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
© 2005 Pearson Prentice Hall Kendall & Kendall 7-55
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Partitioning Data Flow Diagrams
• Partitioning is the process of examining a data flow
diagram and determining how it should be divided into
collections of manual procedures and computer programs
• A dashed line is drawn around a process or group of
processes that should be placed in a single computer
program
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Reasons for Partitioning
• Different user groups
• Timing
• Similar tasks
• Efficiency
• Consistency of data
• Security
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
© 2005 Pearson Prentice Hall Kendall & Kendall 7-58
Reasons for Partitioning
•The reasons for partitioning a data flow
diagram into separate computer programs
are:
–Different user groups should have
different programs.
–Processes that execute at different times
must be in separate programs.
–Processes may be separated into
different programs for security.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
© 2005 Pearson Prentice Hall Kendall & Kendall 7-59
Reasons for Partitioning (Continued)
•Similar tasks may be included in the same
program.
•Several batch processes may be included in the
same program for efficiency.
If the data flow into and out of a process is entirely computer information, the process is called
a batch process. Batch processes do not require any human intervention
•Several processes may be included in the same
program or job stream for consistency of data.
related programs that are run in a prescribed order. The output of one program is the input to the
next program and so on.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Partitioning Websites
• Improves the way humans use the site
• Improves speed of processing
• Ease of maintaining the site
• Keep the transaction secure
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Communicating Using Data Flow
Diagrams
• Use unexploded data flow diagrams early when
ascertaining information requirements
• Meaningful labels for all data components
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Summary (1 of 3)
• Data flow diagrams
– Structured analysis and design tools that allow the
analyst to comprehend the system and subsystems
visually as a set of interrelated data flows
• DFD symbols
– Rounded rectangle
– Double square
– An arrow
– Open-ended rectangle
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Summary (2 of 3)
• Creating the logical DFD
– Context-level data flow diagram
– Level 0 logical data flow diagram
– Child diagrams
• Creating the physical DFD
– Create from the logical data flow diagram
– Partitioned to facilitate programming
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Summary (3 of 3)
• Partitioning data flow diagrams
– Whether processes are performed by different user
groups
– Processes execute at the same time
– Processes perform similar tasks
– Batch processes can be combined for efficiency of
data
– Processes may be partitioned into different programs
for security reasons
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved
Copyright
This work is protected by United States copyright laws and is
provided solely for the use of instructors in teaching their
courses and assessing student learning. Dissemination or sale of
any part of this work (including on the World Wide Web) will
destroy the integrity of the work and is not permitted. The work
and materials from it should never be made available to students
except by instructors using the accompanying text in their
classes. All recipients of this work are expected to abide by these
restrictions and to honor the intended pedagogical purposes and
the needs of other instructors who rely on these materials.
Copyright © 2024, 2019, 2014 Pearson Education, Inc. All Rights Reserved