agile

Agile - When does it work well, and when doesn't it?


Our team is debating whether we want to become Agile or not. None of us are really fluent in Agile. I'd like some thoughts on when Agile works well, and when it doesn't.

To give a little background, we are a small group of developers, six in total. We have far more work that we can handle. Our priorities change often. What is a high priority today, may not be tomorrow. We have many applications to create and maintain. We have started to dabble in Agile practices to the extent that we have daily scrums and two-week Sprint cycles.

If you need more information to answer this, please feel free to ask.

Thanks.


Solution

  • Ralph Stacey's complexity matrix is commonly used to illustrate the sweet spot for Agile:

    alt text
    (source: typepad.com)

    For simple projects (where both the requirements and the technologies are well known), the predictability is high so a predictive methodology (waterfall) works well.

    For complicated and complex projects (and the vast majority of IT projects are), predictability is low and a predictive methodology won't work, an adaptive approach should be preferred. This is where Agile works well.

    When both the requirements and the technologies are unknown, you're close to the chaos and the odds of failure are very high, regardless of the methodology.