Iterative & Spiral Model
Iterative Model
- In Iterative model, the large application of software development is divided into smaller chunks and smaller parts of software which can be reviewed to recognize further requirements are implemented. This process is repeated to generate a new version of the software in each cycle of a model.
- With every iteration, development module goes through the phases i.e requirement, design, implementation and testing. These phases are repeated in iterative model in a sequence.
1) Requirement Phase
In this phase, the requirements for the software are assembled and analyzed. Generates a complete and final specification of requirements.
2) Design Phase
In this phase, a software solution meets the designed requirements which can be a new design or an extension of an earlier design.
3) Implementation and test phase
In this phase, coding for the software and test the code.
4) Evaluation
In this phase, software is evaluated, the current requirements are reviewed and the changes and additions in the requirements are suggested.
Advantages of an Iterative Model- Produces working software rapidly and early in the software life cycle.
- This model is easy to test and debug in a smaller iteration.
- It is less costly to change scope and requirements.
Disadvantages of an Iterative Model- The system architecture is costly.
- This model is not suitable for smaller projects.
Spiral model
- It is a combination of prototype and sequential or waterfall model.
- This model was developed by Boehm.
- It is used for generating the software projects. This model is a risk driven process model.
- Every phase in the Spiral model is start with a design goal and ends with the client review.
- The development team in this model begins with a small set of requirements and for the set of requirements team goes through each development phase.
- The development team adds the functionality in every spiral till the application is ready.
Following are the steps involved in spiral model:
Phases of Spiral model are:
1) Planning
2) Risk Analysis
3) Engineering
4) Evaluation
1) Planning- This phase, studies and collects the requirements for continuous communication between the customer and system analyst.
- It involves estimating the cost and resources for the iteration.
2) Risk Analysis
This phase, identifies the risk and provides the alternate solutions if the risk is found.
3) Engineering
In this phase, actual development i.e coding of the software is completed. Testing is completed at the end of the phase.
4) Evaluation
Get the software evaluated by the customers. They provide the feedback before the project continues to the next spiral.
Advantages of Spiral Model - It reduces high amount of risk.
- It is good for large and critical projects.
- It gives strong approval and documentation control.
- In spiral model, the software is produced early in the life cycle process.
Disadvantages of Spiral Model - It can be costly to develop a software model.
- It is not used for small projects.