Data Flow Diagrams
Keng Siau Department of Management University of Nebraska - Lincoln
Common Errors in DFDs ❂
Forgetting to include a data flow or pointing an arrowhead in the wrong direction
❂
Connecting data stores and external entities directly to each other
❂
Incorrectly labeling processes and/or data flow
Common Errors in DFDs ❂
Including more than nine processes on a DFD (not recommended)
❂
Omitting data flow
❂
Creating unbalanced decomposition in child diagram • each child diagram should have the same input and output data flow as the parent process • exception: minor output such as error lines
Logical vs. Physical DFDs ❂
DFDs are categorized as either • logical • physical
❂
Logical DFDs • not concerned about how the system is or will be constructed
❂
Physical DFDs • show how the system is or will be constructed
Progression of Models Current Logical DFD
New Logical DFD
New Physical DFD
Advantages of Logical DFDs ❂
Better communication with users
❂
More stable systems
❂
Better understanding of the business by analysts
❂
Flexibility and maintenance
❂
Elimination of redundancies and easier creation of the physical model
Advantages of Physical DFDs ❂
❂
❂
❂ ❂ ❂
Clarifying which processes are manual and which are automated Describing processes in more detail than logical DFDs Sequencing processes that have to be done in a particular order Identifying temporary data stores Specifying actual names of files and printouts Adding controls to ensure the processes are done properly
Partitioning DFDs ❂
The process of analyzing a DFD and deriving a series of manual procedures and computer programs
❂
A dashed line is drawn around a group of processes that are included in each computer program or manual procedure
Why Partition ? ❂
Different user groups should have different programs
❂
Processes that execute at different time must be in separate programs
❂
Similar tasks may be included in the same program
❂
Several batch processes may be included in the same program for efficiency
Why Partition ? ❂
Several processes may be included in the same program or job stream for consistency of data
❂
Processes may be separated into different programs for security
Purposes of DFDs ❂
Unexploded DFDs are useful to identify information requirements
❂
Exploded DFDs can be used for • presentation • education • gathering feedback information from users
Uses of DFDs ❂
Used to analyze the system to ensure that the design is complete
❂
Used to partition the system into programs
❂
Used for system documentation