Data Flow Diagram (DFD)

Posted By on April 29, 2016

Download PDF
Entity Relationship (ER) Diagram
User interface design

Data flow diagram (DFD) represents the flows of data between different processes in a business. It is a graphical technique that depicts information flow and the transforms that are applied as data move form input to output. It provides a simple, intuitive method for describing business processes without focusing on the details of computer systems. DFDs are attractive technique because they provide what users do rather than what computers do.

Representation of Components

DFDs only involve four symbols. They are:

  • Process
  • Data Object
  • Data Store
  • External entity
Transform of incoming data flow(s) to outgoing flow(s).
Data Flow
Movement of data in the system.
Data Store
Data repositories for data that are not moving. It may be as simple as a buffer or a queue or a s sophisticated as a relational database.
External Entity
Sources of destinations outside the specified system boundary.


Relationship and Rules


The DFD may be used for any level of data abstraction. DFD can be partitioned into levels. Each level has more information flow and data functional details than the previous level.

Highest level is Context Diagram. Some important points are:

  • 1 bubble (process) represents the entire system.
  • Data arrows show input and output.
  • Data Stores NOT shown. They are within the system.

Diagram above is an example of Context Level DFD


Next Level is Level 0 DFD. Some important points are:

  • Level 0 DFD must balance with the context diagram it describes.
  • Input going into a process are different from outputs leaving the process.
  • Data stores are first shown at this level.

Diagram above show an example of Level 1 DFD


Next level is Level 1 DFD. Some important points are:

  • Level 1 DFD must balance with the Level 0 it describes.
  • Input going into a process are different from outputs leaving the process.
  • Continue to show data stores.

Diagram above show an example of Level 1 DFD


A DFD may look similar to a flow chart. However, there is a significant difference with the data flow diagram. The arrows in DFDs show that there is a flow of data between the two components and not that the component is sending the data that must be executed in the following component. A component in DFD may not continue execution when sending data and during execution of the component receiving the data. The component sending data can send multiple sets of data along several connections. In fact, a DFD node can be a component that never ends.


  • In DFDs, all arrows must be labeled.
  • The information flow continuity, that is all the input and the output to each refinement, must maintain the same in order to be able to produce a consistent system.

Strengths and Weaknesses


  • DFDs have diagrams that are easy to understand, check and change data.
  • DFDs help tremendously in depicting information about how an organization operations.
  • They give a very clear and simple look at the organization of the interfaces between an application and the people or other applications that use it.



  • Modification to a data layout in DFDs may cause the entire layout to be changed. This is because the specific changed data will bring different data to units that it accesses. Therefore, evaluation of the possible of the effect of the modification must be considered first.
  • The number of units in a DFD in a large application is high. Therefore, maintenance is harder, more costly and error prone. This is because the ability to access the data is passed explicitly from one component to the other. This is why changes are impractical to be made on DFDs especially in large system.
Entity Relationship (ER) Diagram
User interface design

Download PDF

Posted by Akash Kurup

Founder and C.E.O, World4Engineers Educationist and Entrepreneur by passion. Orator and blogger by hobby