lifecycle (SDLC) method used for risk management that combines the iterative development process model with elements of the Waterfall model. The spiral model is used by software engineers and is favored for large, expensive and complicated projects. Uses of the Spiral Model 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
• When creation of a prototype is applicable
• 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 Spiral Model phases Planning (Identify Objectives) Phases begin in the quadrant dedicated to the identification and understanding of requirements. The overall goal of the phase should be determined and all objectives should be elaborated and analyzed. It is important to also identify alternative solutions in case the attempted version fails to perform.
It includes estimating the cost, schedule and
resources for the iteration. It also involves understanding the system requirements for continuous communication between the system analyst and the customer Risk Analysis Next, risk analysis should be performed on all possible solutions in order to find any faults or vulnerabilities -- such as running over the budget or areas within the software that could be open to cyber attacks.
Each risk should then be resolved
using the most efficient strategy. Identification of potential risk is done while risk mitigation strategy is planned and finalized Engineering In the next quadrant, the prototype is built and tested. This step includes: architectural design, design of modules, physical product design and the final design. It takes the proposal that has been created in the first two quadrants and turns it into software that can be utilized.
It includes testing, coding and deploying
software at the customer site Review and Evaluate Finally, in the fourth quadrant, the test results of the newest version are evaluated. This analysis allows programmers to stop and understand what worked and didn’t work before progressing with a new build. At the end of this quadrant, planning for the next phase begins and the cycle repeats. At the end of the whole spiral, the software is finally deployed in its respective market.
Evaluation of software by the customer.
Also, includes identifying and monitoring risks such as schedule slippage and cost overrun Steps of Spiral Model Steps of the Spiral Model 1. The new system requirements are defined in as 1. The entire project can be aborted if the risk is much detail as possible. This usually involves deemed too great. Risk factors might involve interviewing a number of users representing all development cost overruns, operating-cost the external or internal users and other aspects miscalculation and other factors that could result of the existing system. in a less-than-satisfactory final product. 2. A preliminary design is created for the new 2. The existing prototype is evaluated in the same system. manner as was the previous prototype, and, if 3. A first prototype of the new system is constructed necessary, another prototype is developed from it from the preliminary design. This is usually a according to the fourfold procedure outlined scaled-down system, and represents an above. approximation of the characteristics of the final 3. The preceding steps are iterated until the product. customer is satisfied that the refined prototype 4. A second prototype is evolved by a fourfold represents the final product desired. procedure: (1) evaluating the first prototype in 4. The final system is constructed, based on the terms of its strengths, weaknesses, and risks; (2) refined prototype. defining the requirements of the second 5. The final system is thoroughly evaluated and prototype; (3) planning and designing the second tested. Routine maintenance is carried out on a prototype; (4) constructing and testing the second continuing basis to prevent large-scale failures prototype. and to minimize downtime. Pros & Cons Pros of Spiral Model
• Additional functionality or changes can
be done at a later stage • Cost estimation becomes easy as the prototype building is done in small fragments • Continuous or repeated development helps in risk management • Development is fast and features are added in a systematic way in Spiral development • There is always a space for customer feedback Cons of Spiral Model • Risk of not meeting the schedule or budget • Spiral development works best for large projects only also demands risk assessment expertise • For its smooth operation spiral model protocol needs to be followed strictly • Documentation is more as it has intermediate phases • Spiral software development is not advisable for smaller project, it might cost them a lot Questions?