Saturday, May 14, 2011

Managing Projects by Boulder Control

I don't know where I first heard the air-traffic controller analogy to project management, but it's a good one. If you manage multiple projects at once you've got all these planes (projects) you need to keep safely in the air and you've also got to focus on getting planes to a safe landing (i.e. completing projects). You can't neglect one or the other, but you've obviously got to pay special attention to the planes that are landing. From a time standpoint this means to me that you've got to allocate a little time on a daily or weekly basis to keep all projects moving forward and allocate more time to the projects you're trying to complete first.

I like to think of a different analogy wherein each project is a large boulder in a field and I'm trying to clear the field of boulders from the center outwards. Picture a game where the score is a combination of how many boulders you get off the field and how large of a space in the middle you can clear of boulders. I have the choice of trying to pick one boulder at a time and roll it all the way off the field or I can just try to move many boulders a little way at a time to create as much space as possible in the middle. Some boulders are small and I can quickly roll them all the way off the field. Some are really large and take a lot of effort to move even a little way. There may be many boulders very close to the edge of the field that can all be moved off easily.

So how does this translate to managing tasks and projects on a daily basis for me? Using the concepts from David Allen's Getting Things Done I review each project and designate a next action. The problem for me is that it's difficult to break actions down for each project to where they will take an equal amount of time. Some next actions may take a few minutes and some may involve a couple of hours. Thus, I create a list of next actions making sure there is an action from every project. The daily discipline is to spend enough time on each next action so I am moving the project ahead but not too much that I can't at least do something on every critical project. After I at least touch on every next action I spend larger chunks of time working on the next actions for priority projects, or projects that are very near to completion. To go back to the air-traffic controller analogy; I check to make sure all the planes in the air are safe and then focus on the ones that need to land.

This concept is implemented in KMX using tags and the ASSIGNMENTS view. I tag the 'next action' activities for each project with a 'current' tag. Then my ASSIGNMENTS view is filtered to this tag, with all activities sorted by 'Last Activity' column. The activities that have had the most time lapse since there was a comment or time entry posted are sorted to the top of the list. I start with those activities and utilize whatever time I have at the moment to move the activity closer to completion.

At the end of the day the main benefit of this method is making sure that no projects are going stale when there is an opportunity to be doing something (even if it's very minor) to move it forward. At the very least, taking time to think about a project helps to flesh out specifics on what it's going to take to finish vs. procrastinating because your next actions may not be well defined.