STAN STATE CS 4800 - Object-Oriented and Classical Software Engineering

Unformatted text preview:

Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach [email protected] 3OverviewSoftware Life-Cycle ModelsBuild and Fix ModelWaterfall Model (contd)Rapid Prototyping ModelThree Key PointsWaterfall and Rapid Prototyping ModelsIncremental ModelIncremental Model (contd)Slide 12Slide 13Extreme ProgrammingUnusual Features of XPEvaluating XPSynchronize-and Stabilize ModelSynchronize-and Stabilize Model (contd)Spiral ModelSimplified Spiral ModelFull Spiral ModelFull Spiral Model (contd)Analysis of Spiral ModelObject-Oriented Life-Cycle ModelsFountain ModelConclusionsSlide 3.1© The McGraw-Hill Companies, 2002Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002Stephen R. [email protected] 3.2© The McGraw-Hill Companies, 2002CHAPTER 3SOFTWARE LIFE-CYCLE MODELSSlide 3.3© The McGraw-Hill Companies, 2002OverviewBuild-and-fix modelWaterfall modelRapid prototyping modelIncremental modelExtreme programmingSynchronize-and-stabilize modelSpiral modelObject-oriented life-cycle modelsComparison of life-cycle modelsSlide 3.4© The McGraw-Hill Companies, 2002Software 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–RetirementSlide 3.5© The McGraw-Hill Companies, 2002Build and Fix ModelProblems–No specifications–No designTotally unsatisfactoryNeed life-cycle model–“Game plan” –Phases–MilestonesSlide 3.6© The McGraw-Hill Companies, 2002Waterfall Model (contd)Characterized by–Feedback loops–Documentation-drivenAdvantages –Documentation–Maintenance easier Disadvantages–Specifications»Joe and Jane Johnson»Mark MarberrySlide 3.7© The McGraw-Hill Companies, 2002Rapid Prototyping ModelLinear model“Rapid”Slide 3.8© The McGraw-Hill Companies, 2002Three Key Points Do not turn into productRapid prototyping may replace specification phase—never the design phaseComparison:–Waterfall model—try to get it right first time–Rapid prototyping—frequent change, then discardSlide 3.9© The McGraw-Hill Companies, 2002Waterfall 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 cycleSlide 3.10© The McGraw-Hill Companies, 2002Incremental ModelDivide project into buildsSlide 3.11© The McGraw-Hill Companies, 2002Incremental Model (contd)Waterfall, rapid prototyping models–Operational quality complete product at endIncremental model–Operational quality portion of product within weeksLess traumaticSmaller capital outlay, rapid return on investmentNeed open architecture—maintenance implicationsVariations used in object-oriented life cycleSlide 3.12© The McGraw-Hill Companies, 2002Incremental Model (contd)Problems–Build-and-fix danger–Contradiction in termsSlide 3.13© The McGraw-Hill Companies, 2002Incremental Model (contd)More risky version—pieces may not fit–CABTAB and its dangersSlide 3.14© The McGraw-Hill Companies, 2002Extreme ProgrammingSomewhat controversial new approachStories (features client wants)Estimate duration and cost of each storySelect stories for next buildEach build is divided into tasksTest cases for task are drawn up firstPair programmingContinuous integration of tasksSlide 3.15© The McGraw-Hill Companies, 2002Unusual Features of XPComputers are put in center of large room lined with cubiclesClient representative is always presentCannot work overtime for 2 successive weeksNo specializationRefactoringSlide 3.16© The McGraw-Hill Companies, 2002Evaluating XPXP has had some successesGood when requirements are vague or changingToo soon to evaluate XPSlide 3.17© The McGraw-Hill Companies, 2002Synchronize-and Stabilize ModelMicrosoft’s life-cycle modelRequirements analysis—interview potential customersDraw up specificationsDivide project into 3 or 4 buildsEach build is carried out by small teams working in parallelSlide 3.18© The McGraw-Hill Companies, 2002Synchronize-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 productSlide 3.19© The McGraw-Hill Companies, 2002Spiral ModelSimplified form–Waterfall model plus risk analysisPrecede each phase by–Alternatives–Risk analysisFollow each phase by–Evaluation–Planning of next phaseSlide 3.20© The McGraw-Hill Companies, 2002Simplified Spiral ModelIf risks cannot be resolved, project is immediately terminatedSlide 3.21© The McGraw-Hill Companies, 2002Full Spiral ModelRadial dimension: cumulative cost to dateAngular dimension: progress through the spiralSlide 3.22© The McGraw-Hill Companies, 2002Full Spiral Model (contd)Slide 3.23© The McGraw-Hill Companies, 2002Analysis 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 onlySlide 3.24© The McGraw-Hill Companies, 2002Object-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–CABTABSlide 3.25© The McGraw-Hill Companies, 2002Fountain ModelFeaturesOverlap (parallelism)Arrows (iteration)Smaller maintenance circleSlide 3.26© The McGraw-Hill Companies, 2002ConclusionsDifferent life-cycle modelsEach with own strengthsEach with own weaknessesCriteria 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


View Full Document

STAN STATE CS 4800 - Object-Oriented and Classical Software Engineering

Download Object-Oriented and Classical Software Engineering
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Object-Oriented and Classical Software Engineering and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Object-Oriented and Classical Software Engineering 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?