You are on page 1of 15

Syntel CQA Forum Life Cycle Models CQA Doc No 12

Definition
The Waterfall Model assumes that distinct phases of
development of a whole system exist for analysis,
preliminary design, detailed design, coding and unit test,
and system test.
Documentation produced at the end of each phase
provides the basis for work performed in the next phase of
development.
In the Waterfall Model, characterized by a single build of
software (one increment), the software development effort
must return to previous phases of development to fix
misunderstood or unstated requirements, design flaws,
and logical coding errors discovered in later phases of the
model.
Guidelines for selection
1 All capabilities are needed for first delivery
2 Risk of delivery is minimal
3 Requirements are complete, stable, and well understood
4 Technology is well understood
5 This model has its peak loading during the midpoint of the
development activity (the design and coding phase).
6 All funding and staffing are available at the beginning
Waterfall Model
System
Requirements
Analysis

System
Design

Software
Requirements
Analysis

Preliminary
Design

Detailed
Design

Coding and
Unit Test

Integration
and Testing

Formal
Qualification
Testing

10718234.xls Page
Syntel CQA Forum Life Cycle Models CQA Doc No 12

Definition
The Spiral Model adds risk analysis and prototyping
activities at the beginning of each phase defined in the
Waterfall Model to address the perceived risk areas of a
project
The Spiral Model focuses on significant areas of risk,
studies alternative solutions, and develops prototypes and
simulations to explore the strengths and weaknesses of
candidate solutions.
Some implementations of the Spiral Model suggest
incremental development of a system by completing its
component parts in sequence.
Guidelines for Selection
1 Applicable to high-risk programs where prototyping will be used to minimize risk
2 Requirements incomplete, unstable
3 Lack of DemVal Program
4 Applicable to large-scale projects
5 This model has relatively flat loading during the development activities.
Spiral Model

Determine
Objectives, Evaluate Alternatives,
Identify, Resolve Risks
Alternatives,
Constraints

Risk Analysis

Risk Analysis

Risk Analysis
Operational
Prototype
Risk Prototype 3
Analysis
Prototype 2
Commitment Prototype 1
Review
Partition Requirements Plan Simulations, Models, Benchmarks
Life-cycle Plan Concept of
Operation Softw are
Requirements Detailed Design
Softw are
Development
Requirements Product Unit
Plan Code
Validation Design Test

Integration Integration
& Test Plan Design Validation
And Verification & Test

Acceptance
Test
Implementation

Plan Develop, Verify


Next Phases Next Level Product

Doc 12 10718234.xls Page


Syntel CQA Forum Life Cycle Models Page

Definition
The Rapid Prototyping Model is designed to develop a
complete, unambiguous set of requirements early in the
analysis phase of the lifecycle by conducting frequent
reviews of a functional prototype by customers and users
during the analysis phase.
This approach hopes to avoid delaying the detection of
analysis and design problems to the integration and test
phase of development, where they are more expensive to
fix.
The developers create a prototype that exhibits their
understanding of customer requirements. The customers
and users review the prototype for conformance to their
view of how the system should operate. The prototype is
evolved until it becomes a dynamic operational
specification of the actual requirements.
Guidelines for Selection
1 This model has the highest loading early in the
development cycle, since it involves very intense customer
involvement during the early phases of development with
correspondingly low levels of activity during test and
integration.
2 Lack of DemVal program
3 Customer doesn’t fully understand requirements
Rapid Prototyping Model
Planning Analysis Prototyping Prelim. Detailed Tuning Test
Phases Design Design

Online Updated Final Software


Documentation Design Software Product
Document Product Specification
Preliminary Preliminary (CSCI)
Products System Req. Design
Document Document
Design Software Software
Project Requirements Prototype Design Test
Plan Documents Document Results
(SDP) or
Case Model
Working Software Software Final User
Prototype Test Plan Test Documentation
Procedures

System Preliminary Critical Test Formal


