software engineering ii lecture 3 fakhar lodhi. software life-cycle steps life-cycle model...
TRANSCRIPT
Software Engineering II
Lecture 3
Fakhar Lodhi
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 ModelBuild first
version
Modify until client is satisfied
Maintenance phase
RetirementDevelopment
Maintenance
Waterfall ModelRequirement
Definition
System and Software Design
Implementationand Unit Testing
Integration andSystem Testing
Operation andMaintenance
Waterfall ModelRequirement
Definition
System and Software Design
Implementationand Unit Testing
Integration andSystem Testing
Operation andMaintenance
Rapid Prototyping
ModelRequirementDefinition
System and Software Design
Implementationand Unit Testing
Integration andSystem Testing
Operation andMaintenance
Rapid Prototyping
The Process
• A software process is a road map that helps you create a timely, high quality result.
• It is the way we produce software• Provides stability and control• Work Product
– Programs, documents, and data produced as a consequence of the software engineering activities
INITIAL – Ad hoc Process
REPEATABLE – Project Management
DEFINED – Process Definition
MANAGED – Process Measurement
OPTIMIZED – Process Improvement
CMM Maturity Levels
1. Vision – focus on why2. Definition – focus on what2. Development – focus on how3. Maintenance – focus on change
Software Engineering Phases
Vision Definition Development Maintenance
Software Lifecycle Models
• The way you organize your activities• Lifecycle model is a series of steps through which
the product progresses
Incremental Model
For each build:Perform detailed design, implementation and integration,test, deliver to client
Maintenance phase
Requirements phase
Verify
Specification phase
Verify
Architectural design
Verify
Retirement
Development
Maintenance
Incremental Development
Model
Recap