Back

Data Flow Diagram

Idealogic’s Glossary

A Data Flow Diagram (DFD) is a diagram which shows the flow of data within a system or a process and the transformations that occur to the data. DFDs are also graphical representations of data flows in a system and it uses shapes, symbols and labels to help in the flow of data from inputs to outputs. Components of DFDs include processes which are depicted as rectangles, data flow which is shown by arrows, data stores and external entities.

Purpose and Usage of DFDs

Originally applied since the 1970s for documenting process, DFDs are now employed in order to illustrate the structure of software systems. The purpose of these diagrams is to represent the topology of the system with a view of illustrating the flow of information as well as the connection between the different parts of the system.

DFDs are useful in depicting processes and flow of information in a way that is quite comprehensible and can as well show the level of detail of processes. By breaking down processes and depicting the way in which data is passed through them, DFDs give the developer, analyst and other people interested in the system a general idea of what the system looks like in the development process. This is because DFDs provide clarity and thus can be of great use during the designing of new systems besides analyzing the existing ones.

Components of a Data Flow Diagram

A typical DFD consists of several key components:

  • Processes: Shown as rectangles or circles these represent the processes or operations that convert inputs to outputs. Every process is a phase in the entire system which takes the data and transforms it in some form.
  • Data Flows: Flow belongs between processes, data stores and external entities and is depicted by arrows. Data flows depict the movement of information as well as the order in which such movement takes place.
  • Data Stores: Data stores are depicted as open- ended rectangles or parallel line which are used to represent areas where data is stored within the system including libraries or databases. It is where data can be stored and are susceptible to being read or written by processes.
  • External Entities: These are depicted by rectangles and they depict source or sink of data which exist beyond the system’s boundary. These may include users, other systems or other organizations which have an interface with the system.

Advantages of Using DFDs

There are quite a number of reasons why DFDs are crucial as highlighted below. They offer a good overview of a system and at the same time are detailed enough to show most of the relations and data flows. This simplicity and clarity make DFDs particularly effective for:

  • Communicating System Design: DFDs are useful to present the system design to the technical and non technical users so that all the stakeholders have the same perception about the system’s functioning.
  • Identifying Inefficiencies: This is because through the creation of DFDs, data flows can be physically seen and thus one can easily see where there are blocks, delays or where there is unnecessary repetition.
  • Documenting Systems: DFDs are useful as a way of documenting a system and this documentation can be useful throughout the entire life cycle of the system from the initial analysis to changes made later in the systems lifecycle.

Conclusion

A Data Flow Diagram (DFD) is one of the most important tools used in system analysis and design since it presents a graphical representation of the flow of data within a system or process. Due to the representation of different processes in the form of standardized symbols and shapes, DFDs help to design the system in detail, as well as to identify the bottlenecks and describe the data flow. This has made DFDs to be very useful in both software development and management of any process which has led to its wide use.