Definition
A data Flow Diagram (also called DFD) maps out the flow of information for any processA set of activities designed to accomplish a specific objective by taking one or more defined inputs and turning them into defined outputs. or systemA set of interdependent components that interact in various ways to produce a set of desired outcomes.. It shows where data comes from, which activities processA set of activities designed to accomplish a specific objective by taking one or more defined inputs and turning them into defined outputs. the data, and whether the output results are stored or used by another activity or external entity.
A data flow diagram illustrates the movement and transformation of data between externals (entities) and processes. The output from one external or processA set of activities designed to accomplish a specific objective by taking one or more defined inputs and turning them into defined outputs. is the input to another. The data flow diagram also illustrates the temporary or permanent repositories (referred to as data stores or terminators). These store data within a systemA set of interdependent components that interact in various ways to produce a set of desired outcomes. or an organizationAn autonomous group of people under the management of a single individual or board, that works towards common goals and objectives..
The data defined should be described in a data dictionary (see techniqueA manner, method, or style for conducting a business analysis task or for shaping its output. Data Dictionary
Why use a Data Flow Diagram?

Replaces a laborious description/Portrays a complex processA set of activities designed to accomplish a specific objective by taking one or more defined inputs and turning them into defined outputs. in a simple diagram
Visually represents your systemA set of interdependent components that interact in various ways to produce a set of desired outcomes. and its interactions. Also illustrates connections to other systems.
Gives an overview of the information’s movements (How it enters and leaves a systemA set of interdependent components that interact in various ways to produce a set of desired outcomes., how it is transformed)
Helps to explain the logic behind the data flow within a systemA set of interdependent components that interact in various ways to produce a set of desired outcomes..
Can be used as part of systemA set of interdependent components that interact in various ways to produce a set of desired outcomes. documentation.

Pinpoints its weaknesses, scopeThe boundaries of control, change, a solution, or a need., interfaces, and boundaries
Identifies its needs
Helps with potential modifications
Can be used to analyze an existing systemA set of interdependent components that interact in various ways to produce a set of desired outcomes. or modelA representation and simplification of reality developed to convey information to a specific audience to support analysis, communication, and understanding. a new one
Ensures fluid communication between a systemA set of interdependent components that interact in various ways to produce a set of desired outcomes. analyst and individuals
Helps to identify duplicated data elements or misapplied data elements.
May be used as a discovery techniqueA manner, method, or style for conducting a business analysis task or for shaping its output. for processes and data or as a TechniqueA manner, method, or style for conducting a business analysis task or for shaping its output. for the verification of functional decompositions or data models.
DFD does not illustrate a sequence of activities
DFD does not show you who performs the work nor does it show you any alternative paths through the process.
During requirements analysis, you will create additional diagrams known as entity relationship diagrams (ERDs). These represent the user’s view of the solution and its capabilities in terms of entities, attributes, and relationships. You will often refine these models during the design phase of the project, particularly if you are defining capabilities of a software application. During design, as the ERDs are refined, the physical data model (that will become the basis for a relational database) is ultimately created.
Examples
Inventory

How to use a Data Flow Diagram
Data flow diagram example

Read more by subscribing to the BA Toolkit
On top of the brief description of the method, access to:
- an explanation of when and how to use it,
- a practical example,
- tips and recommendations for use,
- downloadable checklists and templates,
- references for further reading,
- …