If you focus an organisation on uncovering better ways of developing software, then you’ll get to the heart of Agile.
If you focus an organisation on uncovering faster ways of developing software, then you’d better get ready for unintended and undesired consequences. And disappointment.
I wrote that in a comment on LinkedIn today. There was an article promoting a company’s skills in helping organisations navigate the dragons of agile transformation. There was some good common sense in there. I’m pretty confident they are good at what they do. But I felt it was missing something. Something in the soul of the article.
The clincher was an early premise that:
Done really well, agile enables a business to increase the speed of delivery – enabling a rapid response to the market through the provision of enhanced and new services and products.
This where I start to be uncertain. I don’t think that Agile is about faster. The first line of the Agile Manifesto is about better ways of developing software. I think that’s what it’s all about.
Better ways of developing software are almost certainly more efficient. There’s less waste. Simplicity means maximising the work not done. Frequent delivery means faster feedback from people using the software. It means that you make changes earlier that mean your software actually does the things that people want. But in some ways these are not about writing software faster. They are about not doing things to slow you up. You can build software quickly without following Agile, but you are trading off different risks. Faster is a by-product of better.
I think promising that Agile enables a business to increase speed of delivery is maybe one of the reasons organisations don’t really succeed in becoming more Agile. They’re kind of missing the point and the resulting dissonance pulls everything apart.
To revert back to a running simile … it’s like trying to run faster without trying to be a better athlete. It might be achievable in the short term, but it will almost certainly end in injury. Anyone (well, anyone that isn’t already a well-trained runner) can get faster over a period of, say, 8 weeks: increase weekly mileage + add a weekly session of short interval training + a weekly session of tempo/mid-interval training. But many people that do just that end up injured or demotivated. They focused on faster, not better.
What if you take a different approach? What happens if you look at running technique, identify physical weaknesses and address through strength & conditioning, gradually increase training volume & intensity, include good recovery and rest, address nutrition, etc? You become a better athlete. And faster as a by-product. It might take a bit longer, but it will last for longer too.