Data Flow Diagram –
Case Study
This
Case Study states the project background and describes Data Flow Diagram(DFD)
for following levels, as part of the requirement gathering process
- Define level 0 DFD, to capture data transfers between systems.
- Define level 1 DFD for major business processes for all input and output data for each processes, representing appropriate data stores
Project Background
NGO
Life is one of the largest Insurance Provider in US. NGO had set up a project
team to work on policy admin system, which involves complex data processes.
Policy Admin Is an integrated system, where data transformations happens
between their upstream and downstream applications on daily basis.
Caroline
– Client manager for the project
Chris –
Senior Business Analyst for the project
Problem Statement
Chris
is in the process of doing a comprehensive system assessment, understanding,
requirement analysis and gathering for their critical Policy Admin system,
which involves complex data processes.
At the
end of requirement analysis phase, Chris finds that, there are lot of data and
technical flaws in the system. Chris needs to prepare Data flow Diagram (DFD),
to explain the existing system issues
What
are the recommended activities that, Chris should perform with regards to DFD
preparation as part of system understanding and requirement gathering process?
Solution Approach
- Define level 0 (Context Level Diagram) DFD, to capture data transfer between systems.
- Define level 1 DFD for major business processes with all input and output data for each processes, representing appropriate data stores. During the definition,
o
Ensure
each process, data store have at least one data flowing into it and one coming
out of it and all data flows either starts or ends in a process
o
Ensure
every data item that appears on a DFD originates and is used somewhere within
the related DFDs
o
Ensure
no entity is allowed to access data store directly, either to read or update
o
Ensure
data processing happens before data transfer from one source to another source.
o
Ensure
data processing happens before data transfer from one source to another data
store and vice versa
o Ensure data processing happens before data transfer from one data store to another data store
o
Ensure
all data that is sent / received, stored, transformed or moved within the system and externally are captured clearly
LO Data Flow Diagram
Assume
that the different systems/data stores mentioned in the diagrams are part of
the enterprise which the Policy Admin system interacts with
Benefits
- DFD helps to identify system flaws, through clear understanding on each processes
- DFD aids process improvements in the system, by identifying existing system issues.
- It acts as an easy to understand analysis deliverable for stakeholders
- DFD depicts overall view with system boundaries and detailed representation of system components
- DFD helps to verify requirements by stakeholders
Data Flow Diagram Concepts
Data
Flow Diagram (DFD) is a flow modeling technique that shows how information
flows through a system – how it is input, processed, stored and output from the
system.
The
components in a DFD and their representations as per different notations are as
below;
Component
|
Description
|
Gane-Sarson
|
Yourdon
|
Entity
|
Provide
or receive data from the system
|
||
Process
|
Transform
data
|
||
Data
Store
|
Store
data within the
System
|
||
Data
Flow
|
Move
data from / to external entities / processes
|
- A Level 0 DFD (Context diagram) defines the system boundaries and shows the movement of data into and out of the system
- A Level 1 DFD shows the main processes within the project’s scope and the data that is required and produced by each process. Data Stores are depicted in Level 1 DFD.
- A DFD can be broken down into further levels, depending upon the complexity of the processes involved. This process is called DFD Leveling.
- Validation of DFDs is very important at each level. Below checklist of points can be used to make sure the DFD is consistent and correct.
- Each process must have at least one data flow going into it and one coming out of it.
- Every data store must have at least one data flow going into it and one coming out of it.
- All data flows must either start or end at a process
- Every data item that appears on a DFD must originate and be used somewhere within the related DFDs
- A process should be named as a verb and a data item as a noun
- No entity should be allowed direct access to data store, either to read to update
Representations
of some common errors in DFD:
Wrong
|
Right
|
Description
|
A
source or a sink cannot provide data to another source or sink without some
processing occurring
|
||
Data
cannot move directly from a source to a data store without being processed
|
||
Data
cannot move directly from a data store to a sink without being processed
|
||
Data
cannot move directly from one data store to another without being processed
|
Representations
of some common errors in DFD – Black Hole, Gray Hole and Miracles
Representations
of some common errors in DFD:
Did you
know that a DFD can aid in bringing about process improvements?
- The evaluation process of the DFD may point out a deficiency in the system or a situation in which users are not aware of how certain processes operate
- A brainstorming session with the below questions for evaluation can help identify issues / improvements in the system
- Are there processes that do not receive input / produce output – identify non-value adding processes
- Are there data stores that are never referenced – identify data stores which are dormant
- Is a process too busy – if a process is serving multiple purposes, it might need to be exploded further
- Is the inflow of data adequate / too much for the process – identify whether an interface needs improvement
- Is each process independent of other processes and dependent only on the data It receives as input – identify whether a process needs to be more loosely coupled
- Is the wait time for input too much for a process – identify steps to reduce the delays in input
- Is the processing time too much in any process – identify steps to improve the efficiency of processes
Advantages:
- Easy to understand.
- A useful analysis deliverable.
- Effective tool for communicating on the system to the stakeholders.
- Defines the system boundary and provides detailed representation of system components
- Aids in understanding system flaws and bringing about process improvements
Disadvantages:
- Preparing DFDs for large systems can be time consuming
- Physical considerations of the system are not included
Quiz
1. External
Entities in a data flow diagram are
o
A.
Source of input data only
ü B. Source of input data or destination of results
o C. Destination of results only
o D. Repository of data
2. A Data Flow Diagram (DFD) is composed of which elements?
o Data sources and destinations
o Data flows
o Transformation Processes
o Data stores
ü All of the listed options
3. Which among the below represents correct DFD notation, matching to the text given within?
ü B. Source of input data or destination of results
o C. Destination of results only
o D. Repository of data
2. A Data Flow Diagram (DFD) is composed of which elements?
o Data sources and destinations
o Data flows
o Transformation Processes
o Data stores
ü All of the listed options
3. Which among the below represents correct DFD notation, matching to the text given within?
ü A and B
o
B.
B and C
o
C.
A,B and D
o
D.
B,C and D
4. A DFD process that has inputs but no outputs is a(an:
o A. Gray hole
o B. Elementary process
o C. Basic process
o D. Function
ü E. None of the listed options
5. A context diagram
ü A. Is a DFD which gives an overview of the system
o B. Is a detailed description of a system
o C. Is not used in drawing a detailed DFD
o D. Has multiple processes
6. By leveling a DFD we mean
o A. Reviewing the DFD to remove duplicate processes
o B. Make the DFD structure uniform
ü C. Expanding a process into one or more sub-processes giving more detail
o D. Summarizing a DFD to specify only the essentials
7. Given below is the Level 1 DFD for a system. Is the diagram correct?
ü A. No,
There is no output data flow from the process
o
B.
Nom, The entities do not have data flows between them
o
C.
No, the entities are not transferring data to the data stores
o
D.
Yes, the level 1 DFD looks complete
8. The
following portion of DFD is wrong as
o
A.
The process has only one input
o
B.
The process writes and reads from the same data store
ü C. The
process name is wrong; it should be an active verb
o
D.
Output data from the process flows to external entities
9. Lowest
level DFD may add new data flow to represent exception handling like error
Messages. State True or False?
ü A. True
o
B.
False
10. Is the below DFD right?
o
A.
Yes
ü B. No