Along with the other traditional software development models such as waterfall model, v model and so on, spiral model also has been a favorite of the software developers and programmers. It became so popular because of its characteristic ability to combine the advantages of both the top down as well as bottom up approaches.
This SDM or systems development method is more prevalent in the field of information technology. Also in this model one can find the combination of both the waterfall features and prototyping features. However, this model works well for the complicated, expensive and large projects. The credit for defining this model goes to Barry Boehm.
Application Areas of Spiral Model
– Software giants such as Microsoft and IBM rely on the spiral development cycle for the development of their large projects.
– However, for them the concept of agile software development proves to be a viable alternative in developing smaller projects.
– One example of successful implementation of the spiral model was in the future combat systems program of the military.
– The iteration for this program was of two years and it got cancelled under a span of 3 years.
– This was a live evidence that the spiral model is only suitable for small software applications rather than being used for a distributed, complicated, and inter-operable systems.
– Not all the software projects have stable business goals some are quite unstable.
– For handling such projects i.e., projects with unstable goals one needs a development model that can realize the architecture and provide high stress and loading ability.
– Well, SADD or spiral architecture driven development is one such model based up on the SDLC or software development life cycle.
– SADD is one possible way which can help in the reduction of the risk involved with the non – effective architecture.
Advantages of Spiral Model
1. The spiral life cycle model has got great flexibility thus making it count in the most flexible models for software development. Here the determination of the development phases is done by the project manager based up on the complexity ratios of the software project.
2. In spiral model the project monitoring becomes quite easy and effective. It is required that each phase as well as loop gets a review from the concerned stake holders. All this makes the spiral model more transparent.
3. Risk management comes as an in built feature of the spiral model making it a much better development package.
4. Changes can be introduced at any time in the project.
5. The project estimates such as cost, schedules and so on are quite realistic as what compared to the other development models.
6. Suitable for projects involving high risks.
7. Product developed with spiral model is highly customization.
Disadvantages of Spiral Model
1. Overall project cost is quite high.
2. Complicated approach for a project having proper SRS.
3. Expertise is required and skills need to be evaluated and developed from time to time.
4. Protocols need to be strictly followed for the effective implementation which makes doing the project difficult.
5. Because of customization variations from the clients, the same prototype cannot be used in other projects.
6. Not suitable for projects with low risk.
7. Scheduling requirements and keeping with the budget is difficult in this project.
8. Requirement of documentation in the intermediate stages makes the process more complex.
The activities to be performed in a spiral development process are arranged in the form of a spiral where each loop represents one development phase. The loop consists of the following 4 parts:
1. Determination of the objectives, constraints and alternatives.
2. Evaluation of alternatives and risk analysis.
3. Execution of the phase
4. Planning for the next phase.
All the loops consist of similar phases.