SDLC Spiral Model And Phases
History of Spiral Model:
The spiral model was defined by Barry Boehm in his 1988 article A Spiral Model of Software Development and Enhancement. This model was not the first model to discuss iterative development, but it was the first model to explain why the iteration matters. As originally envisioned, the iterations were typically 6 months to 2 years long.
Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far. Analysis and engineering efforts are applied at each phase of the project, with an eye toward the end goal of the project.
What is a Spiral Model?
The spiral model, also known as the spiral lifecycle model, is a systems development method (SDM) used in information technology (IT). This model of development combines the features of the prototyping model and the waterfall model. It is one of the most preferred Software Development Life Cycle models for large and high-risk projects.
The development team in the Spiral-SDLC model starts with a small set of requirements and goes through each development phase for those sets 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.
A spiral model has 4 phases described below:
- Planning phase
- Risk analysis phase
- Engineering phase
- Evaluation phase.
Planning phase:
In the planning phase gathering the requirement and analysis on it. Performed a major task like reviewing the requirement, identifying necessary resources and work environment. The deliverables will be a system requirement specification and business requirement specification documents.
Risk analysis:
The risk analysis phase focused on the risk and alternate solutions, trying to find out technical as well as managing risk. After risk found to perform the activities to finalized risk.
Engineering Phase:
In this phase basically performed development and testing where the actual work product was made. The deliverable for the engineering phase will be source code, design documents, test cases, test summary, defect report etc.
Evaluation:
Customer’s involvement takes place in this Evaluation phase. Customer evaluates the work product and ensures that product meets all requirements if any changes required to the customer in the product, again all phases will be repeated. It is important to get feedback from the customer before releasing the product.
Advantages of Spiral Development Model:
- The Spiral Model mostly concentrates on risk analysis.
- More and more features are added in a systematic way.
- Software is produced early.
- Most useful for large and risk projects.
- Spiral Model used if requirement changing frequently.
- Focused model for all phases.
- Customer evaluation phase made this model useful.
Disadvantages of Spiral Development Model:
- For risk, the analysis phase required an expert person to make an analysis.
- Not useful for small projects.
- Project duration and cost could be infinite because of the spiral feature.
- Documentation could be lengthy.
- For its smooth operation spiral model protocol needs to be followed strictly
- It works best for large projects only also demands risk assessment expertise
When to use Spiral Model:
- When creation of a Prototype is appropriate.
- When costs and risk evaluation is important.
- For medium to high-risk projects.
- Long-term project commitment unwise because of potential changes to economic priorities.
- Users are unsure of their needs. Where enough time frame is there to get end user feedback.
- Requirements are complex.
Conclusion:
Each spiral can be termed as a loop and each loop is a separate development process in a spiral model. The four activities (Planning, Risk analysis, engineering and evaluation) form the intermediary phases of a spiral model and are repeated again for each loop. This model is very good to use for larger projects where you can develop.