You must add a |reason=
parameter to this Cleanup template – replace it with {{Cleanup|February 2005|reason=<Fill reason here>}}
, or remove the Cleanup template.
A data flow diagram (DFD) is a graphical representation of the "flow" of data through business functions or processes. A data flow diagram can also be used for the visualization of data processing (structured design). It illustrates the processes, data stores, and external entities in a business or other system and the data flows between these things. It is common practise for a designer to first draw a context-level DFD first which shows the interaction between the system and outside entities. This context-level DFD is then "exploded" to show more detail of the system being modelled. In analysing a business, several sets of DFD's are drawn. Initial DFD's might model the existing system (flaws and all), while later DFD's may model a solution to the problem being analysed. For these solution DFD's a logical and physical DFD is drawn. Physical DFD's represent physical files and transactions, while logical or conceptual DFD's can be used to represent business functions or processes. Data flow diagrams were invented by Larry Constantine, the original developer of structured design, based on Martin and Estrin's "data flow graph" model of computation.
Components
Four components are used to develop a DFD. These are:
- Data Flow (represented by an arrow)
- Data Process (represented by a circle or rounded rectangle)
- External Entity (represented by a square or oval, also called a 'Source/Sink'
- Data Store (represented by two parallel lines, sometimes connected by a vertical line)
Data Flow
A data flow is the core of the data flow diagram. Each data flow in the system should be unique and demonstrate data flowing between two other elements in the system. Depending on the notation used, several rules apply to data flows, such as a limitation on two-sided arrows. It is generally agreed that each data flow should be uniquely labelled in the DFD.
Data Process
Data Store
External Entities
A data flow diagram's boundary is the imaginary boundary of the system. This is conventionally drawn on the diagram as a continuous line going through all the data flows from external entities to processes and back.
Note: It is a bad practice to have external entities have direct access to data stores.
External entities and data stores can be duplicated in the system for more clarity, while processes cannot. External entities that have been replicated are marked by * in the lower right part of the oval that represents that entity. Data stores have a double line of the left side of their box.
External links
- Quick Reference
- Article "Data Flow Diagrams (DFD)" by Vicki L. Sauter
- Article "Data Flow Diagrams" by Tony Drewry
- Article "Representing Systems With Data Flow Diagrams" by Kenneth A. Kozar
- Article "The Semantics of Data Flow Diagrams" by P. D. Bruza and Th. P. van der Weide
- Chapter "Dataflow Diagrams" by Ed Yourdon