Agile vs Waterfall
I have come to dislike “agile vs waterfall” discussions. “Agile vs Waterfall” is a false dipole which leads to confusion about agile. “Waterfall” is neither a thoughtful philosophy, nor a well-designed methodology. It has no insights which counter-balance agile. Whenever “waterfall” is discussed, we’re usually talking about the decrepit, failing, ill-considered Taylorism which has become the de-facto, low-energy state of the information industry. The term “waterfall” is simply a description of this problematic, “default” approach to developing software. As such, there is no meaningful way to blend the ethos and values of the agile movement with “the best of waterfall.”
But You Knew That
We know this. We, as a community, have known this for a long time. Nonetheless, these discussions of “agile vs waterfall” continue to abound, as if both are evolutions of the same pedigree, as if both will someday come to be fossilized and discarded as “the best approach back in those days.” Perhaps this will come to be said of agile, but its laying it on a bit too thick to say so of “waterfall.”
Our real struggle is with Taylorism, whose core proposition (at least the part which has stubbornly survived until today) is that Management Knows Best, and non-managers must be told how to do their jobs.
The Manifesto Was A Response
Agile, as understood from the perspective of its manifesto, is not so much an evolution on the theme of Taylorism as it is a repudiation of it. Where Taylorism narrows the pool of decision makers, agile widens it. Where Taylorism chokes communication down to one-talking-many-listening, agile opens communication. Where Taylorism is utterly obsessed with process, agile lifts individual workers to the role of process designer, aided by dialog and reciprocity. Taylorism values definition and its attendant rigidity, while agile embraces flexibility. Item for item, each point in the Agile Manifesto addresses and repudiates either foundational tenets, or direct repercussions of Taylorism.
Are You A Leftist?
Of course the manifesto carefully says, “we value the items on the left more,” seemingly leaving the door open to some measure of the “items on the right.” That is appropriate when considering the “items on the right” from the practical standpoint of tools. But as soon as you descry a larger philosophical framework behind those items on the right, you have a showdown between two philosophies which are diametrically opposed to each other. We cannot layer agile values on top of a foundation of Taylorism and expect a meaningful result.