×

Spiral Model

The problem with traditional software process models is that they do not adequately deal with uncertainty, which is inherent to software projects. Major software projects had failed because project risks were neglected, and no one was ready when something unexpected happened. Barry Böhm identified this and attempted to integrate the "project risk" factor into the life cycle model. The outcome is the spiral model proposed in 1986.

Spiral Model

The radial dimension of the model represents the cumulative cost of the model. Each path around the spiral is a sign of increased cost. The angular dimension represents the progress made in the completion of each cycle. Each loop of the spiral from the x-axis represents a phase. One phase is roughly divided into four major sectors of significant activities:

Spiral Model design

In the Spiral model, the software project repeatedly goes through these iterations, which is called Spirals. There are four phases in the spiral model.

Identification

This phase begins with the accumulation of business needs in the initial spiral. After the product matures, the spiral determines the system requirements, subsystem requirements, and unit requirements at this stage.

This phase also involves understanding the system requirements through continuous communication between the client and the systems analyst. At the end of the spiral, the product is deployed in the market.

Design

The design phase starts with the conceptual design of the basic spiral and involves the architectural design, the logical design of the components, the physical design of the material, and the final design of the corresponding spiral.

Construct or Build

The build phase refers to the production of real-world software products at every spiral. At the baseline spiral, when the product is conceptualized, and the design is developed, the POC (Proof of Concept) has been developed at this time to receive customer feedback.

The subsequent spiral is more clearly defined design requirements and specifications, a software package called the build is generated with a version number. These builds are sent to the end-user for feedback.

Evaluation and Risk Analysis

Risk analysis includes identifying, measuring, and monitoring technical and administrative issues such as time management and cost overruns. After testing the build, at the end of the initial iteration, the customer reviews the software and provides feedback.

Based on customer input, the implementation of the project begins the next phase of the analysis and essentially takes a strategic approach according to customer feedback. The sustainability information process continues throughout the life of the program.

The advantages of the Spiral Model are:-

  1. Changes in requirements can be accommodated. 
  2. It allows widespread use of prototypes.
  3. Requirements can be noted down more clearly.
  4. Development can be broken down into smaller parts, and risk areas can be developed earlier, which helps to manage risks better.

The disadvantages of the Spiral Model are:-

  1. The project end may not be known soon.
  2. Management is more complicated.
  3. Expensive.
  4. It is not suitable for small projects.
  5. The spiral may go on indefinitely.
  6. Excessive documentation is required for a large number of intermediate stages.

Related Topics

Project management activities

Project management activities Software project management involves many activities, including project planning, software product scope, cost estimation in various terms, scheduling of tasks and events, and resource management. Project management activities may include: Project PlanningScope ManagementProject...

2 minutes read.

Big-Bang Model in Software Engineering

In the Big-Bang Model, developers do not adopt any specific process. Development begins only with the necessary funds and efforts as input, and output is developed software that may or may not be...

1 minute read.

Some Important Quality Metrics

Important Quality Metrics The best quality of software has to pass through various software quality measures to attain standard in quality. The quality executive should consider these metrics to monitor the...

5 minutes read.

Data Structure Metrics

In the size metric, we have learned to measure/ determine the size of a program by various software metrics such as line of code, Function count, and Token Count. A program...

6 minutes read.

SDLC in Software Engineering

SDLC SDLC stands for the Software Development life cycle. It is a pictorial and diagrammatic representation of the software life cycle. A life cycle model represents all the techniques required to integrate software into the...

3 minutes read.

Object Oriented Analysis and Design in Software Engineering

Using object-oriented programming, object-oriented analysis and design (OOAD) is a technical way for evaluating and organising an application, system, or business. It also uses visual modelling to direct stakeholder interaction...

9 minutes read.

Prototype Model in Software Engineering

The prototype creation model is a method of developing the software in which a prototype of software or app is constructed, tested, and then reworked as needed until an acceptable result is obtained...

4 minutes read.

Project Monitoring and Control

Project Monitoring and Control Project monitoring and control process includes procedures which are performed to observe project performance so that potential problems are identified, and appropriate action can be taken to meet the desired performance...

3 minutes read.

Project Management

Project Management What is a software project? The project is a set of tasks that need to be completed to reach a clear result. The project is also defined as the set of inputs...

2 minutes read.

Strategies for System Design

System Design is crucial to showcase the System's architecture used for the business. System Design is essential to implement the interfaces and the data flow to satisfy all the requirements...

4 minutes read.

Software Project Planning

Project planning is a management process that focuses on the activities required to complete a project successfully. Project planning helps to prevent problems that occur during the project development, such as a...

2 minutes read.

Object Oriented Metrices in Software Engineering

Metrics are used to measure the quality of software on different parameters. It provides acomputed accurate estimation of projects that help in developing software with minimal fault. “Metric is a set...

7 minutes read.

Waterfall Model in Software Engineering

The most popular model is the waterfall model. This model has five phases: Requirement analysis and specification DesignImplementation & unit testing Integration and system testing phaseOperation and maintenance These phases often occur one...

3 minutes read.

What is System Design

System design is simply the systematic process used to design the basic architecture of an electronic control system by defining essential elements like modules or components and their interfaces. This...

3 minutes read.

Information Flow Metrics

This metric is purely based on information. Information flow metric is different from size metric, and data structure metric as size metric is based on the final size of program...

4 minutes read.

Software Quality Metrics

In a software project, the software is designed to build a source code, but from time to time or step by step, checking source code is required. Check whether the work...

4 minutes read.

V-Model

The V-model is also known as the verification and validation model. The V-model is also known as the verification and validation model. In this, each phase of the SDLC must be completed before...

3 minutes read.

Software Quality Assurance (SQA)

Software Quality Assurance (SQA) is a process that ensures the quality of software while developing software. It also ensures that all processes, procedures, and activities are monitored and properly implemented. It works along...

3 minutes read.

Caching in System Design

While surfing the web, you have usually wondered why the sites you have visited once load faster than the new ones. You would have also noticed how the texts and labels...

10 minutes read.

Software Metrics

Introduction Software metrics is the term used in software engineering. Software engineering is the detailed study of the step-by-step making of user-interactive software that fulfills users' needs. Let's discuss two terms...

4 minutes read.