Professional Documents
Culture Documents
DATA FLOW
DIAGRAM
PART 2
Creating Data Flow Diagrams
Creating DFDs is a highly iterative process of gradual
refinement.
General steps:
1. Create a preliminary Context Diagram
2. Identify Use Cases, i.e. the ways in which users
most commonly use the system
3. Create DFD fragments for each use case
4. Create a Level 0 diagram from fragments
5. Decompose to Level 1,2,…
6. Go to step 1 and revise as necessary
7. Validate DFDs with users.
Context Diagram
Top-level view of IS
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
Example: Order system that a company uses to
enter orders and apply payments against a
customer’s balance
DFD Rules—Context Diagram
One process, numbered 0.
Sources and sinks (external entities) as
squares
Main data flows depicted
No internal data stores are shown
They are inside the system
External data stores are shown as external entities
How do you tell the difference between an internal
and external data store?
Context Order
CUSTOMER WAREHOUSE
Diagram of
Order
System Order
Reject
Picking
List
Notice
Payment Invoice
Completed
0 Order
Order
System
Bank Cash
Commission Receipts
Deposit
Entry
SALES
ACCOUNTING BANK
REP
Level-0 DFD
Shows the system’s major processes, data flows,
and data stores at a high level of abstraction
When the Context Diagram is expanded into DFD
level-0, all the connections that flow into and out of
process 0 needs to be retained.
Order
CUSTOMER WAREHOUSE
Context
Diagram of
Order Order
Picking
Reject
System Notice
List
Payment Invoice
0
Completed
Order
Order
System
Bank Cash
Commission Receipts
Deposit
Entry
SALES
ACCOUNTING BANK
REP
Level-0 CUSTOMER
Order Picking List
WAREHOUSE
DFD of 1.0
Order
Fill
System Order Order
Reject
Notice
Invoice
2.0
Payment
Create Completed
Invoice
Invoice Order
Accounts
D1 Receivable
Invoice
Payment 3.0
Detail
Detail
Apply
Payment
SALES
BANK ACCOUNTING
REP
Lower-Level Diagrams
Functional Decomposition
Balancing
Decomposition of DFDs
Functional decomposition
An iterative process of breaking a system description
down into finer and finer detail
Uses a series of increasingly detailed DFDs to
describe an IS
Act of going from one single system to many
component processes
Repetitive procedure
Lowest level is called a primitive DFD
Level-N Diagrams
A DFD that is the result of n nested decompositions of
a series of subprocesses from a process on a level-0
diagram
Balancing DFDs
When decomposing a DFD, you must conserve
inputs to and outputs from a process at the next
level of decomposition
Ensures that the input and output data flows of
the parent DFD are maintained on the child DFD
This is called balancing
Example: Hoosier Burgers
InFigure 1, notice that there is one input to the
system, the customer order
Three outputs:
Customer receipt
Food order
Management reports
Figure 1
Context diagram of Hoosier Burger’s Food ordering
system
Balancing DFDs Example
(Continued)
C
SOURCE 2
2.0 B
SINK
Payment x.1
Disaggregated
data flow
Coupon x.2
Advanced Rule for DFD
A composite DF on 1 level can be split into component
DF as the next level, but no new data can be added n all
data in the composite must be accounted for in 1 or
more subfollows
The inputs to a process must b sufficient to produce the
outputs from the process
At the lowest level of DFD, new data flows may be added
to represent data that r transmitted under exceptional
condition, these data flows typically represent error
message
To avoid having data flow lines cross each other, u may
repeat data strores or sources/sinks on a DFD. Use an
additional symbol, like a double line on the middle
vertical line of data strore symbol, or a diagonal line in a
corner of a sink/source square to indicate a repeated
symbol
Strategies for Developing DFDs
Top-down strategy
Create the high-level diagrams (Context
Diagram), then low-level diagrams (Level-0
diagram), and so on
Bottom-up strategy
Create the low-level diagrams, then higher-
level diagrams
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, such as inventory
reports for Accounting.
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
Order
Customer In-Stock Request
Warehouse Order Data
1.0
Accounting Status Data
Status Message
Processes Shipping Order 2.0
1.0 Check Status Order Data
2.0 Issue Status Messages Invoice
Shipping Confirmation 3.0
3.0 Generate Shipping Order Payment
4.0 Manage Accounts Accounting Data
Receivable Accounts Receivable Data
Order Data 4.0
5.0 Produce Reports
Inventory Reports
Data Stores
D1 Pending Orders
D2 Accounts Receivable 5.0
Context Diagram of Order System
Order
CUSTOMER In-Stock WAREHOUSE
Payment Request
Status 0 Shipping
Message Order
Order
Invoice System Shipping Confirmation
Inventory
Reports
ACCOUNTING
Level-0 of CUSTOMER
Order In-Stock Request
WAREHOUSE
Order 1.0
Status
System 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
Reports
ACCOUNTING
HOMEWORK (group)
Based on the use cases, draw your project
data flow in:
Context diagram
Level 0-DFD
If neccesary, decompose the DFD to the next
level DFDs
Put them on your SRS’s document as the
attachment