Wednesday, 17 September 2014

Spiral Model


Spiral Model

The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model.

Spiral model is a combination of iterative development process model and
sequential linear development model i.e. waterfall model with very high emphasis on risk
analysis. It allows for incremental releases of the product, or incremental refinement through each iteration around the spiral.
Spiral Model design
The spiral model has four phases. A software project repeatedly passes through these
phases in iterations called Spirals.

Identification
This phase starts with gathering the business requirements in the baseline spiral. In
the subsequent spirals as the product matures, identification of system requirements, subsystem requirements and unit requirements are all done in this phase.

This also includes understanding the system requirements by continuous communication between the customer and the system analyst. At the end of the spiral the product is deployed in the identified market.

Following is a diagrammatic representation of spiral model listing the activities in each phase


 Design
Design phase starts with the conceptual design in the baseline spiral and involves architectural design, logical design of modules, physical product design and final design in the subsequent spirals.

 Construct or Build
Construct phase refers to production of the actual software product at every spiral. In the baseline spiral when the product is just thought of and the design is being developed a POC (Proof of Concept) is developed in this phase to get customer feedback.
Then in the subsequent spirals with higher clarity on requirements and design details a working model of the software called build is produced with a version number. These builds are sent to customer for feedback.

 Evaluation and Risk Analysis
Risk Analysis includes identifying, estimating, and monitoring technical feasibility and management risks, such as schedule slippage and cost overrun. After testing the build, at the end of first iteration, the customer evaluates the software and provides feedback.

Based on the customer evaluation, software development process enters into the next iteration and subsequently follows the linear approach to implement the feedback suggested by the customer. The process of iterations along the spiral continues throughout the life of the software.


Spiral Model Application
Spiral Model is very widely used in the software industry as it is in synch with the natural
development process of any product i.e. learning with maturity and also involves minimum risk for the customer as well as the development firms. Following are the
typical uses of Spiral model:

    When costs there is a budget constraint and risk evaluation is important
    For medium to high-risk projects
    Long-term project commitment because of potential changes to economic
priorities as the requirements change with time
    Customer is not sure of their requirements which is usually the case
    Requirements are complex and need evaluation to get clarity
    New product line which should be released in phases to get enough customer
feedback
    Significant changes are expected in the product during the development cycle
Spiral Model Pros and Cons
The advantage of spiral lifecycle model is that it allows for elements of the product to be
added in when they become available or known. This assures that there is no conflict with previous requirements and design. This method is consistent with approaches that have multiple software builds and releases and allows for making an orderly transition to a maintenance activity. Another positive aspect is that the spiral model forces early user involvement in the system development effort.
On the other side, it takes very strict management to complete such products and there is a risk of running the spiral in indefinite loop. So the discipline of change and the extent of taking change requests is very important to develop and deploy the product successfully. 




2 comments:

  1. Hello Omji,
    The Article on Spiral Model along with Application. is amazing , gives detailed information about it. Thanks for Sharing the information about the Spiral Model with Pros and Cons For More information check the detail on the Spiral Model testing here Software Testing Services

    ReplyDelete