se dfd 160412
TRANSCRIPT
DFD: Data Flow Diagram
by:Bharat V. Chawda
Computer Engineering Department,BBIT, VVNagar
Overview A Concept Primitive Symbols Context Diagram Level 1 Diagram Decomposition Example Do’s and Don’ts Shortcomings
A Concept: Simple Example RMS: Root Mean Square
RMS Calculator
0User I/P Data
rms
Validate input
1Compute
RMS
2Valid Data Display
result
3rms rms
Further Decomposition…
(What is RMS?)
I/P Data
A Concept: “A graphical representation of the flow
of data through an information system, modelling its process aspects.”
Shows: What data is Input; Who generates it: Source What data is O/P; Who receives it:
Destination/Sink What processing is performed on data; by
whom: Proc Where data come from and go to: Data Flow What data is stored; where: Data Store
Does not show: Timing of processes: Executed in parallel or
sequence Different from Flowchart (Why?)
A Concept: Why Popular?
Easy to understand by technical and non-technical persons
Can provide high level system overview; with boundaries and connections to other systems
Can provide a detailed representation of system components
Provides hierarchy of DFDs Top level: Most abstract: Context Diagram /
Level 0 D. Next level: Level 1 Diagram Further levels: Level 2, 3, 4…
Primitive Symbols for DFD Process / Function: Circle,
Rounded Rectangle Actions performed on data:
Transformed, Stored, or Distributed
Annotated with number and name of function
Name starts with verb (Except context level diagram)
Data Flow: Directed arc, Arrow
Single piece of data or logical collection of data
Annotated with name/description of data
Primitive Symbols for DFD External Entity: Rectangle
Source and/or Sink Origin and/or Destination of the
data External, cos outside the system Annotated with name (Noun)
Data Store: Open rectangle, parallel lines
Data structure, File, Table, Database
Annotated with corresponding names of data items
Context or Level 0 Diagram Concept: Main steps:Identify where data is captured from:
SourceIdentify where data is distributed to:
DestinationDescribe the overall processMap these out in a diagram using the
correct symbolsLink them with data flows that are
labelled
Level 1 Diagram Concept: Main steps: Identify and draw the processes that make up the
Level 0 process: High level functions Allocate descriptions to these processes Lay out the sources/sinks and data flows from
the Level 0 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links: Data flows[Note: It should be balanced. (What is balanced
DFD?)]
Decomposition/Level ‘n’ Diagram Concept: Main steps: Identify and draw the processes that make up
the Level n-1 process Allocate descriptions to these processes Lay out all the data flows from the Level n-1
diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links: Data flows
Ex: Food Order System Description Customer provides order. System produces receipt by referring order and
gives to customer. Order is also sent to kitchen department. Based on order, “Goods sold” and “Inventory” files
are updated. Reports for the top management regarding sales,
inventory depletion (income, expenditure) are generated.
Context or Level 0 Diagram Main steps:Identify where data is captured
fromIdentify where data is distributed toDescribe the overall processMap these out in a diagram using the
correct symbolsLink them with data flows that are
labelled
Context or Level 0 Diagram Main steps:Identify where data is captured fromIdentify where data is distributed
toDescribe the overall processMap these out in a diagram using the
correct symbolsLink them with data flows that are
labelled
Context or Level 0 Diagram Main steps:Identify where data is captured fromIdentify where data is distributed toDescribe the overall processMap these out in a diagram using
the correct symbolsLink them with data flows that are
labelled
Context or Level 0 Diagram
Food Ordering System
0
CUSTOMER KITCHEN
RESTAURANT MANAGER
Context or Level 0 Diagram Main steps:Identify where data is captured fromIdentify where data is distributed toDescribe the overall processMap these out in a diagram using the
correct symbolsLink them with data flows that
are labelled
Context or Level 0 Diagram
Food Ordering System
0
CUSTOMER KITCHEN
RESTAURANT MANAGER
Receipt
Food Order
Management Reports
Customer Order
Level 1 Diagram Main steps: Identify and draw the processes that make
up the Level 0 process Allocate descriptions to these processes Lay out the sources/sinks and data flows from the
Level 0 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links
Level 1 Diagram1.0
Receive and transform Customer
Food Order
3.0Update
Inventory file
2.0Update
Goods Soldfile
4.0
Produce Management
Reports
Level 1 Diagram Main steps: Identify and draw the processes that make up the
Level 0 process Allocate descriptions to these processes Lay out the sources/sinks and data flows
from the Level 0 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links
Level 1 Diagram1.0
Receive and transform Customer
Food Order
3.0Update
Inventory file
2.0Update
Goods Soldfile
4.0
Produce Management
Reports
Receipt
Customer OrderCUSTOMER KITCHEN
Food Order
RESTAURANT MANAGER
ManagementReports
Level 1 Diagram Main steps: Identify and draw the processes that make up the
Level 0 process Allocate descriptions to these processes Lay out the sources/sinks and data flows from the
Level 0 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links
Level 1 Diagram1.0
Receive and transform Customer
Food Order
3.0Update
Inventory file
2.0Update
Goods Soldfile
4.0
Produce Management
Reports
Receipt
Customer OrderCUSTOMER KITCHEN
Food Order
RESTAURANT MANAGER
ManagementReports
D1 Goods Sold File D2 Inventory File
Level 1 Diagram Main steps: Identify and draw the processes that make up the
Level 0 process Allocate descriptions to these processes Lay out the sources/sinks and data flows from the
Level 0 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links
Level 1 Diagram1.0
Receive and transform Customer
Food Order
3.0Update
Inventory file
2.0Update
Goods Soldfile
4.0
Produce Management
Reports
Receipt
Customer OrderCUSTOMER KITCHEN
Food Order
RESTAURANT MANAGER
ManagementReports
Goods Sold
Inventory Data
Goods Sold Data
Inventory Data
Daily Goods Sold Amount Daily Inventory Depletion Amount
D1 Goods Sold File D2 Inventory File
Level ‘n’ Diagram Main steps: Identify and draw the processes that make up the
Level n-1 process Allocate descriptions to these processes Lay out the sources/sinks and data flows from the
Level n-1 diagram Draw in any data stores used in the process Link the new processes and data stores with
named data links
Level 2 Diagram4.0
Produce Management
ReportsManagement
Reports
Daily Goods Sold Amount Daily Inventory Depletion Amount
4.1
Access Goods Sold and
Inventory Data
4.2Aggregate
Goods Sold and Inventory
Data
4.3
Prepare Management
Reports
Daily Goods Sold Amount
Daily Inventory Depletion Amount
Goods Sold data
Inventory Data
Aggregated Data
Management Reports
Level 3 Diagram4.3
Prepare Management
Reports
Aggregated Data
Management Reports
4.3.1
Format Management
Reports
Aggregated Data
4.3.2
Print Management
Reports
Formatted Data
ManagementReports
Do’s and Don’tsProcesses must have both Inputs and
OutputsNo process can have only Inputs or only
Outputs
Shortcomings of DFD Can be Imprecise
May not capture the entire functionality What happens if inputs are wrong; if book not
found Control aspects not defined
Order: inputs are consumed, output r produced: X
Order: different processes are executed: X Decomposition: Subjective
How to arrive at successive level; Up to how much level: subjective; depends upon analyst
Same problem Multiple DFDs possible Decomposition: No specific
guidance