SDLC
SDLC
7
• The prototype may be a usable program
but is not suitable as the final software
product.
• The code for the prototype is thrown
away. However experience gathered helps
in developing the actual system.
• The development of a prototype might
involve extra cost, but overall cost might
turnout to be lower than that of an
equivalent system developed using the
waterfall model.
Prototyping Model
Feasibility study
Requirement Gathering
Quick Design
Customer Evaluation
Design
Implement
Test
Maintain
9
Prototyping Model
• After finalization of software requirement
and specification (SRS) document , the
prototype is discarded and actual system
is then developed using the waterfall
approach.
Advantage &
limitations of Prototyping Models
Advantage
• Suitable for large systems for which there is no
manual process to define there requirements.
• Quality of software is good.
• Requirements are not freezed.
Limitations of Prototyping Model
• Requires extensive participation and
involvement of the customer, which is not always
possible
Spiral Model
• Models do not deal with uncertainly which is
inherent to software projects.
• Important software projects have failed because
project risks were neglected & nobody was
prepared when something unforeseen
happened.
• Barry Boehm recognized this and incorporated
the “project risk” factor into a life cycle model.
• The result is the spiral model, which was
presented in 1986.
Spiral Model
• Process is represented as a spiral rather than
as a sequence of activities with backtracking
• Each loop in the spiral represents a phase in
the process.
• No fixed phases such as specification or
design - loops in the spiral are chosen
depending on what is required
• Risks are explicitly assessed and resolved
throughout the process
Spiral Model
• Activities are organized in a spiral having many cycles
• Four quadrants in each cycle
Spiral model of the software process
Determine objectives
Evaluate alternatives
alternatives and identify, resolve risks
constraints Risk
analysis
Risk
analysis
Risk
analysis Opera-
Prototype 3 tional
Prototype 2 protoype
Risk
REVIEW analy sis Proto-
type 1
Requirements plan Simulations, models, benchmarks
Life-cycle plan Concept of
Operation S/W
requirements Product
design Detailed
Requirement design
Development
plan validation Code
Design Unit test
Integration
and test plan V&V Integr ation
Plan next phase test
Acceptance
Service test Develop, verify
next-level product
• The radial dimension of the model
represents the cumulative costs.
• Each path around the spiral is indicative of
increased costs.
• The angular dimension represents the
progress made in completing each cycle.
• Each loop of the spiral from X-axis
clockwise through 360o represents one
phase.
• One phase is split roughly into four
sectors of major activities.
Spiral model sectors
• Objective setting
– Specific objectives for the phase are identified
• Risk assessment and reduction
– Risks are assessed and activities put in place to
reduce the key risks
• Development and validation
– A development model for the system is chosen
which can be any of the generic models
• Planning
– The project is reviewed and the next phase of
the spiral is planned
Limitations & Advantages of Spiral Model
Limitations of Spiral Model
• Lack of explicit process guidance in determining
objectives, constraints, alternatives.
• Relying on risk assessment expertise
• Provides more flexibility than required for many
applications.
Advantages of Spiral Model
• It uses wide range of options to accommodate
the good features of other life cycle models.
• It becomes equivalent to another life cycle
model in appropriate situations.
Increment process models
Initial
Specification version
Outline Intermedia te
description Development versions
Final
Valida tion version
Evolutionary Development…
• Advantages:
– Deals constantly with changes
– Provides quickly an initial version of the system
– Involves all development teams
• Disadvantages:
– Quick fixes may be involved
– “Invisible” process, not well-supported by
documentation
– The system’s structure can be corrupted by
continuous change