Now that was a nice one – as a practitioner of agile ‘stuff’ I have been a big fan of postponing decisions to the last responsible moment for quite a while. Suits my way of looking at things too.
The question of course is: When exactly is the last responsible moment? Usually when building software it is tempting to work with the assumption that the last responsible moment is right before I write the line of code related to the decision. Works well with the way ‘agilistas’ despise Big Design Up Front too.
Funny when you start to compare software development with the real life. (After all: That’s what object orientation is all about, right? Modelling the real word with software representations? But let’s take that at another time and come back to the subject at hand.
While I literary roamed the world in 2011 the concept of planning with regard to the “Last Responsible Moment” made the rounds on some of the mailing lists concerned with agile software development practices.
I on the other hand tried to live a ‘normal life’. writing software and preparing material during the daytime, while spending the evenings with everyday pastimes – in my case Aikido. Never mind if you have never heard of Aikido – although you might want to look it up at Wikipedia.
The question in case is the one of the latest responsible moment – in this case the moment for the decision on whether to hitch a ride with one of my fellow aikidoka, take a cab or take the bus.
To cut a long story short – in the real world the latest responsible moment is not when you reach a bus stop a couple of miles of the central public transport axis of Dubai, shortly after your last training buddy has left.
Especially if the area temporarily has no cell phone reception and that particular bus stop is only serviced until half an hour earlier at this time of the year (mentioned in the small print)
Oh, and by the way: Please refer to “real options” in the comments, so that I have a reason to blog: “What traveling to New Zealand has to do with Big Design Up Front”
well if you know RealOptions, you might know that this example is used a lot to explain RealOptions; So please explain why RealOptions are not valid here.