Wednesday, March 12, 2008

Data Flow Diagrams (DFDs)

Use a Data Flow Diagram (DFD) to show the relationships among the business processes within an organization to:

  • external systems,
  • external organizations,
  • customers,
  • other business processes.

 

Method

Data flow diagrams are used to describe how the system transforms information.  They define how information is processed and stored and identify how the information flows through the processes.

When building a data flow diagram, the following items should be considered:

  • where does the data that passes through the system come from and where does it go,
  • what happens to the data once it enters the system (i.e., the inputs) and before it leaves the system (i.e., the outputs),
  • what delays occur between the inputs and outputs (i.e., identifying the need for data stores).

     

STEPS TO DRAW A DATA FLOWDIAGRAM

Steps

  • Start from the contextdiagram. Identify the parent process and the external entities with their net inputs and outputs.
  • Place the external entities on the diagram. Draw the boundary.
  • Identify the data flows needed to generate the net inputs and outputs to the external entities.
  • Identify the business processes to perform the work needed to generate the input and output data flows.
  • Connect the data flows from the external entities to the processes.
  • Identify the datastores.
  • Connect the processes and data stores with data flows.
  • Apply the Process Model Paradigm to verify that the diagram addresses the processing needs of all external entities.
  • Apply the External Control Paradigm to further validate that the flows to the external entities are correct.
  • Continue to decompose to the nthlevel DFD. Draw all DFDs at one level before moving to the next level of decomposing detail. You should decompose horizontally first to a sufficient nth level to ensure that the processes are partitioned correctly; then you can begin to decompose vertically.

Tips andHints

Consider creating a data access model to document the processes that create, update, and delete data in the system.
As an alternative to functional decomposition, consider using a bottom-up approach when the details about the system are well known.
When analyzing the business system under study in terms of its response to events (for example, user interaction with windowed systems), consider the following:

 

Creating Nth Level Data Flow Diagrams

The context diagram defines the scope of the project.  The first level data flow diagram (i.e., level one of decomposition) further describes and decomposes the parent process on the context diagram (i.e., level zero of decomposition).

Each process on the data flow diagram is a candidate for decomposition.  A process is decomposed until it can no longer be logically broken down.

A lower level data flow diagram (i.e., nth-level) further decomposes one of the processes on a data flow diagram at one level above the lower level in the decomposition.

Steps to Decompose the Next Nth-level DFD

  • The flows (i.e., inputs and outputs) of the context process (i.e., parent process) define the data flows of the nth-level data flow diagram (i.e., what the data flow diagram has been asked to do).
  • For each input data flow from the parent process, identify new processes that process the input flows and identify the output data flows that these new processes create.
  • For each output data flow created by the new processes in step two, identify new processes that process these flows (as input flows) and identify the output data flows that these new processes create.
  • Repeat the previous step until processes have been created that link the input flows to the parent process to the output flows from the parent process.

No comments: