written 6.8 years ago by | modified 2.8 years ago by |
Subject: Software Engineering
Topic: Process Models
Difficulty: High
written 6.8 years ago by | modified 2.8 years ago by |
Subject: Software Engineering
Topic: Process Models
Difficulty: High
written 6.7 years ago by |
Spiral Model is a combination of a waterfall model and iterative model. Each phase in spiral model begins with a design goal and ends with the client reviewing the progress. The spiral model was first mentioned by Barry Boehm in his 1986 paper. The development team in Spiral - SDLC model starts with a small set of requirement and goes through each development phase for those set of requirements. The development team adds functionality for the additional requirement in every-increasing spirals until the application is ready for the production phase.
When to use Spiral Model?
When project is large
When releases are required to be frequent
When creation of a prototype is applicable
When risk and costs evaluation is important
For medium to high-risk projects
When requirements are unclear and complex
When changes may require at any time
When long term project commitment is not feasible due to changes in economic priorities
Advantages and Disadvantages of Spiral Model
Advantages | Disadvantages |
---|---|
Additional functionality or changes can be done at a later stage | Risk of not meeting the schedule or budget |
Cost estimation becomes easy as the prototype building is done in small fragments | It works best for large projects only also demands risk assessment expertise |
Model | Water-Fall Model | Incremental Model | Spiral Model | Rad Model |
---|---|---|---|---|
Planning in early stage | Yes | Yes | Yes | No |
Returning to an earlier phase | No | Yes | Yes | Yes |
Handle Large-Project | Not Appropriate | Not Appropriate | Appropriate | Not Appropriate |
Detailed Documentation | Necessary | Yes but not much | Yes | Limited |
Cost | Low | Low | Expensive | Low |
Requirement Specifications | Beginning | Beginning | Beginning | Time boxed release |
Flexibility to change | Difficult | Easy | Easy | Easy |
User Involvement | Only at beginning | Intermediate | High | Only at the beginning |
Maintenance | Least | Promotes Maintainability | Typical |