Can your Cumulative Flow Diagram (CFD) show you what you need to see?
This blog is second in the three part series in Extracting Insights at scale using a Cumulative Flow Diagram. In the first part of this series, we talked about what a Cumulative Flow Diagram (CFD) is, its shortcomings, and how it can be solved.
The Time when CFD was no longer useful
At Flomatika, we had been using a basic cumulative flow diagram to observe our delivery flow. But as our team grew and processes scaled, we had a hard time extracting insights comprehensively. It was also especially challenging to spot a problematic workflow stage that’s lost among multiple workflows. It was then that we realized that it’s time we give it some Flomatika spin.
What was the problem?
Our basic CFD showed all the workflows of all the work item types in the same chart. This was great when all work item types shared the same workflow, which gave us visibility over everything in one glance. As the workflows became more complex and more work item types with their own unique workflows were added, the graph seemed more like a kaleidoscope of overlapping labels that made it impossible to gain precise insights.
From Problem to Solution
It was then that we went back to the basics—that is: to plot the CFD in the traditional way against core workflow stages. But in order to make sense out of it, we had to leverage Flomatika’s normalisation engine to identify and categorise workflow stages as ‘Proposed,’ ‘In-progress,’ and ‘Completed.’ Through such approach, the CFD that will be generated will show how all the work is flowing from ‘Proposed’ to ‘In-progress’ to ‘Completed’ workflow stages despite each work item following a different workflow.
As a delivery lead, you would want to know if your flow of work from “In progress” to “Done" is stable or not. You also want to have visibility over the stability of flow across individual workflow stages, but tracking the flow of your work across a large number of workflows is a nightmare, isn’t it? Perhaps there are occasions where you want to analyse flow for just Epics or Features, or you realise that there were a number of bugs raised and all the bugs are being worked on but not many have been resolved yet. Maybe you want to know where the bottleneck is and at which stage is the actual traffic jam?
In order to design a cumulative flow diagram solution that provides key information, we researched and created some common scenarios when a cumulative flow diagram is sprung up onto the screen and is a part of the conversation.
We identified some common answers that users aim to find in CFD. This essentially narrowed down to probing questions like :
- Which stage has the longest cycle time?
- How many items are there in each stage?
- Which work item type is increasing the WIP and at which stage?
- Which work item type is affecting the throughput?
- Are there any brewing bottlenecks?
- At which stage is most of the work stuck?
- What is the lead time for Epics (for example) and is it stable, increasing, or decreasing?
- How many days on average is an Epic spending in the testing stage?
- How many items have been completed so far?
Our endeavor at Flomatika is to simplify the experience of finding similar answers in a CFD using an easy interface where you can get the information you want, and explore hidden insights from a cumulative flow diagram with just simple selections.
Designing to fit the bill
To build a CFD that is fit-for-purpose, it was paramount to understand and cater to our design challenges which were:
- How to allow users to instantly generate CFD for their specific scenarios
- Give users the ability to dig deeper to investigate problem areas.
- Present the data around the problem areas with just a ‘select here and point.’
To begin the concept, we sketched our CFD to show the flow of work from ‘Proposed’ to ‘In-progress’ to the ‘Done’ state in order to show the overall process stability. The CFD will show bands for core workflow stages:
Cumulative Flow Diagram for core stages of the workflow
- A band for workflow steps that come under the “Proposed” workflow state (this band did not make it to the final design, however. I’ll explain why later).
- A band for “Work in Progress” (the blue band in the CFD snapshot in Image 1) that encapsulates all the workflow stages which are considered as “in-progress/in-flight”. It will take into account all the work items that belong to the workflow stages that fall under the “In-Progress” category.
- Similarly, a band for “Work Completed ” (the green band in the CFD snapshot in Image 1) will take items marked as completed into account.
Such a view of CFD helps remove the noise and allows one to focus on the summarised view, with the qualitative and quantitative understanding of historical and current state of flow. It helps answer questions like, is my WIP stable or is it increasing? Is my throughput rate steady? Has the lead time remained consistent? This information is easy to observe visually. However, to validate this observation, we needed to analyse the “numbers”. The best way to do so is to provide the values for:
- Number of work items in each state category
- Average lead time for each frame of time
- Throughput for each frame of time
- The rate of arrival of work from a “Proposed” state to “In-progress”
As a UX designer, I believe the obvious place to present this information is the exact point where the user's curiosity is triggered (i.e. the spot where you see an anomaly). As your analytical eyes and your cursor run through the graph of a cumulative flow diagram and you see your WIP increasing after a point, you ask the question: what happened here 🤨? You lower your gaze and the answer is right there as your cursor hovers over the spot, telling you the number of items that are in-progress and done, the average lead time, the throughput rate, and arrival rate and compare them with historic patterns.
So far, our CFD looks like this:
This is a simple view of our CFD. We removed the band for “Proposed” stages because at Flomatika, we consider flow of value stream delivery to begin at the “Commitment point,” when work comes ‘In-progress’ and your lead time is calculated from then onwards.
With this design, we have somewhat addressed some of the design challenges. It’s a good start but there are still more we need to address.
A CFD for all your Workflows
Our aim was to provide users the convenience to extract and view the details of scenarios such as:
“As a user, I want to be able to observe the flow of work through all the workflow stages of a work-item type ‘Epic’, specifically focusing on the time period when the WIP started increasing for the testing phase of Epic workflow.”
For a user story as explicit as this, our solution will make accomplishing this task quite easy.
The user will simply make a selection of the relevant work-item type which will present a cumulative flow diagram.
And to give the ability to focus into the time frame where WIP started increasing, there is a mini view port of the CFD which displays the same pattern of bands making it easier for the user to drag and select the time frame.
In this view, where all the stages of a workflow are presented to improve flow analysis, we present some further supporting details similar to the ‘Simple View.’ The users will be able to easily find out how many items there are in each of the workflow stages, what the cycle time in each of the stages was, the average arrival rate, and throughput rate. To make it even more insightful, we included a table (as shown in Image 6 below) that shows the daily average of arrival and departure rates and WIP for each stage of the workflow.
A Click here and a Point there - you’ll have all that you need to know!
The design enforces a simple selection mechanism to help users set the scene and analyse relevant flow. Hover over the graph to dig deep into the values for critical information.
A Summary of Details
The summary statistics completes the cumulative flow diagram picture perfectly. It helps users to really investigate the flow rate at a work item level and workflow stage level.
Using CFD to optimise Value stream
In optimising your value stream, a cumulative flow diagram that gives you all the information you need and allows you to switch and observe multiple workflows with simple selections becomes your power tool.
At any point in time, you can know what is happening with your flow. It becomes easy to spot anomalies like brewing bottlenecks and analyse their causes by:
- learning about the increasing number of items affecting the WIP count, lowering of the throughput rate,
- Easily compare the arrival rates.
- Quickly know if your cycle time is increasing or decreasing or if your average lead time is stable or not.
Being well-informed about these metrics helps you take just the right decisions to improve your value stream.
In the third part of this series, we will explore the common scenarios that you can spot in a cumulative flow diagram and how to analyse it.