DFD - Data Flow Model
DFD - Data Flow Model
Figure:
Comparison of DeMarco and Yourdon and Gane and Sarson DFD symbol sets
DFD Symbols -Meanings
• A data store might contain data about customers, students,
customer orders, or supplier invoice.
Process:
A. No process can have only outputs. It would be making data from nothing (a
miracle). If an object has only outputs, then it must be a source.
B. No process can have only inputs (a black hole). If an object has only inputs, then it
must be a sink.
Data Store:
D. Data cannot move directly from one data store to another data store. Data must be
moved by a process.
E. Data cannot move directly from an outside source to a data store. Data must be
moved by a process that receives data from the source and places the data into the
data store.
Source/Sink:
H. Data cannot move directly from a source to a sink. It must be moved by a process
if the data are of any concern to our system. Otherwise, the data flow is not shown on
the DFD.
Data Flow:
J. A data flow has only one direction of flow between symbols. It may flow in both
directions between a process and a data store to show a read before an update. The
latter is usually indicated, however, by two separate arrows because these happen at
different times.
Rules Governing Data Flow Diagramming
K. A fork in a data flow means that exactly the same data goes from a common
location to two or more different processes, data stores, or sources/sinks (this usually
indicates different copies of the same data going to different locations).
L. A join in a data flow means that exactly the same data come from any of two or
more different processes, data stores, or sources/sinks to a common location.
M. A data flow cannot go directly back to the same process it leaves. There must be
at least one other process that handles the data flow, produces some other data flow,
and returns the original data flow to the beginning process.
P. A data flow has a noun phrase label. More than one data flow noun phrase can
appear on a single arrow as long as all of the flows on the same arrow move together
as one package.
Processes on DFDs can operate in parallel (at-the
same-time)