Upload
ngohanh
View
217
Download
1
Embed Size (px)
Citation preview
Slide 3.2
© The McGraw-Hill Companies, 2002
Overview
Build-and-fix modelWaterfall modelRapid prototyping modelIncremental modelExtreme programmingSynchronize-and-stabilize modelSpiral modelObject-oriented life-cycle modelsComparison of life-cycle models
Slide 3.3
© The McGraw-Hill Companies, 2002
Software Life-Cycle Models
Life-cycle model (formerly, process model)The steps through which the product progresses– Requirements phase– Specification phase– Design phase– Implementation phase– Integration phase– Maintenance phase– Retirement
Slide 3.4
© The McGraw-Hill Companies, 2002
Build and Fix Model
Problems– No specifications– No design
Totally unsatisfactoryNeed life-cycle model– “Game plan”– Phases– Milestones
Slide 3.5
© The McGraw-Hill Companies, 2002
Waterfall Model (contd)
Characterized by– Feedback loops– Documentation-driven
Advantages – Documentation– Maintenance easier
Disadvantages– Specifications
» Joe and Jane Johnson» Mark Marberry
Slide 3.7
© The McGraw-Hill Companies, 2002
Three Key Points
Do not turn into productRapid prototyping may replace specification phase—never the design phaseComparison:– Waterfall model—try to get it right first time– Rapid prototyping—frequent change, then discard
Slide 3.8
© The McGraw-Hill Companies, 2002
Waterfall and Rapid Prototyping Models
Waterfall model– Many successes– Client needs
Rapid prototyping model– Not proved – Has own problems
Solution– Rapid prototyping for requirements
phase– Waterfall for rest of life cycle
Slide 3.10
© The McGraw-Hill Companies, 2002
Incremental Model (contd)
Waterfall, rapid prototyping models– Operational quality complete product at end
Incremental model– Operational quality portion of product within weeks
Less traumaticSmaller capital outlay, rapid return on investmentNeed open architecture—maintenance implicationsVariations used in object-oriented life cycle
Slide 3.11
© The McGraw-Hill Companies, 2002
Incremental Model (contd)
Problems– Build-and-fix danger– Contradiction in terms
Slide 3.12
© The McGraw-Hill Companies, 2002
Incremental Model (contd)
More risky version—pieces may not fit– CABTAB and its dangers
Slide 3.13
© The McGraw-Hill Companies, 2002
Extreme Programming
Somewhat controversial new approachStories (features client wants)Estimate duration and cost of each storySelect stories for next buildEach build is divided into tasksTest cases for task are drawn up firstPair programmingContinuous integration of tasks
Slide 3.14
© The McGraw-Hill Companies, 2002
Unusual Features of XP
Computers are put in center of large room lined with cubiclesClient representative is always presentCannot work overtime for 2 successive weeksNo specializationRefactoring
Slide 3.15
© The McGraw-Hill Companies, 2002
Evaluating XP
XP has had some successesGood when requirements are vague or changingToo soon to evaluate XP
Slide 3.16
© The McGraw-Hill Companies, 2002
Synchronize-and Stabilize Model
Microsoft’s life-cycle modelRequirements analysis—interview potential customersDraw up specificationsDivide project into 3 or 4 buildsEach build is carried out by small teams working in parallel
Slide 3.17
© The McGraw-Hill Companies, 2002
Synchronize-and Stabilize Model (contd)
At the end of the day—synchronize (test and debug)At the end of the build—stabilize (freeze build)Components always work together– Get early insights into operation of product
Slide 3.18
© The McGraw-Hill Companies, 2002
Spiral Model
Simplified form– Waterfall model
plus risk analysisPrecede each phase by– Alternatives– Risk analysis
Follow each phase by– Evaluation– Planning of next
phase
Slide 3.19
© The McGraw-Hill Companies, 2002
Simplified Spiral Model
If risks cannot be resolved, project is immediately terminated
Slide 3.20
© The McGraw-Hill Companies, 2002
Full Spiral Model
Radial dimension: cumulative cost to dateAngular dimension: progress through the spiral
Slide 3.22
© The McGraw-Hill Companies, 2002
Analysis of Spiral Model
Strengths– Easy to judge how much to test– No distinction between development,
maintenance
Weaknesses– For large-scale software only – For internal (in-house) software only
Slide 3.23
© The McGraw-Hill Companies, 2002
Object-Oriented Life-Cycle Models
Need for iteration within and between phases– Fountain model– Recursive/parallel life cycle– Round-trip gestalt– Unified software development process
All incorporate some form of– Iteration– Parallelism– Incremental development
Danger– CABTAB
Slide 3.24
© The McGraw-Hill Companies, 2002
Fountain Model
FeaturesOverlap (parallelism)Arrows (iteration)Smaller maintenance circle
Slide 3.25
© The McGraw-Hill Companies, 2002
Conclusions
Different life-cycle modelsEach with own strengthsEach with own weaknessesCriteria for deciding on a model include– The organization– Its management– Skills of the employees– The nature of the product
Best suggestion– “Mix-and-match” life-cycle model