Agile software development -- an expedition?


In yesterday’s post I used the image of going on an adventure to overcome the perceived pressure of an empty page. I find that a special type of adventure, an expedition, is also a very good metaphor for the topic of project management, especially iterative, agile project management for software development.

Because a project is a team effort, the image of an expedition to unknown territory is really fitting. Like a project, you need a whole team of people for such an expedition.

This is how I like to describe common agile artifacts and meeting types in terms of an expedition:

  • The backlog: Because you are going into unknown territory, you probably don’t have a detailed map. But you must have a rough idea of what you are trying to achieve. These are you initial backlog items. The once that are further away will be rougher and less detailed. But the closer you get, the more details you will need to add in order to progress on your journey.
  • The daily: This is like a daily tactical meeting on an expedition. Everyone gives a brief report of their particular area of responsibility. If necessary, the team will decide to change the plans for the day. For example, the water supply might be lower than anticipated, so the team decides that two people wil make a detour to a nearby stream to top of the supply.
  • The review: After completing a part of the journey, the group must stop and actually look around. Are they making progress? Are they going in the right direction? Are their original plans still valid or should they make changes? This is also a time to celebrate their progress and take some rest for the next part of the journey.
  • The retrospective: Every so often the group takes time to reflect on the way they are progressing. This is not about asking if they are going in the right direction towards the right goal. This is about how they are going about planning and executing the expedition. This is about becoming a better team of explorers, about improving their abilities, finding better ways to do things, finding new tools. This is all about learning and improving.

See also