SlideShare uma empresa Scribd logo
1 de 45
1
Software life cycle model
 software life cycle

series of identifiable stages that a software
product undergoes during its lifetime
software life cycle model
It is a descriptive and diagrammatic
representation of software life cycle

2
Why Software life cycle model?
It encourages development of s/w in a systematic and

discipline way

It is necessary to have precise understanding among

team members otherwise it will lead to chaos and
project failure

3
PHASE ENTRY AND EXIT CRITERIA

 Every software life cycle model normally define entry

and exit criteria every phase

 A phase can begin only when corresponding phase

entry are satisfied

4
99% complete syndrome
 When there is no clear specification of the entry and

exit criteria for every phase and if no life cycle model
is followed

 It becomes very difficult to chart the progress of the

project

5
Software process model
Attempt to organize the software life cycle by
defining activities involved in software production
 order of activities and their relationships


Goals of a software process
standardization, predictability, productivity, high

product quality, ability to plan time and budget
requirements
Code&Fix
The earliest approach
 Write code
 Fix it to eliminate any errors that have been
detected, to enhance existing functionality, or to
add new features
 Source of difficulties and deficiencies



impossible to predict
impossible to manage
Models are needed
Symptoms of inadequacy: the software crisis
scheduled time and cost exceeded
user expectations not met
poor quality
The size and economic value of software

applications required appropriate "process models"
The Waterfall Model

9
Waterfall Model Assumptions
1. The requirements are knowable in advance of

2.

3.

4.
5.

implementation.
The nature of the requirements will not change very
much
 During development; during evolution
The requirements are compatible with all the key
system stakeholders’ expectations
 e.g., users, customer, developers, maintainers,
investors
The right architecture for implementing the
requirements is well understood.
There is enough calendar time to proceed
sequentially.
10
Process for Offshore?
Analysis

Design

Construct

System test
Accept. test
Deploy
11
12
Disadvantages of waterfall
model

 Real projects rarely follow sequential flow

 Difficult for the customer to state all requirements
 Customer to show patience. Working version of

program will not be available until late in the project

13
Evolutionary Models:
Prototyping

14
Prototyping model

This begins with requirement gathering . Developer

and customer meet and define overall objectives for
the s/w
Then quick design occurs which focus on
representation of those aspects of the s/w that are
visible to customer
After the quick design prototype is build and then
evaluated and feedback given

15
16
Evolutionary process models
All the linear sequential models are design for

straight line development
In waterfall model complete system will be delivered
after linear sequence is completed
The prototyping is designed to assist the customer in
understanding requirements

17
Incremental Models:
Incremental

18
Incremental model

The incremental model combines elements of linear

sequential model with iterative nature of prototyping
For example: word processing s/w
First increment product is core product which is used
by customer in which modifications he can add
The process is repeated until the complete product is
produced

19
Usefulness of the model
 When staffing unavailable for whole complete

implementation by business deadline
 Increments can be planned to manage technical
risks
 Best when: you encounter a difficult deadline that
cant be changed

20
If we rely on testing alone, defects created

first are detected last
User
Need

system test plan
System
System
Requirements
Testing
software test plan Software
Software
Requirements
Testing
integration plan
Software
Integration
Design
Testing
unit plan
Software
Unit
Implementation
Testing

time

Product
Release

21
Incremental Models: RAD Model

22
Risk
Exposur
e

23
Unified
A software process that is:
Process
use-case driven
Model
architecture-centric




iterative and incremental

Closely aligned with the
Unified Modeling Language (UML)

24
The Unified Process (UP)

inception

25
UP Work Products

inception

26
Lifecycle for Enterprise Unified Process

inception

27
Synchronize-and Stabilize Model
 Microsoft’s life-cycle 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

28
Synchronize-and Stabilize Model
(contd)
 At the end of the day—synchronize (test and

debug)
 At the end of the build—stabilize (freeze build)
 Components always work together
