Download presentation
Presentation is loading. Please wait.
1
Data-Flow Oriented Design
“From DFD to Structure Chart” TCS2411 Software Engineering
2
TCS2411 Software Engineering
Lecture Objectives To describe the process of translating the DFDs to structure charts To understand the systematic approach in producing the design from the analysis model To understand the different types of conversion that can be done in producing the structure chart TCS2411 Software Engineering
3
TCS2411 Software Engineering
Expanding the DFD Initial analysis produces the Context Diagram and Level 1 DFD In the design phase, the DFD is expanded to lower levels, giving more sub-processes within the original process Level 1 Level 2 Level 3 … Consistency is to be maintained from level to level TCS2411 Software Engineering
4
TCS2411 Software Engineering
Example of Level 1 DFD Member application form Process Application new member record Members TCS2411 Software Engineering
5
TCS2411 Software Engineering
Expanded to Level 2 Member Members formatted new member record application form Get Form Check Form Assign Code Prepare Record Format Record application details checked application details new member details new member record TCS2411 Software Engineering
6
TCS2411 Software Engineering
Five-Step Process The type of information flow is established Flow boundaries are indicated The DFD is mapped into program structure Control hierarchy is defined by factoring Resultant structure is refined using design measures and heuristics TCS2411 Software Engineering
7
Types of Information Flow
Transform Flow Information enter at a point, transformed, and exit at another point Path: incoming flow central transform outgoing flow Transaction Flow Single data item, transaction, triggers one of many paths Path: incoming flow transaction centre action path TCS2411 Software Engineering
8
TCS2411 Software Engineering
Transform Mapping After transform flow is identified, identify the boundaries of incoming and outgoing flow Incoming flow = Afferent flow Outgoing flow = Efferent flow In between the boundaries of the two is the central transform TCS2411 Software Engineering
9
TCS2411 Software Engineering
Example of Boundaries Member Members formatted new member record application form Get Form Check Form Assign Code Prepare Record Format Record application details checked application details new member details new member record Afferent flow Central transform Efferent flow TCS2411 Software Engineering
10
TCS2411 Software Engineering
First Level Factoring Process Membership Application Get Application Process Application Generate New Member TCS2411 Software Engineering
11
Second Level Factoring
Process Membership Application Get Application Process Application Generate New Member Get Application Form Check Application Generate New Record Format New Record TCS2411 Software Engineering
12
TCS2411 Software Engineering
Refinement The hierarchy produced is then refined to improve the quality of the design Modules could be exploded or imploded Apply design concepts of module independence, good cohesion, minimal coupling, and ease of maintenance TCS2411 Software Engineering
13
TCS2411 Software Engineering
Transaction Mapping If transaction flow is identified, identify the transaction centre and flow characteristics of each action path Similar to transform flow, boundaries are identified for incoming flow and the separate action paths Each action path is a transform flow or transaction flow as well TCS2411 Software Engineering
14
Example of Transaction Flow
action paths user commands read user command invoke command processing command type TCS2411 Software Engineering
15
TCS2411 Software Engineering
Transaction Mapping transaction control a reception path b b d dispatcher d a c1 p p q q TCS2411 Software Engineering
16
Factoring and Refining
Each action path has to be refined into a substructure, either by transform or transaction mapping Similar to transaction flow, apply design concepts to improve quality of design TCS2411 Software Engineering
17
Completing the Structure Chart
For each data flow on the DFD add exactly one data couple. Use the same data flow name For each control module, decide how it will control subordinates For modules that select one of several paths, show selection logic with a diamond attached to the link TCS2411 Software Engineering
18
Design Postprocessing
A processing narrative must be developed for each module Interface description is provided for each module Define local and global data structures All design restrictions/limitations noted Conduct design review Optimisation is considered TCS2411 Software Engineering
19
TCS2411 Software Engineering
References “Software Engineering: A Practitioner’s Approach” 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 “Software Engineering” by Ian Sommerville, Addison-Wesley, 2001 “The Practical Guide to Structured Systems Design” by Meilir Page-Jones, Benjamin/Cummings, 1988 TCS2411 Software Engineering
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.