7
Using Dataflow Diagrams
Systems Analysis and Design, 8e
Kendall & Kendall
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall
Data Flow Diagrams
• Graphically characterize data processes
and flows in a business system.
• Depict:
• System inputs
• Processes
• Outputs
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-2
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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-3
Basic Symbols
• A double square for depict 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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-4
The Four Basic Symbols Used in Data Flow
Diagrams, Their Meanings, and Examples
(Figure 7.1)
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-5
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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-6
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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-7
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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-8
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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-9
Basic Rules
• 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.
• A data store must have at least one incoming
or one outgoing data flow
• External entities should not be connected to
one another.
#_External entity should not directly connected to data store
#_Data store should not directly connected to another data store
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-10
Rules for Using DFD Symbols
• Data Flow That Connects YES NO
A process to another process
A process to an external entity
A process to a data store
An external entity to another external entity
An external entity to a data store
A data store to another data store
Correct/Incorrect?
2.1
Payment Detail
D1 Accounts
Invoice Detail
Post Receivable
Payment
Correct/Incorrect?
1.0
Grade Detail Grade Report
Produce
Grade
Report
Correct/Incorrect?
2.0
Book
Flight
Fight
Request
Passengers
14
Correct/Incorrect?
D2 Accounts
Receivable
Invoice
Payment
Detail
Detail
3.0
Post
Payment
15
Correct/Incorrect?
Customer Payment
D1 Daily
Payments
Daily Payment
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-16
Correct/Incorrect?
1.0
Order
CUSTOMER Invoice
Verify
Order
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-17
Correct/Incorrect?
BANK
Bank
Deposit
2.0
Prepare
Deposit
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-18
Correct/Incorrect?
PAYROLL CUSTOMER CUSTOMER
DEPARTMENT
Paycheck
Payment Payment
EMPLOYEE 3.0
Accounts
Receivable
Apply
Payment
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-19
Correct/Incorrect?
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-20
Correct/Incorrect
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-21
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
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-22
Context Diagram (Figure 7.3)
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-23
Drawing Diagram 0
• 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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-24
Drawing Diagram 0 (Continued)
• Start with the data flow from an entity
on the input side.
• Work backwards 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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-25
Note Greater Detail in Diagram 0
(Figure 7.3)
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-26
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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-27
Creating Child Diagrams
• 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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-28
Creating Child Diagrams
(Continued)
• 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.
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-29
Differences between the Parent Diagram
(above) and the Child Diagram (below)
(Figure 7.4)
Kendall & Kendall Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 7-30
Exercise:
Precision Tools sells a line of high-quality woodworking
tools. When customers place orders on the company’s Web
site, the system checks to see if the items are in stock,
issues a status message to the customer, and generates a
shipping order to the warehouse, which fills the order.
When the order is shipped, the customer is billed. The
system also produces various reports.
• Draw a context diagram for the order system
• Draw DFD diagram 0 for the order system
Identify Entities, Process, Data Stores & Data
Flow
• Entities ◼ Data Flows
• Customer Order
• Warehouse In-Stock Request
1.0
• Accounting Order Data
• Processes Status Data
2.0
• 1.0 Check Status Status Message
• 2.0 Issue Status Messages Shipping Order
3.0
• 3.0 Generate Shipping Order Order Data
• 4.0 Manage Accounts Invoice
Receivable Shipping Confirmation
4.0
• 5.0 Produce Reports Payment
• Data Stores Accounting Data
• D1 Pending Orders Accounts Receivable Data
• D2 Accounts Receivable Order Data 5.0
Inventory Reports
Order
CUSTOMER In-Stock WAREHOUSE
Payment Request
Status 0 Shipping
Message Order
Order
Invoice System Shipping Confirmation
Inventory
Reports
Context ACCOUNTING
Diagram of
Order
System
Order In-Stock Request
CUSTOMER WAREHOUSE
1.0
Status
Message
Check Shipping
Status Data Status Order
Order
2.0 Data
Shipping 3.0
Confirmation Pending
Issue D1 Orders
Status
Messages Generate
Shipping
Order Data Order
Payment 4.0
Order Data
Invoice
Manage
Accounts
Receivable
5.0
Accounting Data Accounts Receivable Data
Produce
Accounts Reports
D2 Receivable
Inventory
Level-0 of Reports
Order System
ACCOUNTING