Andrew Harcourt
andrewh@uglybugger.org
@uglybugger

"We tried agile and it didn't work."

Andrew Harcourt


So, you tried agile and it didn't work?

Let's first look at this via an analogy: You fall into a lake. You try swimming but you're not very good at it. Should you stop?

So why are agile methods supposed to work in the first place? Forget the hype about agile. Forget Scrum, Kanban, Lean and all those other buzzwords and instead, consider this very simple question. Why does agile work? Or, at least, why should we try it again when we tried it once or twice and all we encountered was failure?

When you say "We tried agile and it didn't work," what you're really saying is "We tried agile and we kept running into failure. Releasing so frequently was hard; our testing cycle was too long to fit into a sprint; our developers couldn't keep up."

In other words, your agile methodology was doing exactly what it was supposed to do: highlight failures early.

When I hear "We tried agile and it didn't work," I hear "We tried agile and it worked too well but we didn't like the message so we stopped listening."

I hate to break it to you, but highlighting failures is actually the entire reason for existence of an agile process. Everything else is window dressing.

  • Every feedback point is an opportunity to identify failings, both large and small.
  • Every missed user story is a message that the team can't yet estimate well enough.
  • Every bug discovered by end users rather than automated tests tells the story of human error.
  • Every pain point is a warning to fix it before it gets worse.

Teams that "go agile" usually experience pain because previously they just deferred the pain that already awaits them by only trying to release their software at the end of a multi-year project. It's not that there's less pain in single-release projects; just that all the pain is felt at once. That kind of pain is often enough to cause individual nervous breakdowns and company bankruptcies.

When you feel the pain from going agile, don't view it as failure. View it as the process's helpfully surfacing problems early so that you can deal with them while there's still time.

comments powered by Disqus