software engineering ii lecture 3 fakhar lodhi. software life-cycle steps life-cycle model...

14
Software Engineering II Lecture 3 Fakhar Lodhi

Upload: myrtle-cole

Post on 04-Jan-2016

255 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Software Engineering II

Lecture 3

Fakhar Lodhi

Page 2: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Software Life-Cycle Steps

Life-cycle model (formerly, process model)

– Requirements phase– Specification phase– Design phase– Implementation phase– Integration phase– Maintenance phase– Retirement

Page 3: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

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

Page 4: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Build and Fix ModelBuild first

version

Modify until client is satisfied

Maintenance phase

RetirementDevelopment

Maintenance

Page 5: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Waterfall ModelRequirement

Definition

System and Software Design

Implementationand Unit Testing

Integration andSystem Testing

Operation andMaintenance

Page 6: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Waterfall ModelRequirement

Definition

System and Software Design

Implementationand Unit Testing

Integration andSystem Testing

Operation andMaintenance

Page 7: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Rapid Prototyping

ModelRequirementDefinition

System and Software Design

Implementationand Unit Testing

Integration andSystem Testing

Operation andMaintenance

Rapid Prototyping

Page 8: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

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

Page 9: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

INITIAL – Ad hoc Process

REPEATABLE – Project Management

DEFINED – Process Definition

MANAGED – Process Measurement

OPTIMIZED – Process Improvement

CMM Maturity Levels

Page 10: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

1. Vision – focus on why2. Definition – focus on what2. Development – focus on how3. Maintenance – focus on change

Software Engineering Phases

Vision Definition Development Maintenance

Page 11: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Software Lifecycle Models

• The way you organize your activities• Lifecycle model is a series of steps through which

the product progresses

Page 12: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

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

Page 13: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Incremental Development

Model

Page 14: Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification

Recap