› Get early insights into operation of product

29
Evolutionary Models:
The Spiral

30
Spiral Model
Simplified form
 Waterfall model plus

risk analysis

Precede each phase

by

 Alternatives
 Risk analysis

Follow each phase

by

 Evaluation
 Planning of next

phase

31
Simplified Spiral Model
If risks

cannot be
resolved,
project is
immediately
terminated

32
Full Spiral Model
Radial dimension: cumulative cost to date
Angular dimension: progress through the

spiral

33
Full Spiral Model (contd)

34
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

35
Object-Oriented Life-Cycle
Models
Need for iteration within and between phases
 Fountain model
 Recursive/parallel life cycle
 Round-trip gestalt
 Unified software development process

All incorporate some form of
 Iteration
 Parallelism
 Incremental development

Danger
 CABTAB
36
Fountain Model
Features
Overlap

(parallelism)
Arrows (iteration)
Smaller
maintenance circle

37
Software Process Spectrum
Crystal Clear
XP

DSDM
SCRUM dX

lightweight

ICONIX
FDD
middleweight

Crystal Violet

OPEN
EUP

RUP
heavyweight

38
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
39
40
What is MDA in essence?
Automated approach to translate high level

design to low level implementation by means of
separation of concerns

From high-level model to running application
Risk proportional to expectations!
41
Finding the “right” language
Developer
IDEs & 4GL
3GL

Automation

Abstraction

Model Driven Architecture

Assembler

Computer Hardware
42
Martin Fowler

43
Model Driven Architecture
Can you actually have incremental MDA?
Or is it automated waterfall?
Need rigorous models
Need high quality requirements
Capture requirements
Understand requirements

44
MDA or Offshore?
Automation versus reduce cost of labor
Objectives
Reduce required intelligence
Increase repetition
Goal
Reduce costs of development

45

Mais conteúdo relacionado

Mais procurados

Comparison of Software Engineering Models
Comparison of Software Engineering  ModelsComparison of Software Engineering  Models
Comparison of Software Engineering Models
tahir iqbal
 
Chap2
Chap2Chap2
Chap2
Niit
 
RAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software EngineeringRAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software Engineering
Umeed Charity
 
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
Shaikh Kamrul Islam (Konok kamrul)
 
SOFTWARE LIFECYLE MODELS
SOFTWARE LIFECYLE MODELSSOFTWARE LIFECYLE MODELS
SOFTWARE LIFECYLE MODELS
guest1c0da72
 

Mais procurados (19)

Evolutionary models
Evolutionary modelsEvolutionary models
Evolutionary models
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
V model presentation
V model presentationV model presentation
V model presentation
 
A detailed-look-at-v-model-in-software-testing
A detailed-look-at-v-model-in-software-testingA detailed-look-at-v-model-in-software-testing
A detailed-look-at-v-model-in-software-testing
 
Comparison of Software Engineering Models
Comparison of Software Engineering  ModelsComparison of Software Engineering  Models
Comparison of Software Engineering Models
 
comparison of various sdlc models
comparison of various sdlc modelscomparison of various sdlc models
comparison of various sdlc models
 
Software process model
Software process modelSoftware process model
Software process model
 
Chap2
Chap2Chap2
Chap2
 
V model by_sandeep
V model by_sandeepV model by_sandeep
V model by_sandeep
 
RAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software EngineeringRAD Model & Prototyping Of Software Engineering
RAD Model & Prototyping Of Software Engineering
 
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
 
Software Development Life Cycle - SDLC
Software Development Life Cycle - SDLCSoftware Development Life Cycle - SDLC
Software Development Life Cycle - SDLC
 
SDLC
SDLCSDLC
SDLC
 
SDLC
SDLCSDLC
SDLC
 
SOFTWARE LIFECYLE MODELS
SOFTWARE LIFECYLE MODELSSOFTWARE LIFECYLE MODELS
SOFTWARE LIFECYLE MODELS
 
