You are on page 1of 7

Fig. 1.

Each loop in a spiral represents a development phase (and we can have any number of loops
according to the project). Each loop has four sections or quadrants :

1. To determine the objectives, alternatives and constraints. We try to understand the
product objectives, alternatives in design and constraints imposed because of cost,
technology, schedule, etc.
2. Risk analysis and evaluation of alternatives. Here we try to find which other approaches
can be implemented in order to fulfill the identified constraints. Operational and technical
issues are addressed here. Risk mitigation is in focus in this phase. And evaluation of all
these factors determines future action.
3. Execution of that phase of development. In this phase we develop the planned product.
Testing is also done. In order to do development, waterfall or incremental approach can be
implemented. 
4. Planning the next phase. Here we review the progress and judge it considering all
parameters. Issues which need to be resolved are identified in this phase and necessary
steps are taken. 

The Spiral is visualized as a process passing through some number of iterations, with the
four quadrant diagram representative of the following activities:

1. Formulate plans to: identify software targets, implement the program, clarify the
project development restrictions
2. Risk analysis: an analytical assessment of selected programs, to consider how to
identify and eliminate risk
3. Implementation of the project: the implementation of software development and
verification

1. The spiral model emphasizes risk analysis, and thus requires customers to accept this
analysis and act on it. This requires both trust in the developer as well as the
willingness to spend more to fix the issues, which is the reason why this model is
often used for large-scale internal software development.
2. If the implementation of risk analysis will greatly affect the profits of the project, the
spiral model should not be used.
3. Software developers have to actively look for possible risks, and analyze it accurately
for the spiral model to work.

The steps in the spiral model iteration can be generalized as follows: 


The system requirements are defined in as much detail as possible. This usually involves
interviewing a number of users representing all the external or internal users and other
aspects of the existing system. 
A preliminary design is created for the new system. This phase is the most important
part of "Spiral Model". In this phase all possible (and available) alternatives, which can
help in developing a cost effective project are analyzed and strategies to use them are
decided. This phase has been added specially in order to identify and resolve all the
possible risks in the project development. If risks indicate any kind of uncertainty in
requirements, prototyping may be used to proceed with the available data and find out
possible solution in order to deal with the potential changes in the requirements. 
A first prototype of the new system is constructed from the preliminary design. This is
usually a scaled-down system, and represents an approximation of the characteristics of
the final product. 
A second prototype is evolved by a fourfold procedure: 
evaluating the first prototype in terms of its strengths, weaknesses, and risks; 
defining the requirements of the second prototype; 
planning and designing the second prototype; 
constructing and testing the second prototype. 

The first stage is to formulate a plan to achieve the objectives with these constraints, and
then strive to find and remove all potential risks through careful analysis and, if necessary,
by constructing a prototype. If some risks can not be ruled out, the customer has to decide
whether to terminate the project or to ignore the risks and continue anyway. Finally, the
results are evaluated and the design of the next phase begins.

Iterative and incremental development

Main article: Iterative and incremental development

Iterative development[2] prescribes the construction of initially small but ever-larger portions
of a software project to help all those involved to uncover important issues early before
problems or faulty assumptions can lead to disaster.

Subsequent loops of spiral model involve similar phases. Analysis and engineering efforts
are applied in this model. Large, expensive or complicated projects use this type of life cycle.
If at any point of time one feels the risk involved in the project is a lot more than
anticipated, one can abort it. Reviews at different phases can be done by an in-house person
or by an external client.
Spiral model (Boehm,
1988).
Main article: Spiral model

The key characteristic of a Spiral model is risk management at regular stages in the
development cycle. In 1988, Barry Boehm published a formal software system development
"spiral model," which combines some key aspect of the waterfall model and rapid
prototyping methodologies, but provided emphasis in a key area many felt had been
neglected by other methodologies: deliberate iterative risk analysis, particularly suited to
large-scale complex systems.

The Spiral is visualized as a process passing through some number of iterations, with the four
quadrant diagram representative of the following activities:

4. Formulate plans to: identify software targets, implement the program, clarify the
project development restrictions
5. Risk analysis: an analytical assessment of selected programs, to consider how to
identify and eliminate risk
6. Implementation of the project: the implementation of software development and
verification

Risk-driven spiral model, emphasizing the conditions of options and constraints in order to
support software reuse, software quality can help as a special goal of integration into the
product development. However, the spiral model has some restrictive conditions, as follows:
4. The spiral model emphasizes risk analysis, and thus requires customers to accept this
analysis and act on it. This requires both trust in the developer as well as the
willingness to spend more to fix the issues, which is the reason why this model is
often used for large-scale internal software development.
5. If the implementation of risk analysis will greatly affect the profits of the project, the
spiral model should not be used.
6. Software developers have to actively look for possible risks, and analyze it accurately
for the spiral model to work.

