Lecture 7
Lecture 7
CS-251
Lecture 7
•The Spiral Model is one of the most important Software Development Life
Cycle models. It is a combination of the waterfall model and the iterative
mode and also provides support for Risk Handling. The Spiral Model was
first proposed by Barry Boehm.
•It provides a systematic and iterative approach to software development. In
its diagrammatic representation, looks like a spiral with many loops. The exact
number of loops of the spiral is unknown and can vary from project to project.
Each loop of the spiral is called a phase of the software development process.
2
What is Spiral Model in Software Engineering
3
What are the Phases of the Spiral Model?
The Spiral Model is a risk-driven model, meaning that the focus is on managing risk
through multiple iterations of the software development process. It consists of the
following phases:
1. Objectives Defined: In the first phase of the spiral model, we clarify what the project
aims to achieve, including functional and non-functional requirements.
2. Risk Analysis: In the risk analysis phase, the risks associated with the project are
identified and evaluated.
3. Engineering: In the engineering phase, the software is developed based on the
requirements gathered in the previous iteration.
4
What are the Phases of the Spiral Model?
3. Develop the next version of the Product: During the third quadrant, the
identified features are developed and verified through testing. At the end
of the third quadrant, the next version of the software is available.
4. Review and plan for the next Phase: In the fourth quadrant, the
Customers evaluate the so-far developed version of the software. In the
end, planning for the next phase is started.
8
Risk Handling in Spiral Model
•A risk is any adverse situation that might affect the successful completion of a software
project. The most important feature of the spiral model is handling these unknown risks after
the project has started. Such risk resolutions are easier done by developing a prototype.
1. The spiral model supports coping with risks by providing the scope to build a prototype at
every phase of software development.
2. The Prototyping Model also supports risk handling, but the risks must be identified
completely before the start of the development work of the project.
3. But in real life, project risk may occur after the development work starts, in that case, we
cannot use the Prototyping Model.
9
Risk Handling in Spiral Model
4. In each phase of the Spiral Model, the features of the product dated
and analyzed, and the risks at that point in time are identified and are
resolved through prototyping.
5. Thus, this model is much more flexible compared to other SDLC
models.
10
Why is Spiral Model called Meta Model?
•The Spiral model is called a Meta-Model because it includes all the other SDLC
models. For example, a single loop spiral actually represents the Iterative Waterfall
Model.
1. The spiral model incorporates the stepwise approach of the Classical Waterfall
Model.
2. The spiral model uses the approach of the Prototyping Model by building a
prototype at the start of each phase as a risk-handling technique.
3. Also, the spiral model can be considered as supporting the Evolutionary model –
the iterations along the spiral can be considered as evolutionary levels through
which the complete system is built. 11
Example of Spiral Model
12
Real-Life Example of Spiral Model: Developing an E-Commerce Website
Second Spiral – Risk Analysis and Refining the Design: After gathering feedback
from the prototype, the next spiral focuses on adding more features and fixing early
issues. The team addresses security risks, such as secure payment processing, and tests
how well the site handles increasing user traffic.
o Example: A basic shopping cart and user registration system are added. The
payment system is also tested with dummy transactions to ensure security.
13
Real-Life Example of Spiral Model: Developing an E-Commerce
Website
Third Spiral – Detailed Implementation: With more feedback, the team further refines
the design, adding advanced features like order tracking, customer reviews, and search
functionality. Risks like scalability (handling many users) are re-evaluated, and more
testing is conducted.
o Example: The website now supports user profiles, product reviews, and real-time
inventory updates. The team tests how the system handles large volumes of orders
during peak times.
14
Real-Life Example of Spiral Model: Developing an E-Commerce
Website
15
Advantages of the Spiral Model
1. Risk Handling: The projects with many unknown risks that occur as the development proceeds,
in that case, Spiral Model is the best development model to follow due to the risk analysis and
risk handling at every phase.
2. Good for large projects: It is recommended to use the Spiral Model in large and complex
projects.
3. Flexibility in Requirements: Change requests in the Requirements at a later phase can be
incorporated accurately by using this model.
4. Customer Satisfaction: Customers can see the development of the product at the early phase of
the software development and thus, they familiar with the system by using it before completion of
the total product.
16
Advantages of the Spiral Model
5. Iterative and Incremental Approach: The Spiral Model provides an iterative and
incremental approach to software development, allowing for flexibility and adaptability in
response to changing requirements or unexpected events.
6. Emphasis on Risk Management: The Spiral Model places a strong emphasis on risk
management, which helps to minimize the impact of uncertainty and risk on the software
development process.
7. Improved Communication: The Spiral Model provides for regular evaluations and
reviews, which can improve communication between the customer and the development team.
8. Improved Quality: The Spiral Model allows for multiple iterations of the software
development process, which can result in improved software quality and reliability
17
Disadvantages of the Spiral Model
1. Complex: The Spiral Model is much more complex than other SDLC models.
2. Expensive: Spiral Model is not suitable for small projects as it is expensive.
3. Too much dependability on Risk Analysis: The successful completion of the
project is very much dependent on Risk Analysis. Without very highly
experienced experts, it is going to be a failure to develop a project using this
model.
4. Difficulty in time management: As the number of phases is unknown at the
start of the project, time estimation is very difficult.
18
Disadvantages of the Spiral Model
21