SDLC
SDLCSDLC
SDLC
 
Software development life cycle Construction phase
Software development life cycle Construction phaseSoftware development life cycle Construction phase
Software development life cycle Construction phase
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 

Semelhante a Software engg. pressman_ch-3

61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx
SuhleemAhmd
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process models
Tauseef Ahmad
 
Sdlc process document
Sdlc process documentSdlc process document
Sdlc process document
Pesara Swamy
 

Semelhante a Software engg. pressman_ch-3 (20)

Process models
Process modelsProcess models
Process models
 
2-models.pptx
2-models.pptx2-models.pptx
2-models.pptx
 
SDLC (Software development life Cycle)
SDLC (Software development life Cycle)SDLC (Software development life Cycle)
SDLC (Software development life Cycle)
 
61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process models
 
Lesson 2 introduction in computing
Lesson 2 introduction in computingLesson 2 introduction in computing
Lesson 2 introduction in computing
 
software development life cycle(SDLC)
software development life cycle(SDLC)software development life cycle(SDLC)
software development life cycle(SDLC)
 
Process Model in Software Engineering.ppt
Process Model in Software Engineering.pptProcess Model in Software Engineering.ppt
Process Model in Software Engineering.ppt
 
SDLC
SDLCSDLC
SDLC
 
Waterfall, Spiral and iterative model
Waterfall, Spiral and iterative modelWaterfall, Spiral and iterative model
Waterfall, Spiral and iterative model
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 
I
II
I
 
Lecture-3-SDLC Models-part1.pptx
Lecture-3-SDLC Models-part1.pptxLecture-3-SDLC Models-part1.pptx
Lecture-3-SDLC Models-part1.pptx
 
Software engineering the process
Software engineering the processSoftware engineering the process
Software engineering the process
 
MODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENTMODELS USED IN SOFTWARE DEVELOPMENT
MODELS USED IN SOFTWARE DEVELOPMENT
 
SDLC presentation-1.pptx
SDLC presentation-1.pptxSDLC presentation-1.pptx
SDLC presentation-1.pptx
 
Sdlc process document
Sdlc process documentSdlc process document
Sdlc process document
 
The process
The processThe process
The process
 
Software development life cycle (SDLC) Models
Software development life cycle (SDLC) ModelsSoftware development life cycle (SDLC) Models
Software development life cycle (SDLC) Models
 
