Which is cheaper, waterfall or agile?
Briefly speaking, waterfall is a cost-optimizing strategy, agile is a time- and value-optimizing strategy. So, when it works, waterfall should be cheaper and agile faster. (ref: all the rework in agile).
But there is the cost of mistakes. In agile, incremental development causes constant rework. In waterfall, you don’t detect certain category of mistakes early, so you build error upon error, which costs, then have to go back and fix it up after. At some point, the cost of fixing the mistakes overtake the cost of rework along the way. Where that point is has something to do with how likely you are to make early mistakes that grow.
I invented a little game to illustrate the different costs incurred, the salary costs of agile versus the costs of fixing big mistakes in waterfall. it’s fun, try it (in an outdoor bar is best). It’s called “pin the earring on the alistair” hah.
briefly described it’s this:
Three players on each team. The players are all blindfolded. On the far wall is a target (alistair’s ear, the time we played it). The goal is to pin an object (earring) on the target, while blindfolded.
Waterfall: Relay style. Spin the 1st person around, point them at the target, let them walk 1/3 of the distance, they call over the 2nd person (blindfolded) and, still blindfolded, point the 2nd person at where they think the target is. 2nd person walks another 1/3 of the distance (it’s good to have 30m distance to go), calls over the 3rd person (blindfolded), points them to where they think the target is, that person goes to the wall, sticks the pin on wherever they end up.
Agile: Three T-shaped people stand together, arms interlocked or on each others’ shoulders (blindfolded of course). Spin them around, let them go. They walk all locked together. But they get to peek at the target every 5 steps.
End result: which is cheaper? The salary cost of the waterfall team is lower, but the odds of them hitting the target is lower.
s. think about building your next house – you would never do the full Scrum method, because salary costs would be prohibitive. You would use a mashup of the two methods.