<<

Life-Cycle Build-And-Fix Model

• Series of steps through which software product • Product is implemented without any progresses specification or – From through retirement • May work for projects with few hundred line of • A life-cycle is selected during code Phase

Ch2 Copyright © 2004 by Eugean 1 Ch2 Copyright © 2004 by Eugean 2 Hacopians Hacopians

Build-And-Fix Model Requirements Phase Changed requirements Verify Build First Verify version Specification Phase Modify until Verify client is satisfied Design Phase Verify Maintenance Phase Implementation phase Test Retirement Development Development Integration Maintenance Maintenance Maintenance phase phase Test Retirement

Ch2 Copyright © 2004 by Eugean 3 Ch2 Copyright © 2004 by Eugean 4 Hacopians Hacopians

1 Rapid Prototyping Model Rapid Prototyping Model Rapid prototype Changed requirements Verify • Develop product with reduced capability Verify Specification • Present to client for approval Phase Verify

• Develop specification with better understanding Design Phase • Prototype could give designers Verify Implementation – Insight to the product phase – What not to do Test Development Integration Maintenance Maintenance phase phase Test Retirement

Ch2 Copyright © 2004 by Eugean 5 Ch2 Copyright © 2004 by Eugean 6 Hacopians Hacopians

Incremental Model Incremental Model Requirements Phase • The product is divided into builds Verify Specification • Each build contains an operational quality Phase subsystem Verify Architectural Design • With each additional build a new subsystem is Verify

integrated with the previous build For each build: Perform detailed design, implementation, • Other types of Incremental Models and integration. Test. Deliver to client. Development Maintenance – Model Maintenance phase

– Synchronize-And-Stabilize Model Retirement

Ch2 Copyright © 2004 by Eugean 7 Ch2 Copyright © 2004 by Eugean 8 Hacopians Hacopians

2 Spiral Model

• Concept is to minimize risk via the use of • Set of important requirements are selected for prototypes and other means each prototype • Well suited for: • Risk is performed at each step of – Internal development development – Large scale – Specification –Design – Implementation – Integration

Ch2 Copyright © 2004 by Eugean 9 Ch2 Copyright © 2004 by Eugean 10 Hacopians Hacopians

Object-Oriented Life-Cycle Spiral Model Models • Fountain model • Recursive/parallel life cycle • Unified process

Ch2 Copyright © 2004 by Eugean 11 Ch2 Copyright © 2004 by Eugean 12 Hacopians Hacopians

3 Object-Oriented Life-Cycle Object-Oriented Life-Cycle Models Models • All Object oriented life cycles are: • Fountain model –Iterative – Each circle represents various phases overlap – Incorporate some form of parallelism (Overlap of – Overlap between activities Activities) – Arrows within each phase represent iteration within – Support incremental development that phase – The maintenance circle is smaller • Symbolizes reduced maintenance effort when Object Oriented paradigm is used

Ch2 Copyright © 2004 by Eugean 13 Ch2 Copyright © 2004 by Eugean 14 Hacopians Hacopians

Object-Oriented Life-Cycle Comparison of Life-Cycle Models Models Life-Cycle Model Strengths Weaknesses Build-and-fix model Fine for short programs that will Totally unsatisfactory for • Fountain model not requier any maintenance nontrivial programs Further Waterfall model Desciplined approach. Delivered product may not meet Maintenance Development Document driven client's needs Rapid prototyping model Ensures that delivered product beyond all doubt meets client's needs Incremental model Maximizes early return on Requires open architecture Implementation and investment. May degenerate into build-and- integration phase Promotes maintainability fix Extreme model Maximizes early return on Has not yet been widely used Implementation investment. phase Works well when client's requirment are vague Object-Oriented Syncronize-and-stabilize model Future users' needs are met Has not been widely used other design phase Ensures components can be that at Microsoft successfully integrated Object-Oriented Spiral model Incorporates features of all the Can be used only for large- analysis phase above models scale, in-house products Developers have to be Requirement competent in risk analysis and phase risk resolution Object-Oriented model Support iteration within phases, May degenerate into CABTAB parallelism between phases Figure 3.10 Ch2 Copyright © 2004 by Eugean 15 Ch2 Copyright © 2004 by Eugean 16 Hacopians Hacopians

4