What is a data flow diagram?
DFD is the abbreviation for Data Flow Diagram. The DFD is also called
as a data flow graph or bubble chart. The flow of data of a system or a
process is represented by DFD. It uses defined symbols like rectangles,
circles and arrows, plus short text labels, to show data inputs, outputs,
storage points and the routes between each destination. It also gives
insight into the inputs and outputs of each entity and the process itself.
Data Flow diagrams are very popular because they help us to visualize the
major steps and data involved in software-system processes. Data Flow
Diagram represent detailed and well explained diagram of system
components. Therefore all names should be unique. DFDs can also be
used for the visualization of data processing (structured design) and show
what kind of information will be input to and output from the system. This
makes it easier to refer to elements in the DFD.
In addition, Data Flow Diagrams can be understood by both technical or
nontechnical person because they are very easy to understand. Data Flow
Diagram helps us to understand the functioning and the limits of a
system.
History of the DFD
Data flow diagrams were popularized in the late 1970s, arising from the
book Structured Design, by computing pioneers Ed Yourdon and Larry
Constantine. They based it on the “data flow graph” computation models
by David Martin and Gerald Estrin. DFDs were usually used to show data
flow in a computer system, although they could in theory be applied to
business process modeling. Therefore it is more popular in business
circles, as it was applied to business analysis.
Also contributing were two related concepts:
Object Oriented Analysis and Design (OOAD), put forth by
Yourdon and Peter Coad to analyze and design an application or
system.
Structured Systems Analysis and Design Method (SSADM), a
waterfall method to analyze and design information systems. This
rigorous documentation approach contrasts with modern agile
approaches such as Scrum and Dynamic Systems Development
Method (DSDM.)
Symbols and Notations Used in DFDs
There are three common systems of symbols are named their creators:
Yourdon and Coad
Yourdon and DeMarco
Gane and Sarson
One main difference in their symbols is that Yourdon-Coad and Yourdon-
DeMarco use circles for processes, while Gane and Sarson use rectangles
with rounded corners, sometimes called lozenges. There are other symbol
variations in use as well, so the important thing to keep in mind is to be
clear and consistent in the shapes and notations you use to communicate
and collaborate with others.
Using any convention’s DFD rules or guidelines, the symbols depict the
four components of data flow diagrams.
1. External entity: The Terminator is an external entity that stands
outside of the system and communicates with the system. In
addition it is not a part of the model system and is an external
entity. Modeled systems also communicate with terminator. They
are also known as terminators, sources and sinks or actors. They are
typically drawn on the edges of the diagram.
2. Process:Input to output transformation in a system takes place
because of process function. Any process that changes the data,
producing an output. It might perform computations, or sort data
based on logic, or direct the data flow based on business rules. A
short label is used to describe the process, such as “Submit
payment.”
3. Data store: A data store indicates that the data is stored which can
be used at a later stage or by the other processes in a different
order. Each data store receives a simple label, such as “Orders.”
4. Data flow: the route that data takes between the external entities,
processes and data stores. It portrays the interface between the
other components and is shown with arrows, typically labeled with a
short data name, like “Billing details.”
5. Source or Sink: Source or Sink is an external entity and acts as a
source of system inputs or sink of system outputs.
DFD levels and layers
A data flow diagram can dive into progressively more detail by using
levels and layers, zeroing in on a particular piece. DFD levels are
numbered 0, 1 or 2, and occasionally go to even Level 3 or beyond. The
necessary level of detail depends on the scope of what you are trying to
accomplish.
DFD Level 0 is also called a Context Diagram. It’s designed to be
an at-a-glance view, showing the system as a single high-level
process, with its relationship to external entities. It should be easily
understood by a wide audience, including stakeholders, business
analysts, data analysts and developers.
DFD Level 1 provides a more detailed breakout of pieces of the
Context Level Diagram. You will highlight the main functions carried
out by the system, as you break down the high-level process of the
Context Diagram into its subprocesses.
DFD Level 2 then goes one step deeper into parts of Level 1. It
may require more text to reach the necessary level of detail about
the system’s functioning.
DFD Levels 3, 4 and beyond is possible, but going beyond Level 3 is
uncommon. Doing so can create complexity that makes it difficult to
communicate, compare or model effectively.
Using DFD layers, the cascading levels can be nested directly in the
diagram, providing a cleaner look with easy access to the deeper dive.
Examples of Data Flow Diagrams