The first stage is to formulate a plan to achieve the objectives with these constraints, and then
strive to find and remove all potential risks through careful analysis and, if necessary, by
constructing a prototype. If some risks can not be ruled out, the customer has to decide
whether to terminate the project or to ignore the risks and continue anyway. Finally, the
results are evaluated and the design of the next phase begins.

Iterative and incremental development

Main article: Iterative and incremental development

Iterative development[2] prescribes the construction of initially small but ever-larger portions
of a software project to help all those involved to uncover important issues early before
problems or faulty assumptions can lead to disaster.

spiral model (spiral lifecycle model)

The spiral model, also known as the spiral lifecycle model, is a systems development
lifecycle (SDLC) model used in information technology (IT). This model of development
combines the features of the prototyping model and the waterfall model. The spiral model is
favored for large, expensive, and complicated projects.

The steps in the spiral model can be generalized as follows:

1. The new system requirements are defined in as much detail as possible. This usually
involves interviewing a number of users representing all the external or internal users
and other aspects of the existing system.
2. A preliminary design is created for the new system.
3. A first prototype of the new system is constructed from the preliminary design. This is
usually a scaled-down system, and represents an approximation of the characteristics
of the final product.
4. A second prototype is evolved by a fourfold procedure: (1) evaluating the first
prototype in terms of its strengths, weaknesses, and risks; (2) defining the
requirements of the second prototype; (3) planning and designing the second
prototype; (4) constructing and testing the second prototype.
5. At the customer's option, the entire project can be aborted if the risk is deemed too
great. Risk factors might involve development cost overruns, operating-cost
miscalculation, or any other factor that could, in the customer's judgment, result in a
less-than-satisfactory final product.
6. The existing prototype is evaluated in the same manner as was the previous prototype,
and, if necessary, another prototype is developed from it according to the fourfold
procedure outlined above.
7. The preceding steps are iterated until the customer is satisfied that the refined
prototype represents the final product desired.
8. The final system is constructed, based on the refined prototype.
9. The final system is thoroughly evaluated and tested. Routine maintenance is carried
out on a continuing basis to prevent large-scale failures and to minimize downtime.

What is the Spiral Model?


The Spiral Life Cycle Model is a type of iterative software development model which is
generally implemented in high risk projects. It was first proposed by Boehm. In this system
development method, we combine the features of both, waterfall model and prototype
model. In Spiral model we can arrange all the activities in the form of a spiral.

Each loop in a spiral represents a development phase (and we can have any number of loops
according to the project). Each loop has four sections or quadrants :
1. To determine the objectives, alternatives and constraints. We try to understand the
product objectives, alternatives in design and constraints imposed because of cost,
technology, schedule, etc.
2. Risk analysis and evaluation of alternatives. Here we try to find which other approaches
can be implemented in order to fulfill the identified constraints. Operational and technical
issues are addressed here. Risk mitigation is in focus in this phase. And evaluation of all
these factors determines future action.
3. Execution of that phase of development. In this phase we develop the planned product.
Testing is also done. In order to do development, waterfall or incremental approach can be
implemented.
4. Planning the next phase. Here we review the progress and judge it considering all
parameters. Issues which need to be resolved are identified in this phase and necessary
steps are taken.

Subsequent loops of spiral model involve similar phases. Analysis and engineering efforts
are applied in this model. Large, expensive or complicated projects use this type of life cycle.
If at any point of time one feels the risk involved in the project is a lot more than
anticipated, one can abort it. Reviews at different phases can be done by an in-house person
or by an external client.

Why spiral model is called meta model?


Spiral model is also called as meta-model because in a way it comprises of other models of
SDLC. Both waterfall and prototype models are used in it. Here we do software
development systematically over the loops (adhering to waterfall approach) and at the
same time we make a prototype and show it to user after completion of various phase (just
in case of prototype model). This way we are able to reduce risks as well as follow
systematic approach.
Now let’s discuss the advantages and disadvantages of Spiral Model in detail.

Spiral Model Diagram

Limitations of Spiral Model


The limitations of the spiral model are :-

 No particular beginning or end of a particular phase.


 No strict standards for software development

By and large it is apparent that the Spiral Model is suitable for large software development
projects. Important project details can be estimated earlier than in other models and once
the customer is satisfied, the final system can then be constructed based on the very last
prototype.

REFERENCES

Agarwal, B.B., Tayal, S.P., Gupta M.(2010) Software Engineering And Testing, Massachusetts:
Jones and
Bartlett
Boehm, B.W. (1989) Tutorial: Software Risk Management, IEEE Computer Society, Catalog
No. ISBN-
0-81 86-8906-4
Sommerville, I. (2011) Software Engineering 9th ed, Boston: Pearson Education
Tutor (2011) Spiral Model, Available at www.sdlc.ws/spiral-model

You might also like