Chapter 9: Data Flow Diagrams

S
Y
S
T
E
M
S
D
E
S
I
G
N
A
N
A
L
Y
S
I
S
Chapter 9
Data Flow Diagrams
Jerry Post
Copyright © 1997
1
S
A Systems Approach
Y
S  Systems
 Input, Process, Output
T
 Divide and Conquer
E
 Goals and Objectives
Basic Systems
M
 Control and Feedback
S
D
E
S
I
G
N
 Diagramming Systems
 Common Systems
Problems
Input
Process
Output
 System models
 Physical
 Process re-engineering
 Abstract/logical
 Data flow diagram
 Existing system
 New/proposed system
2
S
Y
S
T
E
M
S
D
E
S
I
G
N
Data Flow Diagram Objects
 External Entity
 Objects we cannot change.
 We exchange data
 Nouns
External Entity
 Customer, Vendor, Investor
 Process
 Activities that alter data
 Must have input and output
 Verbs
Process
Data Store (file)
 Collect, Modify, Delete
 Data Store
 Storage for data
 File, database, paper …
Data Flow
Feedback and Control Data
 Product catalog, credit file
 Data Flow
 Inputs and Outputs
 Must always be labeled
3
S
Y
S
T
E
M
S
D
E
S
I
G
N
Goals and Feedback
Input
Process
Output
Control
Goal
Feedback
Analyze
 Every system must have a goal.
 Some processes and data flows are feedback and control loops.
4
S
Context Diagram: The Zoo
Y
S  Context Diagram
T
 Title page
 Describe the main system.
E
 One process.
M
 All external entities.
Requests
Members
S
 Primary data flows.
D
E
S
I
G
N
Donors
Visitors
Suppliers
& Comments
Money
The
Zoo
Education
Visitor Counts
Educational
Materials
Animal Feed
Invoices
Health Data
Baby
Animals
Other Zoos
Registration
Papers
Management
5
S
Subsystems
Y
S  Each diagram can explode to a new
subsystem to show detail.
T
E  Top down
 Work from general to specific.
M
 Start with the main problem.
S
 Identify all external agents.
D
E
S
I
G
N
 Bottom up
 Identify small problems.
 Extend to other areas.
Level 1
 As diagram gets big, change detail. Diagram
Context
Diagram
Level 0
Diagram
Level 1
Diagram
Level 1
Diagram
 More than 7-9 processes.
 Split and add a higher level.
6
S
Primary Subsystems: The Zoo
Y
S  Display the primary
subsystems.
T
 Look for major processes.
E
 Corporation by function/
M
division.
Donor &
S
 Focus on data.
Public
 Level 0
D
E
S
I
G
N
 Number each process (any
order).
 Include all data flows from
higher level.
Produce
Management
Reports
Relations
Animal
Care
Manage
Human
Resources
Manage
Facilities
7
S
Y
S
T
E
M
S
Level 0: The Zoo
zoo booster
members
public/
zoo visitors
donors
PR data
receipts
etc.
receipts
money &
requests
1
donor and
public relations
other zoos
& breeders
public requests
needs & budgets
4
animal
care
animal requests
health research
D
E
S
I
G
N
2
produce
mgt. reports
emp. reports
hours,
benefits,
etc.
employees
Management
reports
management
3
manage
human
resources
specialist
request
maintenance
schedule
employee
schedule
pay data, requests
certification
agencies
maint. &
building
request
5
manage
facilities
Usage
reports
8
S
Y
S
T
E
M
S
D
E
S
I
G
N
Level 1: The Zoo
public/
zoo visitors
receipts
money &
comments
1.1
produce PR
& outreach
programs
PR data
receipts
etc.
donors
money &
requests
1.2
handle
donor
requests
zoo booster
newsletter members
notices, etc.
money &
suggestions
1.3
org. booster
services &
meetings
donor
booster
needs &
requests
money, data,
donor
requests
plans
visitor statistics lists
public requests
1.4
needs &
track needs
plans
1.5
and donor
produce
programs
needs & budgets
accounting expenses & budget
animal
& reports
public requests
accounting
needs
reports
adopt an animal
files
9
S
Y
S
T
E
M
S
D
E
S
I
G
N
System Problems
warranty registration
Manufacturer
purchase orders
Invoices
orders
Sell Products
A process cannot
invent data. It
must have a data
flow coming in to
it.
Customer
sales receipt
Store reports
weekly report
Do not include
data flows
between external
entities. Drop
the line or make
one of the
entities internal.
Save Reports
A process
cannot be a
black hole--data
must flow out of
the process.
Maybe it should
be a file instead.
Modify Reports
daily sales
Inventory list
10
S
Y
S
T
E
M
S
D
E
S
I
G
N
Problem Boundary
Visitors
Zoo system boundary
Boundaries
Distribute
Educational
Materials
Create
Educational
Materials
Problem Boundary
Problem: Shortages of Educational Materials
11
S
Y
S
T
E
M
S
D
E
S
I
G
N
Common System Problems




Defective subsystems
Wrong Data
Errors in Data
Missing feedback and
control
 Not responding to
environment
Receive
Orders
Check
Customer
Credit
Check
Orders
for Errors
12
S
Y
S
T
E
M
S
D
E
S
I
G
N
Example Use: Finding Causes
zoo booster
members
donors
PR data
receipts
etc.
money &
requests
1.2
Handle
donor
requests
donor lists
money &
suggestions
needs &
needs & plans
plans
newsletter,
notices,
etc.
1.3
Booster
services &
meetings
booster requests
public requests
1.4
donor requests Track needs
& donor
programs
expenses & budget
animal needs
& plans
Problems
Some animal budgets have excess $
Some animal budgets have no money
needs & budgets
donor list &
animal needs
adopt an animal
files
13
S
Common Errors
Y
 Wrong labels
S  Genesis
 Process generates data
 You do not understand
T
without input.
system.
E
 Readers will be misled.
M  Black hole
 Data flow is omitted.
 Process receives data and
S
has no output.
 Informal flows.
D
E
S
I
G
N
 No data flow between
entities.
 Need process.
 Cannot connect entity to
data store.
 Must process it first.
 Diagram is too cluttered.
 Split and add new level.
 Unbalanced flows.
 Data from prior levels must
be listed on lower levels.
 Can split to more detail.
14
S
Examples
Y
 Class/groups
S  Book, p. 244
 Proposed physical system.
 University bookstore-T
textbooks.
E  Book, p. 248+
 Fast food restaurant.
 Video store
M
 Car dealership
S
 Assignments
D
E
S
I
G
N
 Physical process for you job
(any job).
15