Reviews Req. Design Design Readiness Qualification
Review Review Review Review
Review

Software
Specification
Review
Baselines Allocated Product
Baseline Baseline

10718234.xls Page
Syntel CQA Forum Life Cycle Models CQA Doc No 12

Definition
The Incremental Model determines user needs and
defines the system requirements, then performs the rest of
the development in a sequence of builds.
The first build incorporates a subset of the system’s
planned capabilities; the next build adds more capabilities,
and so on, until the system is complete. This model allows
early delivery of functions to the customer as development
continues on other functions.
Guidelines for Selection
1 Early capability is needed, and not all capabilities are needed at first delivery
2 Requirements are well understood, and complete at the beginning of the program
3 Requirements are stable
4 System functionality breaks naturally into increments
5 Funding and staffing are not all available at beginning
6 This model has its peak loading early in the development cycle
Incremental Model
CSCI Build-1
Requirements
Analysis
System Preliminary
Requirements Design Detail
Analysis Design Software
Implementation
Software
CSCI Build-2 Integration
Software
System Preliminary Qualification
Design Design Detail Test
Design Software
Implementation
Software
CSCI Build-n Integration
Software Release to
Preliminary Qualification
Test
Customer
Design Detail
Design Software
Implementation
Software
Integration
Software
Qualification
Test

Dos 12 10718234.xls Page


Syntel CQA Forum Life Cycle Models Page

Definition
The Evolutionary Model, like the Incremental Model,
develops the system in builds, but differs from the
Incremental Model in acknowledging that the user need (or
some other aspect affecting the generation of system
requirements) is not fully understood and that all
requirements cannot be defined early in the development
cycle.
The system design may be evolving in parallel with the
software activities. In each build, new software
requirements are defined and the existing requirements
are refined. Rapid Prototyping may be used as an early
build with this method.
Guidelines for Selection
1 Early capability is needed
2 Not all capabilities are needed for first delivery
3 Not all requirements can be developed at once
4 Requirements are expected to change
5 User feedback of initial capability is needed to develop requirements
6 Technology development is needed to develop requirements
7 System functionality breaks naturally into increments
8 Funding and staffing are not all available at the beginning of the project
9 Prototyping is needed
10 This model has relatively flat loading during the development activities
Evolutionary Model
CSCI 1-Build 1
System Requirement
Requirements Analysis
Analysis Preliminary
Design
Detailed
Design
CSCI 1-Build 2 Software
Implementation
System Requirement & Integration Formal
Design Analysis
Qualification
Preliminary
Test
Design
Detailed
Design
CSCI 1-Build n Software
Requirement Implementation
Subsystem/
Analysis & Integration
Formal Element/
Preliminary Qualification
Design Segment
Test
Integration
Detailed
Design
Software
Implementation
& Integration
Formal
Qualification
Test

Evolutionary Page
Syntel CQA Forum Life Cycle Models Page

Waterfall Spiral Rapid Incremental


Advantages 1. The Waterfall 1. Early attention 1. The Rapid 1. The
Model is widely to options for the Prototyping Incremental
used on projects of use of existing Model is well Model delivers
all sizes software in the suited for the product to the
form of COTS or Demonstration customer
reusable and Validation earlier than
software phase of system some other
components procurement models.
and to IR&D
projects because
it produces a
working
prototype that
captures refined
requirements (a
live
requirements
document).

2. The model 2. This model 2. The Rapid 2. This strategy


provides a encourages the Prototyping models
disciplined, identification Model excels in situations
structured and evaluation developing a where the
approach to the of alternative complete set of system breaks
software solutions system naturally into
development requirements. increments.
process The Rapid
Prototyping
Model blurs the
distinction
between
analysis, design,
and coding to
overcome the
traditional
breaks between
these three
activities
3. The model 3. Mechanisms 3. This model is
provides an are provided for appropriate
accurate incorporating when the
document trail, software quality system is too
including revision objectives into large to do all
histories the software at once, or
product when funding
development or staffing will
process be provided in
increments.

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models Page

