SlideShare a Scribd company logo
1 of 23
Slide 3.1
CHAPTER 3
SOFTWARE
LIFE-CYCLE
MODELS
Slide 3.2
Overview
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 models
Slide 3.3
Software Life-Cycle Models
Life-cycle model
The steps through which the product
progresses
– Requirements phase
– Specification phase
– Design phase
– Implementation phase
– Integration phase
– Maintenance phase
– Retirement
Slide 3.4
Build and Fix Model
Problems
– No specifications
– No design
Totally
unsatisfactory for
any reasonable
size software
Need life-cycle
model
– “Game plan”
– Phases
– Milestones
Slide 3.5
Waterfall Model
The only widely-used model
until the early 80’s
Characterized by
– Feedback loops
– Documentation-driven
– Each phase needs to be
approved by SQA
Advantages
– Enforced disciplined approach
– Documentation
– Maintenance easier
Disadvantages
– Specifications not easily
understood by clients
– Example stories (read textbook)
» Joe and Jane Johnson (house)
» Mark Marberry (suit)
Slide 3.6
Rapid Prototyping Model
Rapid prototype – a working
model functionally equivalent to
a subset of the product
– Determine what the client needs
– When developed, the client and
users try using it
– When they are satisfied, the
process moves to the next phase
Linear model
– Specifications are drawn from the
rapid prototype
– Feedback loops are not used
“Rapid” is the key
Slide 3.7
Three Key Points
Do not turn a rapid prototype 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 changes until the client
is satisfied, then discard
Slide 3.8
Integrating Waterfall and Rapid Prototyping Models
Waterfall model
– Many successes
– Client needs may not be met
Rapid prototyping model
– Some success but not really proven
– Has own problems
Solution
– Rapid prototyping for requirements phase
– Waterfall for rest of life cycle
Slide 3.9
Incremental Model
The product is designed,
implemented, integrated
and tested as a series of
builds
A build consists of code
pieces from various
modules interacting to
provide a specific
functionality
Too few builds can lead to
build-and-fix model
Too many builds can lead
to inefficient development
Slide 3.10
Incremental 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
Needs open architecture—maintenance
implications
Slide 3.11
Concurrent Incremental Model
More risky version—pieces may not fit
– CABTAB (code a bit and test a bit) and its dangers
Slide 3.12
Extreme Programming
Somewhat controversial new approach based on
the incremental model
Development team determines 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 tasks
Slide 3.13
Unusual Features of XP
Computers are put in center of a large room
lined with cubicles
Client representative is always present
Cannot work overtime for 2 successive
weeks
No specialization
– All members of the team work on specification,
design, coding and testing
Refactoring
– No overall design
– The design is modified while the product is being
developed
Slide 3.14
Evaluating XP
XP has had some successes
Good when requirements are vague or
changing
Too soon to evaluate XP
Slide 3.15
Synchronize and Stabilize Model
Microsoft’s life-cycle model
Also based on the incremental 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 parallel
Slide 3.16
Synchronize and Stabilize Model (contd)
At the end of the day—synchronize (test and
debug)
At the end of each build—stabilize (freeze build)
Components always work together
– Get early insights into operation of product
Slide 3.17
Spiral Model
Simplified Waterfall model
plus risk analysis
– Uses rapid prototypes
Precede each phase by
– Alternatives
– Risk analysis
Follow each phase by
– Evaluation
– Planning of next phase
Slide 3.18
Simplified Spiral Model
If risks cannot be
resolved, project is
immediately
terminated
Potential risks
– Timing constraints
– Lack of personnel
– Competence of team
– Dependency on
hardware delivery
Slide 3.19
Full Spiral Model
Radial dimension: cumulative cost to date
Angular dimension: progress through the spiral
Slide 3.20
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.21
Object-Oriented Life-Cycle Models
Need for iteration within and between phases
– Fountain model [Henderson-Sellers and Edwards, 1990]
– Recursive/parallel life cycle [Berard, 1993]
– Unified software development process
[Jacobson, Booch, and Rumbaugh, 1999]
All incorporate some form of
– Iteration
– Parallelism
– Incremental development
Danger
– CABTAB (undisciplined approach of s/w
development, pg. 84)
Slide 3.22
Fountain Model
Circles (phases)
Overlap
(parallelism)
Arrows (iteration)
Smaller
maintenance circle
Slide 3.23
Conclusions
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 model

More Related Content

What's hot

50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
asidharath
 
Prototype model and process
Prototype model  and processPrototype model  and process
Prototype model and process
Danish Musthafa
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototyping
drjms
 

What's hot (19)

Class waterfall
Class waterfallClass waterfall
Class waterfall
 
waterfall model
waterfall modelwaterfall model
waterfall model
 
Waterfall model in SDLC
Waterfall model in SDLCWaterfall model in SDLC
Waterfall model in SDLC
 
Comparison of waterfall model and prototype model
Comparison of waterfall model and prototype modelComparison of waterfall model and prototype model
Comparison of waterfall model and prototype model
 
