Spiral Model: When to Use? Advantages and Disadvantages

What is Spiral Model?

Spiral Model is a risk-driven software development process model. It is a combination of waterfall model and iterative model. Spiral Model helps to adopt software development elements of multiple process models for the software project based on unique risk patterns ensuring efficient development process.

Each phase of spiral model in software engineering begins with a design goal and ends with the client reviewing the progress. The spiral model in software engineering was first mentioned by Barry Boehm in his 1986 paper.

The development process in Spiral model in SDLC, starts with a small set of requirement and goes through each development phase for those set of requirements. The software engineering team adds functionality for the additional requirement in every-increasing spirals until the application is ready for the production phase. The below figure very well explain Spiral Model:

spiral model diagramspiral model diagramSpiral Model Diagram

Spiral Model Phases

Spiral Model Phases
Activities performed during phase

Planning

  • It includes estimating the cost, schedule and resources for the iteration. It also involves understanding the system requirements for continuous communication between the system analyst and the customer

Risk Analysis

  • Identification of potential risk is done while risk mitigation strategy is planned and finalized

Engineering

  • It includes testing, coding and deploying software at the customer site

Evaluation

  • Evaluation of software by the customer. Also, includes identifying and monitoring risks such as schedule slippage and cost overrun

1

Monday

Learn More

On Monday’s Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

2

Teamwork

Learn More

On Teamwork’s Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

3

JIRA Software

Learn More

On Jira Software Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

When to use Spiral Model?

  • A Spiral model in software engineering is used when project is large
  • When releases are required to be frequent, spiral methodology is used
  • When creation of a prototype is applicable
  • When risk and costs evaluation is important
  • Spiral methodology is useful for medium to high-risk projects
  • When requirements are unclear and complex, Spiral model in SDLC is useful
  • When changes may require at any time
  • When long term project commitment is not feasible due to changes in economic priorities

Spiral Model Advantages and Disadvantages

Advantages
Disadvantages

Additional functionality or changes can be done at a later stage
Risk of not meeting the schedule or budget

Cost estimation becomes easy as the prototype building is done in small fragments
Spiral development works best for large projects only also demands risk assessment expertise

Continuous or repeated development helps in risk management
For its smooth operation spiral model protocol needs to be followed strictly

Development is fast and features are added in a systematic way in Spiral development
Documentation is more as it has intermediate phases

There is always a space for customer feedback
Spiral software development is not advisable for smaller project, it might cost them a lot