Agile projects, especially if you are starting your agile transition, can have plenty of problems. Some are technical debt problems, such as the build taking too long or having insufficient automated tests to know if your changes are helping or hurting the system. But there’s another insidious management problem when many teams transition to agile: when the project team is supposed to work on more than one project at a time.
Sometimes, the team perceives this problem and solves it during their retrospectives. But if the team members have been accustomed to multitasking for years, they may not even realize this is a problem. Or if the team realizes that they’re multitasking, they may not know how to solve the problem. That’s when a few observations or measurements may just be what your team needs.
If you have people multitasking in a non-agile project, you might not know until the end of the project (or until some interim milestone) that the team members have not spent enough time on your project for far too long. But on an agile project, you can tell inside of one iteration. Multitasking slows everything down and makes people forget where they were. When developers and testers multitask, they create problems or lose track of where to look for problems.
Cumulative flow diagrams (CFDs) show how much work in processthere really is on your project. See Figure 1 for a cumulative flowdiagram on a highly multitasked project:
You can see that the total work in red continues to grow throughout the project because the team is unable to finish much work. There is significant pressure for more work because the team can’t finish anything. The work in process is in yellow, and there’s a significant amount of it. The team is making some progress later in the year (in the green). But if you look at the January through June time period, you can see the team finished almost nothing.
They were working on a lot, but they were unable to finish work. CFDs are useful for the team and for management. The chart helps people see the effect of multitasking. Just add all the work in process that the team is working on and when the team members finish. You will be amazed. In addition to a CFD, consider a velocity chart, primarily for the team. A velocity chart is a guide for the team to know how much they can commit to for an iteration.
Burnup charts show not just how much work is done but also how much workis being added to the project. Adding work to a project is a symptom of theproject team not making enough progress for the interested parties. SeeFigure 3 for a burnup chart that shows how close to completion a project isand how much more work is being added.
Once you have data, your managers might decide to manage the project portfolio and stop the multitasking. If not, you can defensively manage it. You have several options: to decide on the project portfolio yourself; to spend one-week iterations rolling among projects, one per iteration; and to create space in the iteration for ad hoc work.