What is Spiral Model?
Spiral Model is a combination of Iterative Development Model and 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.
This model is best used for large projects which involves continuous enhancements. There are specific activities which are done in one iteration (spiral) where the output is a small prototype of the large software. The same activities are then repeated for all the spirals till the entire software is build.
Phases of Spiral Model:
The spiral model has four phases. A software project repeatedly passes through these phases in iterations called Spirals.
Planning: Requirements are studied and gathered in this phase. It includes estimating the cost, schedule and resources for the spirals. As the product matures, identification of system requirements and unit requirements are all done in this phase.
Risk Analysis: Risk Analysis includes identifying, estimating, and monitoring technical feasibility and management risks, such as schedule slippage and cost overrun. Once the risks are identified, risk mitigation strategy is planned and finalized.
Engineering: This phase refers to production of the actual software product at every spiral. Actual development and testing of the software takes place in this phase. It includes testing, coding and deploying software at the customer site. A POC (Proof of Concept) is developed in this phase to get customer feedback.
Evaluation: After testing the build, at the first phase, the customer evaluates the product and provides feedback.
Advantages and Disadvantages of Spiral Model
- Cost estimation becomes easy as prototype building is done in small segments.
- Development can be divided into smaller parts and more risky parts can be developed earlier which helps better risk management.
- Development is fast and features are added in a systematic way.
- There is always a room for customer feedback and the changes are implemented faster.
- It works best for large projects only and could be expensive for small projects.
- Risk analysis is important phase so requires expert people for risk assessment.
- Documentation is more as it has large number of intermediate phases for its smooth operation spiral model protocol needs to be followed strictly.
When Spiral Model should be followed:
- For medium and big projects.
- For high risk projects.
- Users are unsure of their needs
- Requirements are complex
- If requirements are more complicated.
- If frequent changes required in the project.