Data Flow Diagram

Definition

A Date Flow Diagram (DFD) is a diagrammatic representation of the information (data) flow within a system.

Purpose of Date Flow Diagram

Date Flow Diagrams are advantageous as:

  1. It tracks any information entering or leaving the system.
  2. It depicts how changes to information take place.
  3. It represents how and in what form the information is getting stored.

Date Flow Diagrams are generally used as a system modeling tool and for structured system analysis and design. To represent a program or a software system, Date Flow Diagrams are implemented in the software designing phase.

Various levels of Data Flow Diagrams

1) Zero-level DFD or Context-level Data Flow Diagram
This level basically represents the input and output of the entire system.

2) 1-level DFD
The basic/care modules of the system are represented in this phase and how data mane gates through different modules is shown.

3) 2-Level DFD
The module details are represented in this level. Therefore, detailed Data Flow Diagrams can be drawn with regard to the complexity of system.

Notations in DFD’s

Data Flow Diagrams show the passage of data through the system by using fine basic constructs

1) Data Flow

It shows flow of data from a source to a destination. It is shown with an arrowed line with the arrowhead showing the direction of flow.

Data flow Symbol

It can move from an external entity to a process, from a process to another process, into and out of a store from a process, and from a process to an external entity as well.

It should be noted that the ‘Data flow’ cannot occur from external entity to a store or from a store directly to an external entity.

2) Processes:

These are transformations which change incoming data flow into outgoing data flow.
They are drawn in circular boxes:

Process Symbol

The name of the process should describe what may happen to the data as it passes through the process.

3) Data/Stores

It is repository of data, that is, a file or database
It is represented by two parallel lines and between those lines name of data store is mentioned

Data Store Symbol

4) External entities:

They are external data processing units which represent some external process, outside of the regular data flow .They rely outside the system boundaries.

5) Resource store:

It represents process with resource flow. It represents flow of material than data.

Example of Data Flow Diagrams

Data Flow Diagram (Level-0 and Level-1) for an ATM system can be represented as

Level-0 Data Flow diagram

Level-1 Data Flow diagram

Advantages of Data Flow Diagrams

  • It is a simplified but powerful graphic technique
  • It enables representing data with different levels of details.
  • It helps defining boundaries of the system

References

Pressman: Software Engineering: A practical Approach.