Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach

Similar presentations


Presentation on theme: "Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach"— Presentation transcript:

1 Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach srs@vuse.vanderbilt.edu

2 Slide 3.2 © The McGraw-Hill Companies, 2002 CHAPTER 3 SOFTWARE LIFE-CYCLE MODELS

3 Slide 3.3 © The McGraw-Hill Companies, 2002 Overview l Build-and-fix model l Waterfall model l Rapid prototyping model l Incremental model l Extreme programming l Synchronize-and-stabilize model l Spiral model l Object-oriented life-cycle models l Comparison of life-cycle models

4 Slide 3.4 © The McGraw-Hill Companies, 2002 Software Life-Cycle Models l Life-cycle model (formerly, process model) l The steps through which the product progresses –Requirements phase –Specification phase –Design phase –Implementation phase –Integration phase –Maintenance phase –Retirement

5 Slide 3.5 © The McGraw-Hill Companies, 2002 Build and Fix Model l Problems –No specifications –No design l Totally unsatisfactory l Need life-cycle model –“Game plan” –Phases –Milestones

6 Slide 3.6 © The McGraw-Hill Companies, 2002 Waterfall Model (contd) l Characterized by –Feedback loops –Documentation-driven l Advantages –Documentation –Maintenance easier l Disadvantages –Specifications »Joe and Jane Johnson »Mark Marberry

7 Slide 3.7 © The McGraw-Hill Companies, 2002 Rapid Prototyping Model l Linear model l “Rapid”

8 Slide 3.8 © The McGraw-Hill Companies, 2002 Three Key Points l Do not turn into product l Rapid prototyping may replace specification phase—never the design phase l Comparison: –Waterfall model—try to get it right first time –Rapid prototyping—frequent change, then discard

9 Slide 3.9 © The McGraw-Hill Companies, 2002 Waterfall and Rapid Prototyping Models l Waterfall model –Many successes –Client needs l Rapid prototyping model –Not proved –Has own problems l Solution –Rapid prototyping for requirements phase –Waterfall for rest of life cycle

10 Slide 3.10 © The McGraw-Hill Companies, 2002 Incremental Model l Divide project into builds

11 Slide 3.11 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l Waterfall, rapid prototyping models –Operational quality complete product at end l Incremental model –Operational quality portion of product within weeks l Less traumatic l Smaller capital outlay, rapid return on investment l Need open architecture—maintenance implications l Variations used in object-oriented life cycle

12 Slide 3.12 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l Problems –Build-and-fix danger –Contradiction in terms

13 Slide 3.13 © The McGraw-Hill Companies, 2002 Incremental Model (contd) l More risky version—pieces may not fit –CABTAB and its dangers

14 Slide 3.14 © The McGraw-Hill Companies, 2002 Extreme Programming l Somewhat controversial new approach l Stories (features client wants) l Estimate duration and cost of each story l Select stories for next build l Each build is divided into tasks l Test cases for task are drawn up first l Pair programming l Continuous integration of tasks

15 Slide 3.15 © The McGraw-Hill Companies, 2002 Unusual Features of XP l Computers are put in center of large room lined with cubicles l Client representative is always present l Cannot work overtime for 2 successive weeks l No specialization l Refactoring

16 Slide 3.16 © The McGraw-Hill Companies, 2002 Evaluating XP l XP has had some successes l Good when requirements are vague or changing l Too soon to evaluate XP

17 Slide 3.17 © The McGraw-Hill Companies, 2002 Synchronize-and Stabilize Model l Microsoft’s life-cycle model l Requirements analysis—interview potential customers l Draw up specifications l Divide project into 3 or 4 builds l Each build is carried out by small teams working in parallel

18 Slide 3.18 © The McGraw-Hill Companies, 2002 Synchronize-and Stabilize Model (contd) l At the end of the day—synchronize (test and debug) l At the end of the build—stabilize (freeze build) l Components always work together –Get early insights into operation of product

19 Slide 3.19 © The McGraw-Hill Companies, 2002 Spiral Model l Simplified form –Waterfall model plus risk analysis l Precede each phase by –Alternatives –Risk analysis l Follow each phase by –Evaluation –Planning of next phase

20 Slide 3.20 © The McGraw-Hill Companies, 2002 Simplified Spiral Model l If risks cannot be resolved, project is immediately terminated

21 Slide 3.21 © The McGraw-Hill Companies, 2002 Full Spiral Model l Radial dimension: cumulative cost to date l Angular dimension: progress through the spiral

22 Slide 3.22 © The McGraw-Hill Companies, 2002 Full Spiral Model (contd)

23 Slide 3.23 © The McGraw-Hill Companies, 2002 Analysis of Spiral Model l Strengths –Easy to judge how much to test –No distinction between development, maintenance l Weaknesses –For large-scale software only –For internal (in-house) software only

24 Slide 3.24 © The McGraw-Hill Companies, 2002 Object-Oriented Life-Cycle Models l Need for iteration within and between phases –Fountain model –Recursive/parallel life cycle –Round-trip gestalt –Unified software development process l All incorporate some form of –Iteration –Parallelism –Incremental development l Danger –CABTAB

25 Slide 3.25 © The McGraw-Hill Companies, 2002 Fountain Model l Features l Overlap (parallelism) l Arrows (iteration) l Smaller maintenance circle

26 Slide 3.26 © The McGraw-Hill Companies, 2002 Conclusions l Different life-cycle models l Each with own strengths l Each with own weaknesses l Criteria for deciding on a model include –The organization –Its management –Skills of the employees –The nature of the product l Best suggestion –“Mix-and-match” life-cycle model


Download ppt "Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach"

Similar presentations


Ads by Google