SDLC – Agile Methods

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.