Robert Martin recently posted a paper titled “What Killed Waterfall Could Kill Agile”. It’s a pretty good paper and (as I hope all three of the people who actually read this blog knows) I have tremendous respect for Bob Martin. He’s the best. I recommend his books all the time and at all the talks I give. BUY HIS BOOKS, READ THEM, PRACTICE THEM, AND APPLY THEM.
I have read the “What Killed Waterfall Could Kill Agile” paper, and I am not in complete agreement with Bob’s assesment of things regarding how Agile might be Killed, Waterfall’s death, and so on. I bet those of you who know me saw that coming, and you are excused from reading the rest of this post.
Here are a few of my thoughts, without going into too much detail:
1 – The problems with Waterfall are many, and elitism is just one of them. The Waterfall/Traditional/Phased approach (Known as WTPh!, but pronounced WTF!) doesn’t work well for a lot of reasons, but Martin seems to say that elitism is THE problem with Waterfall, and the reason it has failed. I hope I misunderstood that. A much more fundamental reason WTPh! fails is because the deep ineffectiveness of the phased model, which we’ll cover next semester in “Why Waterfall Fails”.
2 – Elitism, and the problems that it brings did not “Kill” waterfall. Nothing has, and it will be a long time before it can be declared dead. Believe it or not, waterfall is still very much alive as a process (I am sure you know this). I talk to a lot of developers and managers, and regardless of what they call it, many are still using a process that is more aligned with Waterfall than anything else. WTPh! seems so logical and correct that it is almost against human nature to think it won’t work. It will simply keep cropping up no matter how low you mow it, pernicious weed that it is. Remember the famous quote (repeated here, word for word): All it takes is for good men to do nothing, and vois la: you get waterfall!
3 – Agile won’t be “Killed”. Agile provides good results when applied appropriately (or so I have found, anyhow). Those of us who have had success with it will continue to use it, learn more, grow it, and continue to have success with it. Success is what makes Agile attractive. (I am grouping the basic concepts of Agile/Lean/XP when I say Agile). It will change, but I would be surprised to see it change to where the core of it has been replaced. But I do like to be surprised, so when something better comes along, I’ll want to know about it, try it, and adopt it.
4 – Agile is not Scrum, and Scrum is hardly Agile (at least as it is typically implemented – or at least as I have seen it implements and have heard from countless others as well). If Scrum is “Killed”, or somehow has an unfortunate “accident”, I doubt if it will “Kill” Agile (for the reasons in item 3 above).
5 – Likewise, the certification frenzy will not “Kill” Agile. Anyone who is fooled by certifications has probably already been fooled by other certifications (like MCSD, PMP PMI, some college degrees, and etc.) and will continue to be fooled by certifications. It is in the corporate genes, so to speak, for a lot of companies. I won’t waste my time trying to convince them otherwise (well, I won’t waste MUCH of my time… well, I won’t waste ALL of my time…). Back to the point: Most people who have had success using Agile while producing software will continue to do so. If we need certs to satisfy our employers or clients, perhaps we’ll get certs – but we’ll still know the truth, and it won’t “Kill” Agile (see point 3).