Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach srs@vuse.vanderbilt.edu.

Slides:



Advertisements
Similar presentations
Slide 5.1 © The McGraw-Hill Companies, 2007 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach.
Advertisements

Ch 3: Unified Process CSCI 4320: Software Engineering.
Slide 2.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
1 The Tools of the Trade Xiaojun Qi. 2 Stepwise Refinement Stepwise refinement is a basic problem- solving principle underlying many software engineering.
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
CHAPTER 5 THE TOOLS OF THE TRADE.
5.1/68 The Tools of The Trade. 5.2/68 Overview l Stepwise refinement, l Cost–benefit analysis, l SW metrics, l Case – Taxonomy of CASE, – Scope of CASE,
Design. Overview Design and abstraction Action-oriented design Data flow analysis Transaction analysis Data-oriented design Object-oriented design Challenges.
Chapter 6 Prototyping, RAD, and Extreme Programming
1 SYSTEM and MODULE DESIGN Elements and Definitions.
Introduction To Rational Rose CS 501 Recitation Session November 1, 1999.
Slide 14.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition,
General Algorithms for Common Business Problems
Slide 10C.52 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 12E.121 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Chapter 6 The Traditional Approach to Requirements
Slide 5.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill,
CS540 Software Design Lecture 8 1 Lecture 8: Structured Design Anita S. Malik Adapted from Schach (2004) Chapter 13 and Appendix.
COMP 354 Software Engineering I Section BB Summer 2009 Dr Greg Butler
Slide 10A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005.
Slide 10.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition,
Slide 6.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Slide 11C.104 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 5.1 Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R.
Slide 13B.22 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
Chapter 6 Prototyping, RAD, and Extreme Programming Systems Analysis and Design Kendall & Kendall Sixth Edition.
Slide 5B.18 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 13.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach.
Slide 13.1 © The McGraw-Hill Companies, 2007 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach.
Data Structures Using C++ 2E
©1999 Addison Wesley LongmanSlide 3.1 Managing IS Projects Planning –Decomposing Project into Activities –Estimating resources –Developing a schedule –Setting.
Slide 5.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill,
Slide 12D.88 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 5.1 Lecture 5 THE TOOLS OF THE TRADE. Slide 5.2 Overview l Stepwise refinement l Cost–benefit analysis l Divide-and-conquer l Separation of concerns.
Chapter 1 Software Engineering Principles. Problem analysis Requirements elicitation Software specification High- and low-level design Implementation.
8.1 8 Algorithms Foundations of Computer Science  Cengage Learning.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach
Chapter 11: Sequential File Merging, Matching, and Updating Programming Logic and Design, Third Edition Comprehensive.
11 Chapter 111 Sequential File Merging, Matching, and Updating Programming Logic and Design, Second Edition, Comprehensive 11.
Workflows Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill Stephen R. Schach 1.
Design CS 470 – Software Engineering I Sheldon X. Liang, PH.D.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2010 Stephen R. Schach
© Chinese University, CSE Dept. Software Engineering / Topic 3: Software Engineering Principles Your Name: _____________________ Computer Science.
Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 10.1 CHAPTER 10 OVERVIEW OF THE PREVIOUS CHAPTERS.
Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R
Workflow & Collaboration Initial Scope Initial Scope
Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R
Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R
Chapter 12 Information Systems.
About the Presentations
CHAPTER 14 DESIGN.
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process McGraw-Hill, 2004 Stephen R. Schach
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process McGraw-Hill, 2004 Stephen R. Schach
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
Databases Lesson 2.
Programming Logic and Design Fourth Edition, Comprehensive
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Engineering CHAPTER 2 SOFTWARE LIFE CYCLE MODELS
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
CS310 Software Engineering Lecturer Dr.Doaa Sami
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process McGraw-Hill, 2004 Stephen R. Schach
WALKTHROUGH and INSPECTION
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
Presentation transcript:

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 Software versions Configuration control Build tools Productivity gains with CASE technology

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.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

Typical File of Input Transactions Figure 5.1

Decompose Process Figure 5.2 No further refinement is possible

First Refinement Figure 5.3

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

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

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

Second Refinement Figure 5.6

Third Refinement This design has a major fault Figure 5.7

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

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

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

Continued in Unit 5B