Faisal Incremental Model
Faisal Incremental ModelFaisal Incremental Model
Faisal Incremental Model
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Iterative model
Iterative modelIterative model
Iterative model
 
Waterfall model ppt final
Waterfall model ppt  finalWaterfall model ppt  final
Waterfall model ppt final
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
What is v model
What is v modelWhat is v model
What is v model
 
Increment model
Increment modelIncrement model
Increment model
 
Iterative model in sdlc
Iterative model in sdlcIterative model in sdlc
Iterative model in sdlc
 
Incremental Model
Incremental ModelIncremental Model
Incremental Model
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
 
Prototype model and process
Prototype model  and processPrototype model  and process
Prototype model and process
 
Prototype model of SDLC
Prototype model of SDLCPrototype model of SDLC
Prototype model of SDLC
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
Waterfall model and spiral model
Waterfall model and spiral modelWaterfall model and spiral model
Waterfall model and spiral model
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototyping
 

Viewers also liked

Software lifecycle lodhi (1)
Software lifecycle   lodhi (1)Software lifecycle   lodhi (1)
Software lifecycle lodhi (1)
Nitesh Nayal
 
Chapter 5 Mis Software Development Life Cycle
Chapter 5 Mis Software Development Life CycleChapter 5 Mis Software Development Life Cycle
Chapter 5 Mis Software Development Life Cycle
management 2
 
The spiral model
The  spiral  modelThe  spiral  model
The spiral model
phatcom10
 
System development life cycle (sdlc)
System development life cycle (sdlc)System development life cycle (sdlc)
System development life cycle (sdlc)
Mukund Trivedi
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 
Definition and types of research
Definition and types of researchDefinition and types of research
Definition and types of research
fadifm
 

Viewers also liked (16)

Software lifecycle lodhi (1)
Software lifecycle   lodhi (1)Software lifecycle   lodhi (1)
Software lifecycle lodhi (1)
 
Sofware Team Organizations
Sofware Team OrganizationsSofware Team Organizations
Sofware Team Organizations
 
Introduction to system life cycle
Introduction to system life cycleIntroduction to system life cycle
Introduction to system life cycle
 
Waterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project ManagementWaterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project Management
 
Chapter 5 Mis Software Development Life Cycle
Chapter 5 Mis Software Development Life CycleChapter 5 Mis Software Development Life Cycle
Chapter 5 Mis Software Development Life Cycle
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structures
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
The spiral model
The  spiral  modelThe  spiral  model
The spiral model
 
Spiral model : System analysis and design
Spiral model : System analysis and designSpiral model : System analysis and design
Spiral model : System analysis and design
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanation
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
 
System development life cycle (sdlc)
System development life cycle (sdlc)System development life cycle (sdlc)
System development life cycle (sdlc)
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
Definition and types of research
Definition and types of researchDefinition and types of research
Definition and types of research
 

Similar to Edu+Presentation

Software engg. pressman_ch-3
Software engg. pressman_ch-3Software engg. pressman_ch-3
Software engg. pressman_ch-3
Dhairya Joshi
 
SDLC model Lecture 03.ppt
SDLC model Lecture 03.pptSDLC model Lecture 03.ppt
SDLC model Lecture 03.ppt
PriyanshTan
 

Similar to Edu+Presentation (20)

Sdlc
SdlcSdlc
Sdlc
 
Software cycles
Software cyclesSoftware cycles
Software cycles
 
Software cycles
Software cyclesSoftware cycles
Software cycles
 
Sdlc
SdlcSdlc
Sdlc
 
System development life cycle
System development life cycleSystem development life cycle
System development life cycle
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
 
Software engg. pressman_ch-3
Software engg. pressman_ch-3Software engg. pressman_ch-3
Software engg. pressman_ch-3
 
Bba ii cam u iii-introduction to sdlc cycle
Bba ii cam  u iii-introduction to sdlc cycleBba ii cam  u iii-introduction to sdlc cycle
Bba ii cam u iii-introduction to sdlc cycle
 
software construction modules,language,tools,design
software construction modules,language,tools,designsoftware construction modules,language,tools,design
software construction modules,language,tools,design
 
Sdlc
SdlcSdlc
Sdlc
 
Software Devlopment Life Cycle
Software Devlopment Life CycleSoftware Devlopment Life Cycle
Software Devlopment Life Cycle
 
Software development life cycle (SDLC) Models
Software development life cycle (SDLC) ModelsSoftware development life cycle (SDLC) Models
Software development life cycle (SDLC) Models
 
Lect3 ch15-unit2
Lect3 ch15-unit2Lect3 ch15-unit2
Lect3 ch15-unit2
 
SDLC model Lecture 03.ppt
SDLC model Lecture 03.pptSDLC model Lecture 03.ppt
SDLC model Lecture 03.ppt
 
SDLC model Lecture 03.ppt
SDLC model Lecture 03.pptSDLC model Lecture 03.ppt
SDLC model Lecture 03.ppt
 
Spiral Model
Spiral ModelSpiral Model
Spiral Model
 
SDLC
SDLCSDLC
SDLC
 
