Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.

Similar presentations


Presentation on theme: "Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach."— Presentation transcript:

1 Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach srs@vuse.vanderbilt.edu

2 Slide 13A.2 © The McGraw-Hill Companies, 2005 CHAPTER 13 — Unit A DESIGN

3 Slide 13A.3 © The McGraw-Hill Companies, 2005 Overview l Design and abstraction l Operation-oriented design l Data flow analysis l Transaction analysis l Data-oriented design l Object-oriented design l Object-oriented design: The elevator problem case study l Object-oriented design: The Osbert Oglesby case study

4 Slide 13A.4 © The McGraw-Hill Companies, 2005 Overview (contd) l The design workflow l The test workflow: Design l Formal techniques for detailed design l Real-time design techniques l CASE tools for design l Metrics for design l Challenges of the design workflow

5 Slide 13A.5 © The McGraw-Hill Companies, 2005 Data and Actions l Two aspects of a product  Actions that operate on data  Data on which actions operate l The two basic ways of designing a product  Operation-oriented design  Data-oriented design l Third way  Hybrid methods  For example, object-oriented design

6 Slide 13A.6 © The McGraw-Hill Companies, 2005 13.1 Design and Abstraction l Classical design activities  Architectural design  Detailed design  Design testing l Architectural design  Input: Specifications  Output: Modular decomposition l Detailed design  Each module is designed »Specific algorithms, data structures

7 Slide 13A.7 © The McGraw-Hill Companies, 2005 13.2 Operation-Oriented Design l Data flow analysis  Use it with most specification methods (Structured Systems Analysis here) l Key point: We have detailed action information from the DFD Figure 13.1

8 Slide 13A.8 © The McGraw-Hill Companies, 2005 Data Flow Analysis l Every product transforms input into output l Determine  “Point of highest abstraction of input”  “Point of highest abstract of output” Figure 13.2

9 Slide 13A.9 © The McGraw-Hill Companies, 2005 Data Flow Analysis (contd) l Decompose the product into three modules l Repeat stepwise until each module has high cohesion  Minor modifications may be needed to lower the coupling

10 Slide 13A.10 © The McGraw-Hill Companies, 2005 13.3.1 Mini Case Study: Word Counting l Example: Design a product which takes as input a file name, and returns the number of words in that file (like UNIX wc ) Figure 13.3

11 Slide 13A.11 © The McGraw-Hill Companies, 2005 Mini Case Study: Word Counting (contd) l First refinement l Now refine the two modules of communicational cohesion Figure 13.4

12 Slide 13A.12 © The McGraw-Hill Companies, 2005 l Second refinement l All eight modules now have functional cohesion Mini Case Study: Word Counting (contd) Figure 13.5

13 Slide 13A.13 © The McGraw-Hill Companies, 2005 Word Counting: Detailed Design l The architectural design is complete  So proceed to the detailed design l Two formats for representing the detailed design:  Tabular  Pseudocode (PDL—program design language)

14 Slide 13A.14 © The McGraw-Hill Companies, 2005 Detailed Design: Tabular Format Figure 13.6(a)

15 Slide 13A.15 © The McGraw-Hill Companies, 2005 Detailed Design: Tabular Format (contd) Figure 13.6(b)

16 Slide 13A.16 © The McGraw-Hill Companies, 2005 Detailed Design: Tabular Format (contd) Figure 13.6(c)

17 Slide 13A.17 © The McGraw-Hill Companies, 2005 Detailed Design: Tabular Format (contd) Figure 13.6(d)

18 Slide 13A.18 © The McGraw-Hill Companies, 2005 Detailed Design: PDL Format Figure 13.7

19 Slide 13A.19 © The McGraw-Hill Companies, 2005 13.3.2 Data Flow Analysis Extensions l In real-world products, there is  More than one input stream, and  More than one output stream

20 Slide 13A.20 © The McGraw-Hill Companies, 2005 Data Flow Analysis Extensions (contd) l Find the point of highest abstraction for each stream l Continue until each module has high cohesion  Adjust the coupling if needed Figure 13.8

21 Slide 13A.21 © The McGraw-Hill Companies, 2005 Continued in Unit 13B


Download ppt "Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach."

Similar presentations


Ads by Google