When I first saw this (quite a few years ago now), it made me laugh. In fact I thought it was hilarious. A really humourous insight into one of the key issues in software development.
When I saw it again recently, to be honest it still made me laugh. But – when I thought about it a little more deeply – it also made me sad. Sad that the industry I take such a pride in being a part of, has this reputation. This reputation for delivering the wrong product! And that’s just not funny 🙁
The key principles of agile software development help enormously with so many of the common risks of project failure. Of course they don’t alleviate all risks. Not at all. Because software development is complex. People are complex. And the combination of software and people is a lethal cocktail of unpredictability. But if there’s one risk; one risk that agile software development really does guard against; it’s this one.
The key principles of agile software development really do provide some insurance against this risk. The key principles of active user involvement, empowered teams, incremental development, frequent delivery of product, testing throughout, close collaboration, etc.
And if *your* product – like so many of mine, now and over the years – is a product that generates revenue – a product that is sold – then this, and this alone, can make the difference between success and failure.