System Development Life Cycle Models
System Development Life Cycle ModelsSystem Development Life Cycle Models
System Development Life Cycle Models
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
Process models
Process modelsProcess models
Process models
 

More from gurbaxrawat (9)

Jogging
JoggingJogging
Jogging
 
Dot+Net+2010+Features
Dot+Net+2010+FeaturesDot+Net+2010+Features
Dot+Net+2010+Features
 
Business.......
Business.......Business.......
Business.......
 
Techno+......
Techno+......Techno+......
Techno+......
 
Health+PPPPPP
Health+PPPPPPHealth+PPPPPP
Health+PPPPPP
 
Entertail+Present+....
Entertail+Present+....Entertail+Present+....
Entertail+Present+....
 
dffdf
dffdfdffdf
dffdf
 
test11211
test11211test11211
test11211
 
Model question paper_mc0061
Model question paper_mc0061Model question paper_mc0061
Model question paper_mc0061
 

Edu+Presentation

  • 2. Slide 3.2 Overview 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 models
  • 3. Slide 3.3 Software Life-Cycle Models Life-cycle model The steps through which the product progresses – Requirements phase – Specification phase – Design phase – Implementation phase – Integration phase – Maintenance phase – Retirement
  • 4. Slide 3.4 Build and Fix Model Problems – No specifications – No design Totally unsatisfactory for any reasonable size software Need life-cycle model – “Game plan” – Phases – Milestones
  • 5. Slide 3.5 Waterfall Model The only widely-used model until the early 80’s Characterized by – Feedback loops – Documentation-driven – Each phase needs to be approved by SQA Advantages – Enforced disciplined approach – Documentation – Maintenance easier Disadvantages – Specifications not easily understood by clients – Example stories (read textbook) » Joe and Jane Johnson (house) » Mark Marberry (suit)
  • 6. Slide 3.6 Rapid Prototyping Model Rapid prototype – a working model functionally equivalent to a subset of the product – Determine what the client needs – When developed, the client and users try using it – When they are satisfied, the process moves to the next phase Linear model – Specifications are drawn from the rapid prototype – Feedback loops are not used “Rapid” is the key
  • 7. Slide 3.7 Three Key Points Do not turn a rapid prototype 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 changes until the client is satisfied, then discard
  • 8. Slide 3.8 Integrating Waterfall and Rapid Prototyping Models Waterfall model – Many successes – Client needs may not be met Rapid prototyping model – Some success but not really proven – Has own problems Solution – Rapid prototyping for requirements phase – Waterfall for rest of life cycle
  • 9. Slide 3.9 Incremental Model The product is designed, implemented, integrated and tested as a series of builds A build consists of code pieces from various modules interacting to provide a specific functionality Too few builds can lead to build-and-fix model Too many builds can lead to inefficient development
  • 10. Slide 3.10 Incremental 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 Needs open architecture—maintenance implications
  • 11. Slide 3.11 Concurrent Incremental Model More risky version—pieces may not fit – CABTAB (code a bit and test a bit) and its dangers
  • 12. Slide 3.12 Extreme Programming Somewhat controversial new approach based on the incremental model Development team determines 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 tasks
  • 13. Slide 3.13 Unusual Features of XP Computers are put in center of a large room lined with cubicles Client representative is always present Cannot work overtime for 2 successive weeks No specialization – All members of the team work on specification, design, coding and testing Refactoring – No overall design – The design is modified while the product is being developed
  • 14. Slide 3.14 Evaluating XP XP has had some successes Good when requirements are vague or changing Too soon to evaluate XP
  • 15. Slide 3.15 Synchronize and Stabilize Model Microsoft’s life-cycle model Also based on the incremental 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 parallel
  • 16. Slide 3.16 Synchronize and Stabilize Model (contd) At the end of the day—synchronize (test and debug) At the end of each build—stabilize (freeze build) Components always work together – Get early insights into operation of product
  • 17. Slide 3.17 Spiral Model Simplified Waterfall model plus risk analysis – Uses rapid prototypes Precede each phase by – Alternatives – Risk analysis Follow each phase by – Evaluation – Planning of next phase
  • 18. Slide 3.18 Simplified Spiral Model If risks cannot be resolved, project is immediately terminated Potential risks – Timing constraints – Lack of personnel – Competence of team – Dependency on hardware delivery
  • 19. Slide 3.19 Full Spiral Model Radial dimension: cumulative cost to date Angular dimension: progress through the spiral
  • 20. Slide 3.20 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
  • 21. Slide 3.21 Object-Oriented Life-Cycle Models Need for iteration within and between phases – Fountain model [Henderson-Sellers and Edwards, 1990] – Recursive/parallel life cycle [Berard, 1993] – Unified software development process [Jacobson, Booch, and Rumbaugh, 1999] All incorporate some form of – Iteration – Parallelism – Incremental development Danger – CABTAB (undisciplined approach of s/w development, pg. 84)
  • 22. Slide 3.22 Fountain Model Circles (phases) Overlap (parallelism) Arrows (iteration) Smaller maintenance circle
  • 23. Slide 3.23 Conclusions 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 model