What Is A Data Flow Diagram (DFD) ?
What Is A Data Flow Diagram (DFD) ?
Notations
1. External Entity is an external system that sends
or receives data, communicating with the system
being diagrammed. They are the source and
destinations of information entering or leaving
the system.
DFD is not only for those studying information They might be an outside organization, a person, a
technology. It could also be defined by a business analyst computer system, or a business system. They are
(Volodymer, 2019). also known as terminators, sources, and sinks or
actors.
In Business Analysis
2. Process refers to any processes that change the
DFD is used for the assessment of existing and projected data, producing an output. Processes may include
systems and its elements. Diagramming provides a useful computations, sort data based on logic, or direct
toolset for exposing possible weaknesses and structural the flows based on business rules.
flaws.
A short label is added to describe the process, such
In Software Development as “Submit payment.”
DFD is used to explain and visualize the projects' 3. Datastore are files or repositories that hold
requirements — from the business perspective and a information for later use, such as database tables
technical point of view. This feature allows hatching or a form. Each datastore has a simple label such
through and through step by step plan for the as “Orders.”
development of each element. 4. Data flow is the route that data takes between
Types of DFD the external entities, processes, and data stores.
Data flows show the interface between the other
Ed Yourdon and Larry Constantine conceptualized the components and is shown with arrows, typically
DFD, that is why we have a version of Yourdon DFD. The labeled with a short data-name such as “Billing
other version of the DFD is the Gane and Sarson, as details.”
popularized by Tome DeMarco, Chris Gane, and Trish
Sarson. It became more popular in business analysis
Rules of DFD 3.1.1: DFD Levels
1. Each process should have at least one input and DFD Levels
output.
in DFD levels, we subdivide the context in such a way
2. Each data store should have at least one data
that we arrive at a more specific breakdown.
flow in, and one data flow out.
3. Data stored in a system must go through a A. Context Diagram
process.
The context diagram is used to establish the context of
4. All processes in a DFD go to another process or a
the boundaries of the system being modeled. The
data store.
context diagram shows the inside and outside of the
system and the system's relationship with these external
entities.
A context diagram is also called level 0 or the
fundamental diagram, presents the entire software
requirements as a single process with input and output
from the external entities.
B. Diagram 0 DFD
Diagram 0 DFD is the decomposition of the context
diagram. It usually contains the modules of the system to
portray the data movement among modules. Basic
processes and sources of information can also be seen in
level.
dfd. However, this is seldom to happen. Should this be
required, the numbering will no longer be 1, 2, …,
n instead it already follows the numbering of its parent
such as 1.1, 1.2, …, 1.n. We call this as derived number
form the parent.
Lastname = {AlphaCharacters}
AlphaCharacter = /*Any alphabet characters*/
Given the example above regarding “CustomerName” 3.3: Structured English
CASE(product code)
Product code = 1 : discount = 5%
Product code = 2 : discount = 7%
None of the above : discount = 0%
END CASE
Example
If condition
Then
Since structured English specifically describes the
{group of statements} process in detail, another way of writing it is using
Else flowcharts. Check the module on how to use the
{group of statements}
End if flowcharts.
Summary
Example for updating inventory with combined rules
Structured English is purely native English in sentence
For each item accepted record do form. Some of its keywords are native in a pseudocode
{ however structured English cannot be a pseudocode.
search inventory file using item code
If successful The number one rule when writing down structured
Then {update retrieved inventory record; English is it must be concise; it cannot be ambiguous.
Write updated record in inventory file
using accepted record} 3.4: Decision Tree
Else {create new record in inventory file;
Enter accepted record in inventory file Decision Tree
}
End if A decision tree is a map of the possible outcomes of a
}
series of related choices. It allows an individual or
End for
organization to weigh possible actions against one
5. Indent blocks of statement to show their another based on their costs, probabilities, and benefits.
hierarchy (nesting) clearly They can be used either to drive informal discussion or
to map out an algorithm that predicts the best choice
6. When words or phrases have been defined in a mathematically (What is a Decision Tree Diagram, 2020).
data dictionary, underline those words or phrases
Trees are useful when there are many decisions that
needs to map out for better analysis. Although decision
tree derives its name from natural trees, decision trees
are most often drawn on their side., with the root of the
tree on the left side of the paper; from there, the tree
branches out to the right. Unlike the decision tree used
in management science, the analyst’s tree does not
contain probabilities and outcomes. In systems analysis, How to draw a decision tree?
trees are used mainly for identifying and organizing 1. Decision Trees
conditions and action in a completely structure decision
process (Drawing Decision Trees, n.d.). Draw a small box to represent this point, then draw a
line from the box to the right for each possible solution
or action. Do not forget to put a label.
2. Add chance and decision nodes
▪ If another decision is necessary,
draw another box
▪ If the outcome is uncertain, draw a
circle (circles represent chance
nodes)
▪ If the problem is solved, leave it
blank
3. Continue to expand until every
line reaches an endpoint
The example is symmetrical and each action at the end
are unique. A tree does not need to be symmetrical. You If there are no more choices to be made or chance
might also find identical actions appear more than once. outcomes to consider, then assign a value to each
possible outcome. It could be an abstract score or a
Decision tree symbols
financial value. Add triangles to signify endpoint.
Reminder: the following symbols are taken from
Lucidchart (What is a Decision Tree Diagram, 2020) a
free web application for various types of diagrams as
also supported by other CASE tools (Freeman, 2019) and
(Decision trees, 2020)