There is no conflict between speed and quality! That was the header for lesson one of your relearning program. You want to improve software development productivity in yourself, your team or your organization? Then follow me along and debunk a few myths.
So people keep talking about the Agile – Waterfall dichotomy. About agile and un-agile practices. I decided to have an unscientific look at what Agile isn’t. If there is a true dichotomy between Agile and Waterfall, then things opposite of Agile should be either entirely out of scope for projects…
What’s an Agile Driver? I have always been driving kind of ad hoc. Getting from A to B with no particular plan. If I were a programmer you would call it “cowboy coding” but I’m not, so we can call it “cowboy driving”. People, everyone it seemed — my boss,…
As humans we love the majesty of nature. Who can fail to be impressed by such majestic cataracts as the Niagara falls or the Victoria falls? Someone said that falling is fine, it is hitting the ground that kills you. Same thing with the water in the waterfall. When it hits the end, enormous chaos is generated both visibly as spume and invisibly in the water.
We do not usually try riding a waterfall in a barrel. We can harness it for electric power. But if we do, we certainly do not want to ride it in a barrel.
Agile is also a Waterfall
Laminar versus turbulent flow. Image reused from http://www.ceb.cam.ac.uk/pages/mass-transport.html .
Agile software development methodologies are about breaking the waterfall into safe, manageable steps. The impact is not saved for the end in a big bang delivery. Instead it is taken one step at a time. The water does not flow as chaotically. It is more like a laminar flow.
I am not going to write a lot on waterfall versus agile but… An interesting point that is worth reiterating. Waterfall software development processes can remind us of many of the important steps in software development. The difference is not so much in what we do as in how, when and what order.