‘agile’ is an ordinary word in English. It means “able to move quickly and easily” (online dictionary), with an emphasis on changing direction.
So essentially ‘agile’ is the ability to create and respond to change in order to succeed in an uncertain and turbulent environment.
Recently I observed that real world traffic and Google Maps can help a lot in explaining the concept of agility. This post is all about joining the dots.
Driving in a real world traffic is not straightforward. Time taken to cover a distance depends on traffic jams, weather conditions and other unknowns.
When someone asks how much time it will take to cover a specific distance in Delhi traffic for instance, only true answer is a range of time, say anything between 30 minutes to 1-1/2 hours.
Moving back to software world, when someone asks a similar question, e.g. provide an estimate for a complex software project, there can’t be a single estimate but will be a range of estimates, i.e. anything between ideal scenario and the worst case scenario.
[Read more…] about What Exactly do We Want to Achieve Through Agile? – A Google Maps Example