An agile model is a combination of iterative and incremental process models. Continuous delivery of working software increases customer satisfaction and adaptability. The agile model values individuals and interactions, working software, customer collaboration, and respond to change.
When to use an Agile Model
An agile model is used when the user’s needs constantly change, the initial requirements of the project are not fully planned, and it is possible to have continuous interaction with the customer.
- Realistic approach to software development
- Rapidly developed functionality
- Flexibility for developers
- Adaptable to changes in requirements or processes
- Concurrent development and delivery
- New requirements may conflict with existing work
- Heavily dependent on customer interaction
- Lack of documentation can be challenging to new team members
- Cost and time may exceed expectation due to lack of planning