Saturday, July 22, 2017

Architectural Mapping Using Data Flow | Transform Mapping

Architectural Mapping Using Data Flow

  • A mapping technique, called structured design, is often characterized as a data flow-oriented design method because it provides a convenient transition from a data flow diagram to software architecture. 
  • The transition from information flow to program structure is accomplished as part of a six step process: 
    • (1) The type of information flow is established, 
    • (2) Flow boundaries are indicated,
    • (3) The DFD is mapped into the program structure, 
    • (4) Control hierarchy is defined, 
    • (5) The resultant structure is refined using design measures. 
    • (6) The architectural description is refined and elaborated.
  • Example of data flow mapping, a step-by-step “transform” mapping for a small part of the SafeHome security function. 
  • In order to perform the mapping,
  • The type of information flow must be determined. It is called transform flow and exhibits a linear quality. 
  • Data flows into the system along an incoming flow path where it is transformed from an external world representation into internalized form. Once it has been internalized, it is processed at a transform center. 
  • Finally, it flows out of the system along an outgoing flow path that transforms the data into external world form.

 Transform Mapping

  • Transform mapping is a set of design steps that allows a DFD with transform flow characteristics to be mapped into a specific architectural style. 
  • To illustrate this approach, we again consider the SafeHome security function. 
  • To map these data flow diagrams into a software architecture, you would initiate the following design steps: 
    • Step 1. Review the fundamental system model.
    • Step 2. Review and refine data flow diagrams for the software. 
    • Step 3. Determine whether the DFD has transform or transaction flow characteristics. 
    • Step 4. Isolate the transform center by specifying incoming and outgoing flow boundaries. 
    • Step 5. Perform “first-level factoring.”
    • Step 6. Perform “second-level factoring.” 
  • Step 7. Refine the first-iteration architecture using design heuristic for improved software quality. 

2 comments: