What is Iterative Model?
Definition: Iterative model in software engineering is one of most useful model in Software Development Life Cycle (SDLC). In this model the team can start collecting the requirements and develop the first version of the software application. When creating the first version of the application, there might be any changes in the software application so at that time a new version of the software application is created with a new iteration. Therefore every iteration has to follow six phases of the sdlc.
SDLC Iterative model in software engineering , each iteration releases the working software product on the production until the final software product is developed and delivered to the customer.
Iterative Model Phases
- Requirements
- Design
- Coding
- Test
- Deployment
- Maintenance
1.Requirements: In this phases the software development team starts collecting information as much as possible from the clients and starts analysis.
2. Design: Software UI/UX team starts work on the designing of the software application based on the requirement specifications. In this phase, It will create low level and high level design phases.
3. Coding: The Software Development team starts coding and passes the build to the test engineer team for the testing.
4. Testing: When the test engineering team receives the build from the development team, Test engineers test the application. Testers perform functional and non-functional testing for the application.
5. Deployment: When an application is working as expected then the development team deploy an application on the production.
6. Maintenance: Due to involvements of some bugs, some errors or some change requirements that need to be updated
Diagram
Iterative Model Advantages and Disadvantages
Advantages Of Iterative Model
- Easily acceptable change requirements
- Risks identifies at early stages
- Less time spent in documentation
- Some working features can be developed rapidly in the early stage.
Disadvantages Of Iterative Model
- Not suitable for small types of projects
- Due to change requirements, the deadline cannot be confirmed.
- Sometimes more budget required due to requirement changes frequently.
- Required more resources
- Highly skilled resources required
Uses
- When requirements cleared
- When requirements are easy to understand.
- If projects has frequently requirement changes
- If the software product is large.
Conclusion
So in this way, iterative in software engineering is a used to develop software products by iteration. So that’s why this model mostly used for the large type of software products.