Sunday, June 15, 2008

When would you not apply Agile methods ?

I have been applying Agile methods from so many years and been interacting with many Agile experts. So far I have not seen/heard stories about the projects where it had been felt that Agile cannot be applied. Agile methods should be looked more like a risk mitigation strategy on software projects rather than a "software development process". Agile promotes continuous improvement through learn and adapt cycles.

Following are the possible characteristics of a project where Agile need not be applied:
  • The project carries no risks
  • The stakeholders are not interested in continuous improvement of project quality.
  • The stakeholders are confident that the project would go as per the project plan without any deviation. Even if it deviates, stakeholders/teams are fine with it.

Here is Ken Schwaber's take on "not" applying Scrum on projects:

I wouldn’t use Scrum if I were embarking on work in which there was absolutely no possibility of change or the unexpected. I would then confidently plan the project and await the predicted results on the day when it was due for the cost that was estimated. Wouldn’t this be a wonderful world ?

Stakeholders and management team keep coming across situations to make decisions around complex and debatable subjects, similar to the one we are discussing now(Agile - Not Agile). In such situations Ralph Stacey's Agreement & Certainty Matrix might come handy.

No comments: