I’ve got very interesting feedback for my last post about the decline of agile. I strongly believe that producing quality software, regardless of how it is produced is the most important thing we can do, regardless if we’re developers, managers or anything in between.
But is it enough to save agile?
Maybe it’s the wrong question. Does “agile” matter if we’re still pushing out quality software?
I’ve thought a lot about it, mainly because of Bob Martin’s comment:
I take solace in the fact that while TDD is no longer a conference draw, my classes in TDD are enjoying ever larger attendance. More and more people are _adopting_ TDD, and getting serious about good software practice. And _that_ is the thing that will advance the software industry, no matter what happens to the "Agile movement".
If TDD succeeds, we’ll get what we want – working software. That will bridge the gap between developers and the business, and everyone lives happily ever after.
I see a small problem with that plan (although I really wish it came true).
For the last decade, people have adopted TDD. They went through many obstacles that the business had put in front of them. That’s why successful adoption was despite management, rather than with their support.
It’s different now, isn’t it? More organizations are “doing” agile, and it’s easier to get support for agile practices. It’s easier to get funding for TDD classes. Less obstacles means more adoption.
What happens if (and when) the backlash begins?
Organizations that implemented agile poorly, would cry foul. “You stupid people, you’ve done agile without supporting software practices. What did you expect? You can’t have working software without software practices!” We’d say. But it will be too late. The press will cry out “AGILE IS DEAD! Get off the ship before it sinks!”.
The business people who supported agile will make a U-turn. And the team leader who wants to do TDD will need to go back to working in guerilla mode. At night, when no one is watching. And she will do TDD. Only this time, there will be more obstacles than before, because of that “failed-agile-thingy”.
I’m sure the righteous people will continue to promote the software practices. It’s just going to be a tougher battle than it used to be.
So where does that leave “the agile movement”? A very small, disbanded group of heroes, who thought they found the bridge between software and business. Instead, they lost all hope in ever getting trust between the two parties.
I’d rather have that bridge than lose it. Even if I had Working Software.