1 / 17

CHAPTER 5 — Unit A

Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach srs@vuse.vanderbilt.edu. CHAPTER 5 — Unit A. THE TOOLS OF THE TRADE. Overview. Stepwise refinement Cost–benefit analysis Software metrics CASE Taxonomy of CASE Scope of CASE

gnewell
Download Presentation

CHAPTER 5 — Unit A

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Object-Oriented and Classical Software EngineeringSixth Edition, WCB/McGraw-Hill, 2005Stephen R. Schachsrs@vuse.vanderbilt.edu

  2. CHAPTER 5 — Unit A THE TOOLS OF THE TRADE

  3. Overview • Stepwise refinement • Cost–benefit analysis • Software metrics • CASE • Taxonomy of CASE • Scope of CASE • Software versions • Configuration control • Build tools • Productivity gains with CASE technology

  4. 5.1 Stepwise Refinement • A basic principle underlying many software engineering techniques • “Postpone decisions as to details as late as possible to be able to concentrate on the important issues” • Miller’s law (1956) • A human being can concentrate on 7 ± 2 items at a time

  5. 5.1.1 Stepwise Refinement Mini Case Study • Design a product to update a sequential master file containing name and address data for the monthly magazine True Life Software Disasters • Three types of transactions • Type 1: INSERT (a new subscriber into the master file) • Type 2: MODIFY (an existing subscriber record) • Type 3: DELETE (an existing subscriber record) • Transactions are sorted into alphabetical order, and by transaction code within alphabetical order

  6. Typical File of Input Transactions Figure 5.1

  7. Decompose Process • No further refinement is possible Figure 5.2

  8. First Refinement Figure 5.3

  9. Stepwise Refinement Case Study (contd) • Assumption • We can produce a record when PROCESS requires it • Separate INPUT and OUTPUT, concentrate on PROCESS

  10. Stepwise Refinement Case Study (contd) • What is this PROCESS? • Example: Figure 5.4

  11. Stepwise Refinement Case Study (contd) • More formally: Figure 5.5

  12. Second Refinement Figure 5.6

  13. Third Refinement • This design has a major fault Figure 5.7

  14. Stepwise Refinement Case Study (contd) • The third refinement is WRONG • “Modify JONES” followed by “Delete JONES” is incorrectly handled

  15. Stepwise Refinement Case Study (contd) • After the third refinement has been corrected • Details like opening and closing files have been ignored up to now • Fix these after the logic of the design is complete • The stage at which an item is handled is vital • Opening and closing files is • Ignored in early steps, but • Essential later

  16. Appraisal of Stepwise Refinement • A basic principle used in • Every workflow • Every representation • The power of stepwise refinement • The software engineer can concentrate on the relevant aspects • Warning • Miller’s Law is a fundamental restriction on the mental powers of human beings

  17. Continued in Unit 5B

More Related