4. This method
allows the
identification of
all types of
objectives and
constraints
during each
round of the
spiral

5. This model
features flexible
management of
the software
lifecycle by
accommodating
a mix of software
development
methodologies
(e.g., structured
analysis, object
oriented,
prototyping, etc.)
6. The
opportunity to
evaluate
progress at each
phase of the
development
process is
provided by
assessing risk
and planning for
the next phase

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models Page

7. Each round
provides the
opportunity to
use simulations,
system models,
or prototypes to
evaluate system
concepts,
software
requirements,
and software
architectures.
This feature
accommodates
the evolutionary
prototyping
software
lifecycle model
and allows
simulation and
software
modeling tools to
be integrated
into the
development

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models Page

Evolutionary
1. The
Evolutionary
Model shows
early
capability.

2. This
strategy
anticipates
changes to
the system or
changes
because user
feedback and
monitoring
are necessary
to understand
the full
requirements.

3. This
strategy
models
situations
where the
system breaks
naturally into
increments

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models Page

4. This model
is appropriate
when the
system is too
large to do all
at once, or
when funding
or staffing will
be
incremental.
5. This model
is able to
utilize a Rapid
Prototyping
capability
effectively.

6. This
strategy
handles
anticipated
changes to
the system or
changes
because user
feedback and
monitoring is
provided to
understand
the full
requirements.

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models Page

Doc 12 Advantages Page


Syntel CQA Forum Life Cycle Models CQA Doc No 12

Waterfall Spiral Rapid Incremental


Disadvantages
1. The emphasis 1. Effort is 1. Effort is 1. The model is
on documents required to concentrated in not appropriate
being the elaborate the the analysis phase when the user
completion steps of the Spiral of development, wants to see full
criteria for the Model. which extends the capabilities at
phases of the Specifically, the time required to the first
Waterfall Model number of rounds complete analysis. delivery.
makes the of the spiral The schedule of
development needs to be activities and
process less identified dates for
flexible including the deliverables will
objectives and not conform to the
constraints of schedule that the
each round customer has
become
accustomed to for
the waterfall
model.
2. It assumes that The model relies 2. Since there is 2. The contents
requirements are on the ability of not a clean break and schedule
fully developed the software between analysis for builds must
early in the development and design, the be tightly
project. If team and developers must controlled to
requirements are software ensure that the ensure their
not well managers to requirements are integrity and
understood, there identify and formally quality.
is a risk that the manage project documented upon
final product may risks completion of the
not meet initial working
customer prototype.
expectations.
3. The model Each stage of the 3. The customer 3. Each
provides an spiral must be and the contractor successive build
accurate executed must revisit is dependent
document trail, consistently for previous upon the
including revision each round of the agreements previous build.
histories spiral in order to concerning what is
have a controlled to be delivered
and a well- from each phase.
managed
software
development
project.

Disadvantages Page
Syntel CQA Forum Life Cycle Models CQA Doc No 12

4. The model For the spiral 4. The model


relies on the model to be used relies on the
ability of the effectively, an ability of the
software organization must software
development have solid development
team and experience team and
software identifying, software
managers to prioritizing, and managers to
identify and mitigating risk identify and
manage project manage project
risks. It also risks. Cost
forces cost estimation and
estimation and project planning
project planning must be
to occur after only performed
a limited amount continuously
of analysis has throughout the
been performed. project.

Disadvantages Page
Syntel CQA Forum Life Cycle Models CQA Doc No 12

Evolutionary
1. The model is
not appropriate
when the
customer wants
the full
capabilities in
the first delivery.

2. Additional
effort must be
spent to ensure
that the
coordination
between the
builds is well
defined.

3. Each
successive build
is dependent
upon the success
of the previous
build.

Disadvantages Page
Syntel CQA Forum Life Cycle Models CQA Doc No 12

Disadvantages Page

You might also like