A Data Flow Diagram (DFD) is a visual representation of data flow within a system. It illustrates how data is input, processed, stored and output, providing a clear overview of the system’s processes and interactions.
Key Components:
Processes:
- Represented by circles or rounded rectangles.
- Indicate actions or transformations performed on data.
- Example: “Validate Login.”
Data Stores:
- Represented by open-ended rectangles or parallel lines.
- Indicate where data is stored within the system.
- Example: “User Database.”
External Entities:
- Represented by rectangles.
- Denote external systems, users, or organisations interacting with the system.
- Example: “Customer” or “Payment Gateway.”
Data Flows:
- Represented by arrows.
- Show the movement of data between processes, data stores and external entities.
- Example: “Customer Info.”
Levels of DFDs:
Level 0 (Context Diagram):
- A high-level view of the entire system.
- Shows only one process representing the whole system, external entities and major data flows.
Level 1:
- Breaks down the Level 0 process into sub-processes.
- Provides more detail on how data flows between major components.
Level 2 (and Beyond):
- Further decomposes Level 1 processes for more granular detail.
- Used for complex systems requiring in-depth analysis.
Purpose of DFDs:
- To visualise data flow and identify inefficiencies or bottlenecks in a system.
- To serve as a communication tool between developers, analysts and stakeholders.
- To aid in system design and requirement gathering.
Advantages:
- Simplifies Complex Systems: Provides a clear overview of system data flow.
- Improves Communication: Helps non-technical stakeholders understand system processes.
- Identifies Gaps: Highlights missing or inefficient data flows.
Limitations:
- No Sequence Representation: This does not show the timing or order of operations.
- Static View: This does not represent system dynamics or real-time interactions.
Data flow diagrams are an essential tool for understanding, analysing and designing data-driven systems.
