Professional Documents
Culture Documents
Lecture 3
Software Life-Cycle Steps
Life-cycle model (formerly, process model)
– Requirements phase
– Specification phase
– Design phase
– Implementation phase
– Integration phase
– Maintenance phase
– Retirement
Different Lifecycle Models
• 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
Build and Fix
Build first Model
version
Modify until
client is satisfied
Maintenance
phase
Development
Maintenance Retirement
Requirement
Definition Waterfall Model
System and
Software Design
Implementation
and Unit Testing
Integration and
System Testing
Operation and
Maintenance
Requirement
Definition Waterfall Model
System and
Software Design
Implementation
and Unit Testing
Integration and
System Testing
Operation and
Maintenance
Rapid
Prototyping Rapid Prototyping
Requirement
Model
Definition
System and
Software Design
Implementation
and Unit Testing
Integration and
System Testing
Operation and
Maintenance
The Process
Verify
Architectural design
Verify
Maintenance phase
Development
Maintenance Retirement
Incremental
Development
Model
Requirements phase
Incremental
Verify
Model
Specification phase
Verify
Architectural design
Verify
Maintenance phase
Development
Maintenance Retirement
Incremental Model (cont.)
Build 1
Implementation,
Specification Design Deliver to client
integration
Build 2
Implementation,
Specification Design Deliver to client
integration
Build 3
Implementation,
Specification Design Deliver to client
integration
Build n
Implementation,
Specification Design Deliver to client
integration
• Precede each
phase by
– Alternatives
– Risk analysis
• Follow each phase
by
– Evaluation
– Planning of
next phase
Simplified Spiral Model
Risk
• If risks cannot be Analysis
resolved, project
is immediately
terminated
Rapid Prototype
Specification
Design
Implementation
Verify
Integration
Full Spiral Model