Describe spiral software development life cycle model.- The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model.
- Spiral model is a combination of iterative development process model and sequential linear development model i.e. waterfall model with very high emphasis on risk analysis.
- It allows for incremental releases of the product, or incremental refinement through each iteration around the spiral.
Spiral Model design
- The spiral model has four phases. - A software project repeatedly passes through these phases in iterations called Spirals.
1. Identification:
- In this phase gathering the business requirements in the baseline spiral. - As the product matures in the subsequent spirals the identification of system requirements, subsystem requirements and unit requirements takes place in this phase. - It also includes understanding the system requirements by continuous communication between the customer and the system analyst. - Towards the end of spiral the product is deployed in the identified market.
2. Design:
- This phase starts with the concept design in the baseline spiral. - It involves architectural design, logical design of modules, physical product design and final design in the subsequent spirals.
3. Construct or Build:
- This phase refers to production of the actual software product at every spiral. - When the product is just thought of and the design is being developed a POC (Proof of Concept) it is developed in this phase to get customer feedback. - Then in the subsequent spirals with higher clarity on requirements and design details a working model of the software called build is produced with a version number. These builds are sent to customer for feedback.
4. Evaluation and Risk Analysis:
- Risk Analysis includes various activities such as identifying, estimating, and monitoring technical feasibility and management risks, such as schedule slippage and cost overrun. - After testing the product, at the end of first iteration, the customer will evaluate the software and provide the feedback.
|