Thursday saw the latest instalment in the Agile Malaysia journey. After an extended hiatus, we got together…
You might have read this answer to the question “Why are software development task estimations regularly off by a factor of 2-3?” by Michael Wolfe on Quora; if not, go ahead and read it now. It’s a great analogy and really helps to explain to non-developers why estimations are so often wrong. It also got me thinking about how Agile techniques try and solve the problems of estimation and planning. If we’d been using Agile, what could we have done differently?
I think the first fatal mistake on the journey was indicating a deadline before any work had been done at all. We knew where we were going and we knew roughly how long it might take (or so we thought). How about if we’d set off down the coast and then made the first call to our friends? After the initial difficulties, maybe we’d be more realistic about when we’d reach LA.
But what if we’d come up with that 70 day figure? Typically, there’s three choices: plough on and consider the reward worth the investment; kill the project entirely – turn around and go home; or try and negotiate on scope. How about our friends travel up and meet us somewhere near Hearst Castle? We still get to meet our friends before Easter, although it’s not ideal as they have to do some work they didn’t want to.
The other thing to consider is that our destination may change; maybe our friends move house (good thing we didn’t buy that detailed map of their area, that would have been a waste); or maybe they’ve upped and left entirely and we’ve walked all the way down the coast for nothing – what then? Maybe we should have had different goals – incremental goals that we achieved throughout the journey. Instead of our only pay-off being the meeting with our friends, how could we have delivered value throughout our journey? Well, if we changed our original goal to being a party with all our family and friends, maybe we could have met up with each of our family en route rather than having one big party in LA.
OK, so maybe I am torturing the analogy a bit; maybe you can never find a perfect analogy for software development (I’ve not seen one yet) but the walk down the coast is a great explanatory tool to show how a project that looks simple from the birds-eye view can get sticky once you zoom in.