SourceForge Logo

The Motivation...

XPlanner was motivated by a need to address some planning-related issues in a relatively large XP team (15+ developers). We were using the note card method of planning and although it worked reasonably well, there were shortcomings. For example, our customers on the project were actively involved but could seldom be on site since the corporate headquarters was several thousand miles from the software development center. Note cards did not provide the customers with adequate visibility into project activities. This was especially true for the tracking phase. Other issues were the problem of note cards being misplaced or damaged (coffee spills, etc.). Let's face it, software developers as a whole are not known for being neat freaks. Another issue was time tracking. The developers did a great job of recording their time, but the processing of the tracking data at the end of an iteration was a burden. A developer volunteered to enter the cards into a spreadsheet so it could be analyzed in preparation for planning subsequent iterations. Again, this worked reasonably well but it didn't seem quite right. Only one developer was even slightly interested in entering time entries from the cards. At one point he was gone for several weeks and it was a problem because the other developers were not interested in that role. It also seemed like a violation of the "one and only once" principle to record time entries on the back of cards and then later manually translate them into an electronic format. Finally, the note card time tracking didn't give our customer a "warm and fuzzy" feeling about our progress during an iteration. Given the number of developers and the resulting large number of story and task cards it was difficult to get an overall view of the status of the team at any given point in time.

To summarize, some of the key goals are...

  • Provide an easy, flexible, (and maybe even fun?) way for developers to track effort on stories and tasks.
  • Provide continuous feedback of team status to customers - either on site or remote
  • Increase team communication through a shared view of activities and their status
  • Provide a low-effort and automated means of providing planning metrics for iteration planning