Data Flow Diagram – DFD


  • Data Flow Diagrams (DFDs) are a graphical/representation of  systems and systems components.
  •  They show the functional relationships of the values computed by a system, including input values, output values, and internal data stores.
  •  It’s a graph showing the flow of data values from their sources in objects through processes/functions that transform them to their destinations in other objects.
  •  A DFD can be seen as a method of organizing data from its raw state.


Steps for Developing DFDs

  1. Requirements determination
  2. Divide activities
  3. Model separate activities
  4. Construct preliminary context diagram
  5. Construct preliminary System Diagram/ Level 0 diagrams
  6. Deepen into preliminary level n diagrams (primitive diagrams in text)
  7. Complete diagrams


Step 1: Requirements determination

  •  Through different techniques, the analyst has obtained all kinds of specifications in natural language.
  •  This phase never stops until the construction of the DFD is completed. This is also a recursive phase.
  •  At this moment, he should filter the information valuable for the construction of the data flow diagram.
  •  He should order the different data by:


 Initial definition of :  

1. entities

2. related activities

3. data flows


Step 2: Divide activities

  •  Hereby, the analyst should separate the different activities, their entities and their required data.

The completeness per activity can be achieved by asking the informant the textual specification with the lacking components in the activity.

Step 3: Model separate activities

  •  The activities have to be combined with the necessary entities and data stores into a model where input and output of an activity, as well the sequence of data flows can be distinguished.

This phase should give a preliminary view of what data is wanted from and given to whom.


Step 4: Construct preliminary context diagram

  •  The organization-level context diagram is very useful to identify the different entities.
  •   It gives a steady basis in entity distinction and name giving for the rest of the construction.
  •   From here on, the analyst can apply his top-down approach and start a structured decomposition.

This is the process of organizing the diagrams into a hierarchy of increasingly detailed views of processes.


Step 5: Construct preliminary level 0 diagrams

  •  The overview, or parent, data flow diagram shows only the main processes.
  •  It is the level 0 diagram.
  •  This diagram should give a ‘readable’ overview of the essential entities, activities and data flows.

An over-detailed level 0 diagram should generalize appropriate processes into a single process.


Step 6: Deepen into preliminary level n diagrams

  •  This step decomposes the level 0 diagrams.
  •  Each parent process is composed of more detailed processes, called child processes.
  •  The most detailed processes, which can not be subdivided any further, are known as functional primitives.

Process specifications are written for each of the functional primitives in a process.


Step 7: Completion

  •  The final stage consists of forming a structured decomposition as a whole.
  •  The input and output shown should be consistent from one level to the next.

The result of these steps, the global model, should therefore obey all the decomposition rules.


Some DFD rules


1. Know the purpose of the DFD. It determines the level of detail to be included in the diagram.

2. Organize the DFD so that the main sequence of actions reads left to right and top to bottom.

3. Very complex or detailed DFD’s should be levelled.

4. Identify all manual and computer processes (internal to the system) with rounded rectangles or circles.



5. Label each process symbol with an active verb and the data involved.

6. A process is required for all data transformations and transfers. Therefore, never connect a data store to a data source or destination or another data store with just a data flow arrow.

7. Do not indicate hardware or whether a process is manual or computerized.

8. Ignore control information (if’s, and’s, or’s).


Data flows:

9. Identify all data flows for each process step, except simple record retrievals.

10. Label data flows on each arrow.

11. Use data flow arrows to indicate data movement.


Data stores:

12. Dot not indicate file types for data stores.

13. Draw data flows into data stores only if the data store will be changed.


External entities:

14. Indicate external sources and destination of data, when known, with squares.

15. Number each occurrence of repeated external entities.

16. Do not indicate persons or places as entity squares when the process is internal to the system.


Level-0 DFD of Hoosier Burger’s food ordering system

0 level DFD

An unbalanced set of data flow diagrams—why?

(a) Context diagram       (b) Level-0 diagram


0 level DFD 1

Example : Payroll

Pay roll


Example: Car Mart

Car mart


Level 0 DFD

0 level DFD2

Level 1 DFD

 Level 1 DFD

Level 2 DFD

 Level 2 DFD





A password will be e-mailed to you.

Feedback Form

[contact-form-7 id="98" title="Feedback Form"]