Tuesday, July 8, 2008

Managing Scrum: Traditional Project Management Software

From the moment I started working with Scrum until I wrote the quick poll on agile tool usage, it never even occurred to me to consider using classical project management tools like Microsoft Project. Why not?

Just as Neo knows that there is no spoon, and managers need to learn that there is no box, agile project managers know that there is no critical path. The world view, basic concepts and individual responsibilities in a Scrum environment are different and so the needs of the underlying software are different as well.

The Product Owner negotiates with the team on the basis of functionality to be realized, not in terms of tasks to be accomplished. The Scrum master eliminates impediments and helps assure that everyone is working on the highest priority stories in the current Sprint. The team members look to the task board to know what to do, to inform their colleagues of what they are doing, and to update their status and their estimates daily. The state of the project is visible for all to see at every step of the way.

What does classical PM software do? According to Wikipedia, the purpose of project management software is to:
  1. Schedule a series of events,
  2. Mangage dependencies between events
  3. Schedule people and resources
  4. Deal with uncertainties in the estimates of the duration of each task
  5. Arrange tasks to meet various deadlines
  6. Calculate critical paths
  7. Reporting
Do these functions correspond to the needs of an Agile Team? There is no critical path, so Gantt charts don't help much. The schedule of events is largely determined by the priorities of the Product Owner and are negotiated from sprint to sprint with the developers.

The estimates are handled in two levels of detail - 1) seat of the pants 'story points' for rough sizing and scheduling at the release level, and 2) very detailed task estimates for monitoring progress through a sprint. The only deadlines are sprint demos and they are fixed by the sprint rhythm.

Really the only thing left is reporting, but given that all the underlying concepts are different, of what use will be the reporting from such a tool ?

[Previous:Managing Scrum with Dedicated Tools ]
[Next: Managing Scrum: the Right Tool for the Job ]


Kate Carruthers said...

Your points are valid for the Scrum work itself, it is managed adequately via the Scrum process. However, often the Scrum is delivered as part of a larger program of work that needs to be coordinated and reported to management. This is the problem area where we need to let Scrum happen properly and not impose Project Management tools that don't make sense or add value. But we still need to recognise the need to report effectively on the work done so that management can percieve the value being delivered across the entire portfolio of projects (both waterfall & agile). Still working on answers for that one though.