Iterative Model in SDLC
Iterative Model in SDLC
An iterative life cycle model does not attempt to start with a full specification of requirements. Instead, development begins by specifying and implementing just part of the software, which can then be reviewed in order to identify further requirements. This process is then repeated, producing a new version of the software for each cycle of the model.
The Iterative Model allows the accessing earlier phases, in which the variations made respectively. The final output of the project renewed at the end of the Software Development Life Cycle (SDLC) process. Consider an iterative life cycle model which consists of repeating the following phases in sequence;
- Requirements
- Analysis
- Design
- Testing
- Implimentation
- Review
- Maintenance
Requirements : A Requirements phase, in which the requirements for the software are gathered and analysed. Iteration should eventually result in a requirements phase that produces a complete and final specification of requirements.
Design phase: A Design phase, in which a software solution to meet the requirements is designed. This may be a new design, or an extension of an earlier design.
Analysis Phases: In this phase, requirements are gathered from customers and check by an analyst whether requirements will fulfil or not. Analyst checks that need will achieve within budget or not. After all of this, the software team skips to the next phase.
Testing Phases: when the software is coded, integrated and tested.
Implementation Phases: In the implementation, requirements are written in the coding language and transformed into computer programmes which are called Software.
Maintenance: In the maintenance phase, after deployment of the software in the working environment there may be some bugs, some errors or new updates are required. Maintenance involves debugging and new addition options.
Review: A Review phase, in which the software is evaluated, the current requirements are reviewed, and changes and additions to requirements proposed.
When to use Iterative Model
- When requirements are defined clearly and easy to understand.
- When the software application is large.
- When there is a requirement of changes in future.
Agile works really well when the product vision or features are not well defined. Agile allows product owners to adjust requirements and priorities along the way to take advantage of opportunities and ultimately deliver a better product to all of the project stakeholders.
Advantages of Iterative Model
- Generates working software quickly and early during the software life cycle.
- More flexible - less costly to change scope and requirements.
- Easier to test and debug during a smaller iteration.
- Easier to manage risk because risky pieces are identified and handled during its iteration.
- Each iteration is an easily managed milestone.
Disadvantages of Iterative Model
- Each phase of an iteration is rigid and do not overlap each other.
- Problems may arise pertaining to system architecture because not all requirements are gathered up front for the entire software life cycle.