๐ Spiral project management
The spiral model is a system development lifecycle (SDLC) method used for Risk Managament.
The spiral model is used by software engineers and is favoured for large, expensive and complicated projects.
When viewed as a diagram, the spiral model looks like a coil with many loops. The number of loops varies based on each project and is often designated by the project manager. Each loop of the spiral phase is a phase in the software development process.
The spiral model enables gradual releases and refinement of a product through each phase of the spiral as well as the ability to build prototypes at each phase.
The most important feature of the model is its ability to manage unknown risks after the project has commenced; creating a prototype makes this feasible.
*Uses of the spiral modelโ
- Projects in which frequent releases are necessary
- Projects in which changes may be required at any time
- Long term projects that are not feasible due to altered economic priorities
- Medium to high risk projects
- Projects in which cost and risk analysis is important
- Projects that would benefit from the creation of a prototype
- Projects with unclear or complex requirements
Spiral Model phasesโ
When looking at a diagram of a spiral model, the radius of the spiral represents the cost of the project and the angular degree represents the progress made in the current phase. Each phase begins with a goal for the design and ends when the developer or client reviews the progress.
Every phase can be broken into four quadrants: Identifying and understanding requirements, performing risk analysis, building the prototype and evaluation of the software's performance.
Steps of the spiral modelโ
- The new system requirements are defined in as much detail as possible. This usually involves interviewing a number of users representing all the external or internal users and other aspects of the existing system
- An initial design is created for the new system
- A first prototype of the new system is constructed from the initial design This is usually a scaled down system, and represents an approximation of the characteristics of the final product.
- A second prototype is evolved by a fourfold procedure.
- The entire project can be aborted if the risk is deemed too great. Risk factors might involve development cost overruns, operating-costs miscalculation and other factors that could result in a less than satisfactory final product.
- The existing prototype is evaluated in the same manner as was the previous prototype, and, if necessary another prototype is developed from it according to the fourfold procedure outlined above.
- The preceding steps are iterated until the customer is satisfied that the refined prototype represents the final product desired.
- The final system is constructed, based on the refined prototype.
- The final system is thoroughly evaluated and tested. Routine maintenance is carried out on a continuous basis to prevent large-scale failures and to maximise downtime.
Benefits:โ
Flexibility - Changes made to the requirements after development has started can be easily adopted and incorporated.
Risk handling - The spiral model involves risk analysis and handling in every phase, improving security and the chances of avoiding attacks and breakages, The iterative development process also facilitates risk management.
Customer satisfaction - The spiral model facilitates customer feedback. If the software is being designed for a customer, then the customer will be able to see and evaluate their product in every phase. This allows them to voice dissatisfaction or make changes before the product is fully built, saving the development team time and money.
Limitations:โ
High cost - The spiral model is expensive and, therefore, is not suitable for small projects.
Dependence on risk analysis - Since successful completion of the project depends on effective risk handling, then it is necessary for involved personnel to have expertise in risk harassment.
Complexity - The spiral model is more complex than other SDLC options. For it to operate efficiently, protocols must be followed closely.
Hard to manage - When starting this project, the number of phases are usually unknown, making time management almost impossible. Therefore, there is always a risk of falling behind or going over budget.