XPlanner and Distributed XP Teams


XPlanner was originally developed to support a distributed XP team. This team had been using note cards successfully for over a year but a key stakeholder had been required to travel extensively and they wanted to monitor the development progress. Later, we used XPlanner as part of a larger tool suite to support distributed developer teams. This article describes some of the tools and techniques we used.

The web-based, thin client approach used by XPlanner makes it very useful for a distributed team. I’ve participated in distributed planning games where most of the team was collocated and one or more team members were at other locations. We typically displayed XPlanner at the central site using a video projector and used a speakerphones and conference calls for verbal communication. As we clarified stories and created estimates, anybody at any location could make related changes in XPlanner. This worked very well.

Status tracking is equally facilitated by XPlanner’s web-based interface. Developers enter their actual hours and task status. Any authorized user can monitor the status of an iteration and see who is working on what tasks.

The ability to attach notes and documents to plan elements like stories and tasks can also be useful as a simple means of distributed communication. However, it practice I’ve seen this used much less than IM, email, phone calls, and wikis.

Our distributed team used a single CVS repository for development. We used an integration token (sometimes called an integration "hat") to control integration activities. Some of the tokens we used included a toy light saber, a skeleton on a stick, a hard-hat, and so on. This became more problematic with remote developers. Initially the remote developer would call someone at the central location to hold the token for them until the integration was complete. The web-based integration token eliminated the need for those calls and, as a bonus, recorded a summary of recent integrations. The integration history was useful to see who was integrating what types of functionality. This type of transparency compensates partially for not having the whole team in one room.

As I mentioned earlier, XPlanner was only a part of a larger tool suite for supporting distributed development. The following is a summary of the tools I’ve used on distributed XP projects. The order of the tools list for each phase is an indication, more or less, of each tool’s usage frequency. Other tools like blogs may be useful for distributed teams but I haven’t personally used them yet for that purpose.

During story definition:

  • XPlanner
  • issue tracker (Jira)
  • email
  • telephone
  • wiki

During the planning game:

  • XPlanner (video projector at central location)
  • issue tracker (Jira)
  • telephone (speakerphone)

During the iteration:

  • XPlanner (time tracking, integration tracking)
  • issue tracker (Jira)
  • wiki
  • instant messaging
  • email
  • telephone (standup meetings and as needed)

Leave a Comment