1 / 26

SOFTWARE LIFE-CYCLE MODELS

SOFTWARE LIFE-CYCLE MODELS. CS 3320--Chapter 3. MODELS. Build-And-Fix Model Waterfall Model Rapid Prototyping Model Incremental Model Spiral Model Object-Oriented Model. BUILD-AND-FIX MODEL. No Specifications No design Reworked many times Totally unsatisfactory Need life-cycle model

rafaell
Download Presentation

SOFTWARE LIFE-CYCLE MODELS

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. SOFTWARE LIFE-CYCLE MODELS CS 3320--Chapter 3 UHD-CS3320-C03

  2. MODELS • Build-And-Fix Model • Waterfall Model • Rapid Prototyping Model • Incremental Model • Spiral Model • Object-Oriented Model UHD-CS3320-C03

  3. UHD-CS3320-C03

  4. BUILD-AND-FIX MODEL • No Specifications • No design • Reworked many times • Totally unsatisfactory • Need life-cycle model • “Game Plan” • Phases • Milestones UHD-CS3320-C03

  5. WATERFALL MODEL • First developed by Royce in early70’s • Documentation Driven • Verification/Test at each phase • Feedback loops UHD-CS3320-C03

  6. UHD-CS3320-C03

  7. ANALYSIS OF THE WATERFALL MODEL • Advantages • Enforced discipline • documentation-driven model • testing by SQA • Maintenance easier • Disadvantages • Requirements & Spec Analysis • graphical aids are used UHD-CS3320-C03

  8. RAPID PROTOTYPING MODEL • Rapid Prototype used for requirements and specifications analysis. • Rapid Prototype contains a subset of the functionality of the target product • Structure of prototype not important, but speed of development process is--RAPID • Prototype can be used in requirement phase of WF model UHD-CS3320-C03

  9. UHD-CS3320-C03

  10. RAPID PROTOTYPING MODEL cont. • Advantages • Helps get requirements right • Good insight to estimate budget and time requirements • Help in design phase ==> less feedback loops • Disadvantages • Prototype adds to the cost (overall it may reduce cost) • Temptation to turn prototype into product UHD-CS3320-C03

  11. RAPID PROTOTYPING MODEL cont. • Key points • Do not turn it into product • Prototype may replace requirement phase but never the design phase • Waterfall model-- try to get right the first time • Rapid Prototype-- Allows better feedback from client at earliest stage of the process. UHD-CS3320-C03

  12. INCREMENTAL MODEL • The product is constructed step by step • The product is divided into a series of incremental builds • Each build consist of a set of module that provide a functionality • Product provided to client build by build • Each new build is integrated with previous builds and delivered to client • Production may stop at end of any build UHD-CS3320-C03

  13. UHD-CS3320-C03

  14. ANALYSIS OF THE INCREMENTAL MODEL • Waterfall: operational quality of complete product at end • Incremental model: deliver operational quality of portion of product in “short” time • Reduces the effect of introducing a new system on users: less traumatic • Smaller capital outlay • The process can be stopped at end of any build • Need open architecture-- good for maintenance UHD-CS3320-C03

  15. ANALYSIS OF THE INCREMENTAL MODEL Problems: • If broken into too few builds then it degenerates into the build-and-fix model • If broken into too many builds then integration of the builds can turn out to be too costly. • Note: Requirements, Specs and Design are done for whole product. Only Implementation and Integration are incremental. • A more risky version: incremental Specs and Design UHD-CS3320-C03

  16. UHD-CS3320-C03

  17. SYNCHRONIZE-AND-STABILIZE MODEL • Microsoft’s life-cycle model • Requirements analysis--interview potential customers • Draw up specifications • Divide project into 3 to 4 builds • Each build carried out by small teams working in parallel • At end of each day--Synchronize (integrate modules into build, test & debug) • At end of each build-Stabilize (freeze build) UHD-CS3320-C03

  18. SPIRAL MODEL • Simplified form • Waterfall model plus risk analysis • Precede each phase by • Alternatives • Risk analysis: performance, budget, milestones • Follow each phase by • Evaluation • Planning of next phase • Prototypes may be used to analyze risks UHD-CS3320-C03

  19. UHD-CS3320-C03

  20. SPIRAL MODEL • Refer to Figure • radial dimension shows cumulative cost to date • Angular dimension shows progress through the spiral • Each cycle corresponds to a phase UHD-CS3320-C03

  21. UHD-CS3320-C03

  22. ANALYSIS OF SPIRAL MODEL Advantages: • It is a risk-driven model • Risk analysis highlights the need to stay within budget, on schedule and quality assurance. • If risks can not be resolved, terminate project • No distinction between development and maintenance. UHD-CS3320-C03

  23. ANALYSIS OF SPIRAL MODEL Restrictions: • Intended for internal (in-house) software • Contract software: risk analysis can not be done at each phase. • Applicable to only large-scale software • cost of risk analysis UHD-CS3320-C03

  24. OBJECT-ORIENTED MODELS • Intended to overcome shortcomings of previous models • Emphasis on incorporating • iterations, refinement, and feedback • overlap and parallelism between phases • incremental development • Danger • Can degenerate into CABTAB (Code A Bit Test A Bit) UHD-CS3320-C03

  25. UHD-CS3320-C03

  26. CONCLUSION • Different life-cycle models • Build-and-Fix should be avoided • WF: well known with strengths and weaknesses • Rapid-Prototype: strengthens WF model • Incremental model • Synchronize-and-Stabilize: used with success by Microsoft • Spiral: risk analysis driven • Best suggestion: “Mix-and-match” life-cycle UHD-CS3320-C03

More Related