The Agile Project Management people provide an analogy whereby traditional project management methodologies are likened to a railroad track between two known points and Agile to a boat taking a faster, uncharted seaborne route. The idea is that a skilled boat captain should be able to make rapid and calculated course alterations in order to arrive at the right place, even if it isn’t the original planned destination, which is something that the train cannot really do. This assumes, of course, that the boat has a good captain, the crew has been taught how to deal with continual change throughout the journey, and that there are no pirates on the team who are determined to undermine the process.
For the sake of romanticism, let’s consider our train to be a steam locomotive and our boat to be a sailing skiff. Now imagine a race between two teams: the locos and the windies. As our combatants speed towards their final port of call, the locos have to put in an extraordinary amount of effort on repeatable, easy-to-learn tasks such as shoveling fuel and oiling the machinery but, barring any unforeseen problem with the track, they can be pretty certain of reaching their stated goal. The windies, on the other hand, have to be far more responsive to their environment: the wind is continually changing direction; it’s not always easy to see that the route is the right one given that they can’t see the end-point; and there are many different routes to choose from. It would seem, then, that the locos are bound to win as they have both a predictable path to travel – one that has been traveled many times before – and a simple (albeit involved) approach to getting there.
If we know both the terrain through which we aim to travel (the underlying technology) and also the exact location that we are heading for (customer requirements), it makes complete sense to take the train. Indeed, it is a very compelling idea to map out a route at the start of EVERY project, selecting the route at the start of your journey based on an understanding of where you aim to end up. The danger comes, however, when we think we know the environment and end-point but, after many months’ effort, realise that we were mistaken, ending up at the wrong destination while implementing tools that aren’t fit for purpose.
All things being equal, if all factors are known at the outset then we can be pretty sure that the locos are going to win. But what happens if the destination is moved halfway through the endeavour? Well, the locos will need to lay more track and the windies will start to make course alterations. And the more we move the finishing line, the harder the going will become for the locos. In fact there will come a point when the windies really start to reap the benefits of their agility and ability to change direction in response to new information to the extent that they can actually win the race, leaving the locos stuck in a swamp some 20 miles away in the wrong direction.
It’s fun to sail and it’s fun to take the train; which you choose just depends on whether you are setting off for a known destination or attempting to explore uncharted territories. Ask yourself whether you are going to be a ‘settler’ or a ‘prospector’ on your next project, and that should help you decide which methodology to follow. If you don’t know where you’re going, or the technology required to get you there, you really should consider an Agile approach!