what is data flow diagram

What are data flow diagram advantages and disadvantages?

Data Flow Diagram:

DFD stands for the data flow diagram. It is a way of representing a flow of data/process/ system. It provides the information about inputs and outputs of each entity and the process itself.

We know that a picture is worth more than a thousand words. A data flow diagram is a way to visualize the information flows within a system. A clear DFD helps in detecting a good amount of the system requirements graphically. A data flow diagram can be created manually, automated, or a combination of both of these.

A DFD is basically is used to show a complete system’s working. It shows how a piece of information enters the system as well as how it leaves. What changes the information and where the information is stored.

Purpose of Data Flow Diagram:

One of the big reasons for DFD is to show the scope and boundaries of the system as a whole. It can also be used as a communication tool between the system analyst and the person who plays a vital role in the system that acts as a straight point for redesigning a system.

A DFD begins with a context diagram. This is called a 0 level diagram of DFD. I am a simple representation of the whole system. Then comes the level 1 diagram. It is with the lower-level functions decomposed from the major functions of a system.

This can become a level 2 diagram when further analysis is needed. The progression to level 3 and 4 and so on is possible. The levels of details like 3 level, 4 level, and 5 levels etc for decomposing a particular function depending on the complexity of the function.

Data Flow Diagram Notations:

Here are a few diagram notations that are used in creating a DFD.


dfd symbols


External Entity:

It is used to represent a human, a system, or a subsystem. The data comes from an external entity and it goes to it too. A rectangle symbol is used to represent it.

Process Symbol:

It is used to represent a business activity or a function. The manipulation and transformation of data take place here.


Data Store Symbol:

It is used to represent the storage of persistent data required and produced by the process. Membership forms and database tables are examples of data stores.


Data Flow Symbol:


It is used to represent the flow of information.


Examples of Data Flow Diagram

Some common examples of Data Flow Diagram as given below.

  • DFD in software engineering:
  • DFD in Business Analysis
  • DFD in business processes-engineering
  • DFD in agile development
  • DFD in system structures

what is data flow diagram


Advantages of Data Flow Diagram:

  • It is simple to use.
  • It is easy to understand.
  • It helps in defining the system’s boundaries.
  • It is used as a communication too.
  • It is used as a part of a documentation file of a system.
  • It explains the logic.
  • It explains the flow of data in an entire system.
  • Possibility of stable system.
  • It provides a batter communication with users.
  • It is more stable.
  • It works on the design of a business framework.
  • It increases the ability to understand the system.
  • It is easier to maintain.
  • It increases flexibility at some levels.
  • There is no need to involve technical implementation too early.
  • It provides information of the inter-relatedness of the system.
  • It provides information of the inter-relatedness of the sub-system.
  • All the important data and processes have been defined.
  • Disadvantages of Data Flow Diagram
  • It helps to understand the flow of the system’s working.

Disadvantages of Data Flow Diagram:

  • It leaves physical considerations.
  • It takes a long period of time in its creation.
  • It becomes difficult if the number of processes is increased.
  • It does not provide information about the time of delivering.
  • It does not define whether the processes will operate in sequence or parallel.
  • It makes processes slower in certain cases.
  • Its same symbols can be used with different meanings.
  • It is a big cause of confusion.

Read more about:

Types of keys in database

Types of databases