Agile Methods are based on the Agile manifesto and are adaptive in nature. Agile methods ensure −
- Team collaboration.
- Customer collaboration.
- Constant and continuous communication.
- Response to changes.
- Readiness of a working product.
Several Agile methods came into existence, promoting iterative and incremental development with time-boxed iterations. Though the Agile methods are adaptive, rules of the specific method cannot be by-passed and hence requires disciplined implementation.
Agile Methods – Strengths
The advantages or strengths of Agile method are −
- Early and frequent releases.
- Accommodation of changing requirements.
- Daily communication among the customer and developers.
- Projects built around motivated individuals.
- Self-organizing teams.
- Simplicity, focusing on what is immediately required.
- No building for future or overburdening the code.
- Regular reflection to adjust behavior to improve effectiveness.
Agile Methods – Weaknesses
The disadvantages or weaknesses of Spiral method are −
Customer availability may not be possible.
Teams should be experienced to follow the rules of the method.
Appropriate planning is required to quickly decide on the functionality that needs to be delivered in an iteration.
Team is expected to have estimation skills and negotiation skills.
Team should have effective communication skills.
New teams may not be able to organize themselves.
Requires discipline to develop and deliver in time-boxed iterations.
Design needs to be kept simple and maintainable, thus requiring effective design skills.
When to Use Agile methods?
The Agile methods can be used when −
Application is time-critical.
The scope is limited and less formal (scaling agile methods to larger projects is underway, with certain extensions to some of the agile methods).
Organization employs disciplined methods.