System Development
System  DevelopmentSystem  Development
System Development
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Software engg. pressman_ch-3

  • 1. 1
  • 2. Software life cycle model  software life cycle series of identifiable stages that a software product undergoes during its lifetime software life cycle model It is a descriptive and diagrammatic representation of software life cycle 2
  • 3. Why Software life cycle model? It encourages development of s/w in a systematic and discipline way It is necessary to have precise understanding among team members otherwise it will lead to chaos and project failure 3
  • 4. PHASE ENTRY AND EXIT CRITERIA  Every software life cycle model normally define entry and exit criteria every phase  A phase can begin only when corresponding phase entry are satisfied 4
  • 5. 99% complete syndrome  When there is no clear specification of the entry and exit criteria for every phase and if no life cycle model is followed  It becomes very difficult to chart the progress of the project 5
  • 6. Software process model Attempt to organize the software life cycle by defining activities involved in software production  order of activities and their relationships  Goals of a software process standardization, predictability, productivity, high product quality, ability to plan time and budget requirements
  • 7. Code&Fix The earliest approach  Write code  Fix it to eliminate any errors that have been detected, to enhance existing functionality, or to add new features  Source of difficulties and deficiencies   impossible to predict impossible to manage
  • 8. Models are needed Symptoms of inadequacy: the software crisis scheduled time and cost exceeded user expectations not met poor quality The size and economic value of software applications required appropriate "process models"
  • 10. Waterfall Model Assumptions 1. The requirements are knowable in advance of 2. 3. 4. 5. implementation. The nature of the requirements will not change very much  During development; during evolution The requirements are compatible with all the key system stakeholders’ expectations  e.g., users, customer, developers, maintainers, investors The right architecture for implementing the requirements is well understood. There is enough calendar time to proceed sequentially. 10
  • 12. 12
  • 13. Disadvantages of waterfall model  Real projects rarely follow sequential flow  Difficult for the customer to state all requirements  Customer to show patience. Working version of program will not be available until late in the project 13
  • 15. Prototyping model This begins with requirement gathering . Developer and customer meet and define overall objectives for the s/w Then quick design occurs which focus on representation of those aspects of the s/w that are visible to customer After the quick design prototype is build and then evaluated and feedback given 15
  • 16. 16
  • 17. Evolutionary process models All the linear sequential models are design for straight line development In waterfall model complete system will be delivered after linear sequence is completed The prototyping is designed to assist the customer in understanding requirements 17
  • 19. Incremental model The incremental model combines elements of linear sequential model with iterative nature of prototyping For example: word processing s/w First increment product is core product which is used by customer in which modifications he can add The process is repeated until the complete product is produced 19
  • 20. Usefulness of the model  When staffing unavailable for whole complete implementation by business deadline  Increments can be planned to manage technical risks  Best when: you encounter a difficult deadline that cant be changed 20
  • 21. If we rely on testing alone, defects created first are detected last User Need system test plan System System Requirements Testing software test plan Software Software Requirements Testing integration plan Software Integration Design Testing unit plan Software Unit Implementation Testing time Product Release 21
  • 24. Unified A software process that is: Process use-case driven Model architecture-centric    iterative and incremental Closely aligned with the Unified Modeling Language (UML) 24
  • 25. The Unified Process (UP) inception 25
  • 27. Lifecycle for Enterprise Unified Process inception 27
  • 28. Synchronize-and Stabilize Model  Microsoft’s life-cycle 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 28
  • 29. Synchronize-and Stabilize Model (contd)  At the end of the day—synchronize (test and debug)  At the end of the build—stabilize (freeze build)  Components always work together › Get early insights into operation of product 29
  • 31. Spiral Model Simplified form  Waterfall model plus risk analysis Precede each phase by  Alternatives  Risk analysis Follow each phase by  Evaluation  Planning of next phase 31
  • 32. Simplified Spiral Model If risks cannot be resolved, project is immediately terminated 32
  • 33. Full Spiral Model Radial dimension: cumulative cost to date Angular dimension: progress through the spiral 33
  • 34. Full Spiral Model (contd) 34
  • 35. 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 35
  • 36. Object-Oriented Life-Cycle Models Need for iteration within and between phases  Fountain model  Recursive/parallel life cycle  Round-trip gestalt  Unified software development process All incorporate some form of  Iteration  Parallelism  Incremental development Danger  CABTAB 36
  • 38. Software Process Spectrum Crystal Clear XP DSDM SCRUM dX lightweight ICONIX FDD middleweight Crystal Violet OPEN EUP RUP heavyweight 38
  • 39. 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 39
  • 40. 40
  • 41. What is MDA in essence? Automated approach to translate high level design to low level implementation by means of separation of concerns From high-level model to running application Risk proportional to expectations! 41
  • 42. Finding the “right” language Developer IDEs & 4GL 3GL Automation Abstraction Model Driven Architecture Assembler Computer Hardware 42
  • 44. Model Driven Architecture Can you actually have incremental MDA? Or is it automated waterfall? Need rigorous models Need high quality requirements Capture requirements Understand requirements 44
  • 45. MDA or Offshore? Automation versus reduce cost of labor Objectives Reduce required intelligence Increase repetition Goal Reduce costs of development 45

Notas do Editor

  1. Moving up the abstraction tree What are we building rather then how Separation of concerns What-from-how