Data Flow Diagrams
Data Flow Diagrams
What is a DFD?
● One of the three major graphical modeling tools of structured analysis
The data flow diagram is a modeling tool that allows us to picture a system as a
network of functional processes, connected to one another by “pipelines” and
“holding tanks” of data.
● One of the modeling tools available to the systems analyst and that it provides
only one view of a system — the function-oriented view
2
Components of a Typical DFD
● The Process
● The Flow
● The Store
● The Terminator
3
The Process (a.k.a. Bubble / Function / Transformation)
4
The Flow
● Describes the movement of chunks, or packets of information from one part of
the system to another part
○ Represent data in motion
● Represented by an arrow into or out of a process
● Named flows: represents the meaning of data that moves along the flow
● Carries only one type of data
● Show direction: an arrowhead at either end of the flow (or both) indicates
whether data are moving into or out of a process (or doing both)
5
● Data moving along that flow will either travel to
another process (as an input) or to a store or to a
terminator
● Dataflows can diverge and converge
6
7
The flow doesn’t answer a lot of procedural questions
● Does the process explicitly ask for the input?
○ Does it prompt the user of an online system, indicating that it wants some input?
○ Do data packets move along the flow of their own volition, unasked for?
● Do data move along that flow when process wants to send them, or when
some other part of the system asks for the data?
● Multiple input flows and multiple output flows
○ In what sequence do the packets of data arrive?
○ In what sequence are the output packets generated?
○ Is there a one-to-one ratio between the input packets and the output packets?
■ does process Q require exactly one packet from input flows A, B, and C in order to
produce exactly one output packet for output flows X, Y, and Z? Or are there two As for
every three Bs?
8
The Store
Used to model a collection of data at rest
Name: the plural of the name of the data that are carried by flows into and out of
the store
Examples of stores: files, databases, data stored on punched cards, microfilm,
microfiche, or optical disk, or a variety of other electronic forms, 3-by-5 index cards
in a card box, names and addresses in an address book, several file folders in a
file cabinet
Variety of possible implementations of a store
9
10
Does the flow represent a single packet, multiple packets, portions of a packet, or portions of several
packets?
11
Page 16 yourdon + dfd
The store is passive: data will not travel from the store along the flow unless a
process explicitly asks for them
12