Cumulative flow diagrams: how they work and why they're useful
Sometimes, to get a bit of perspective, you need to zoom out. Far out. Not just a bird’s-eye view, but a jetliner view. Or maybe a space station view. Could even be from the moon. Or all the way from another star system. Perhaps a view from the other side of the Universe where the light of our galaxy has only begun to be visible to the local inhabitants 12 billion light years away... though that may be traveling a little too far.
The further out you go, what up close may seem very chaotic and haphazard begins to look calm and orderly.
This is true with your team’s own goals and initiatives. If you look directly at the pile of in-progress tasks and Stories, you may miss the forest for the trees. And, unless your aim is to be the most annoying micromanager ever (editor’s tip: do not aim to be that), it’s just not possible to see what every member of your team is doing at all times, particularly if you’re managing a distributed team.
So, how do you make sure a project is running smoothly, that everyone is doing their part, and that your workflow is sound? By zooming out to look at the whole project, not the day-to-day tasks. Kanban charts, and the cumulative flow diagrams they generate, can help by showing you the broad trends of how your team is completing work, identifying potential blockers, and ringing the warning bell on scope creep.
Here’s how they work and how they can help your team.
What Is a cumulative flow diagram?
Have you ever looked at a burndown chart and thought, “This is great and all, but that’s just, like, a line. Where are all the colors?” If so, cumulative flow diagrams (CFDs) are for you.
CFDs are the inverse of burndown charts; in fact, they are sometimes referred to as burn-UP charts. Instead of tracking the amount of work left to do until a project is completed, they track the amount of work that's been done since a project began.
This information is depicted in an area chart, where the number of stories in each part of the workflow, from the idea stage all the way to fully completed, are each represented by a different color.
These diagrams look like digitized sand art AND they are also an extremely useful tool for tracking team productivity, identifying bottlenecks in workflow, and stopping scope creep. That’s a fantastic one-two punch.
Cumulative flow diagrams and agile management
CFDs are a key part of the Kanban method of product management. This agile management system is designed to help you optimize team efficiency without overburdening all the people on that team. Instead of tasks being assigned by a supervisor, workers pull tasks from a central pool.
This is organized visually using a Kanban board where each column represents a step in the workflow, and each card represents a story. The board tracks the story as it moves through the workflow from the beginning (story added to the backlog) to the end (work on the story is completed).
CFDs pull their information directly from a team’s Kanban board to provide a visual representation of how much work is in each stage of the process at any given time.
The main goal of Kanban is to manage workflow efficiently. CFDs help facilitate that goal by showing you how much work is backlogged, in progress, and completed, and how those numbers change over time. This helps you understand your team’s progress and identify blockers.
How to read a cumulative flow diagram
Cumulative flow diagrams contain a lot more information than the visually simpler burndown charts, which might make them look a little overwhelming at first glance. But they're pretty simple once you get the hang of them.
The Y-axis on a CFD represents the number of stories in play, and the X-axis measures time. Each color on the chart represents a different workflow state. In the chart above, stories ready for development are in purple, stories in development are yellow, completed stories are in green, etc. Note that in Shortcut, the workflow states shown here will simply be the ones that you've created or chosen to use.
Looking at the chart gives you an at-a-glance view of how many stories are in each stage of production at a given time and how that number is changing over time. Ideally, as time goes on, you would see the backlog volume diminish and the number of completed tasks rise.
What your cumulative flow diagram is trying to tell you
CFDs can help you improve your work process by visualizing your project’s workflow. Here are some of the main things you can learn from them:
How much work is in progress
The vertical gap between the backlog of stories and the number of completed stories represents all of the work currently in progress.
What you want to see is a balance between the arrival rate (the rate at which stories are entering the workflow) and the departure rate (the rate at which they are leaving the workflow, i.e., being completed). The work-in-progress gap should ideally be evenly sized as time goes on. This means that team members are picking up stories and then completing them before picking up new ones.
In our example cumulative flow diagram, work starts to pick up about a week after things get going, with lots of Stories either Ready for Development (purple) or In Need of a Spec (pink). As work on this initiative begins to seriously move to In Development (yellow) and some of that works move to Ready for Review (red) we can see that the the yellow and red remains steady throughout as the Completed (green) work grows indicating that developers are keeping a good pace.
If the gap starts to balloon over time, that is an indication that team members are starting more tasks than they are finishing. It’s time to start looking for a bottleneck: what’s keeping them from completing stories? Likewise, if the gap becomes too narrow, it means that people aren’t picking up new tasks to work on. Take some time to dig into why.
Your customer lead time
Customer lead time is the amount of time it takes a story to progress through the entire process, from the time it appears in your system until it’s completed. You can measure this by creating a horizontal line on your chart from the time the story was entered until completion.
A similar concept is cycle time. This begins when someone on the team picks up and begins work on a story and ends when the story is completed. This shows you how quickly your team is working.
Ideally, this can be tracked in tandem with the work-in-progress. Ideally, so long as work that is "In Development" (or whatever you choose to call it) remains steady and on track while the Completed work grows, then you can feel good that Stories are getting out to customers at a good clip. However, if the Spec Needed / Ready for Development stories grow while everything else remains the same or shrinks, your customer lead is likely growing as well and needs to be looked into.
Tracking these two measurements can give you a better understanding of your team’s capacity and efficiency. Ideally, you should be working to shorten the gap between lead time and cycle time. You don’t want stories just hanging around unworked on. A large gap indicates that your team has too much work to do to efficiently tackle new stories.
The Project Scope
You can keep tabs on the scope of your project and keep an eye out for bloat by watching the upper curve of the stories-added line. If it remains relatively level, then the scope of the project is stable. If it continues to increase, then the scope is growing.
That’s not inherently bad. Work is often added as a project progresses. And for CFDs that are measuring open-ended projects or workflows, it’s to be expected, but for projects that have set due dates, this could be an indicator that the scope is getting out of control.
In our example chart, we can see that the addition of Spec Needed and Ready for Development stories consistently shrinks over time and becomes totally overmatched by the Completed work fairly quickly.
Ideally, the corresponding finished-stories line should be increasing in tandem or at a greater speed than the stories-added line. If you’re adding stories faster than you complete them, you’re getting further away from the point of completion, and you may need to re-examine your workflow or find a way to cap project bloat.
And estimated delivery date
If you are working on a finite project, you can use the diagram to help estimate a delivery date by forecasting the time when the completed-stories line will meet the backlog line. You can also update and adjust this forecasted due date as the line changes over time.
Benefits and limitations of cumulative flow diagrams
Cumulative flow diagrams are useful tools for streamlining and optimizing a project, but they’re not a cure-all for productivity woes. Understanding the pros and cons of CFDs can help you know when to use them.
- Are compact. You can view a large amount of data encompassing weeks, months, or even years in a single chart. Even if you’re managing thousands of stories, a CFD can display the data in a useful way.
- Make a great visual aid. All those pretty colors make them an excellent tool for reporting on productivity to non-technical team members.
- Are helpful for identifying workflow issues. It’s easy to spot workflow issues that wouldn’t be apparent otherwise and head them off before they cause major delays or team burnout.
- Only show historical data. CFDs aren’t terribly useful until you’ve had time to collect several weeks of data.
- Don’t predict the future. Unlike burndown charts, CFDs can only tell you what’s already happened.
- Can be overanalyzed. If you’re worrying about day-to-day changes in your CFD, then you’ve moved from optimizing to obsessing. Use CFDs to assess broad changes, not to micromanage team members’ movements.
Generate Useful Cumulative Flow Diagrams with Minimal Effort
Charting your own CFDs with magic markers and paper might make for a fun art project and maybe something to let your kids help out / keep busy with
To make useful CFDs, you need a project management software that makes it easy to create and manage Kanban boards. It will not surprise you to learn that Shortcut fits this bill.
We also automatically generate cumulative flow diagrams by pulling data from any of the Epics you create within your account. Let us do the hard work so that you can focus your efforts on something more productive, like finishing all that work you see starting to pile up in your cumulative flow diagrams.