Maximize Your Predictability: How to Manage Blocked Work in Kanban
Building a robust, reliable system that enables a smooth, predictable delivery of work requires a great deal of effort.
However, even with an efficient Kanban pull system in place, one where the team pulls the work themselves, WIP limits are set up and team members are autonomous, there will be tasks that inevitably get stuck in the workflow.
Blockers come in all shapes and sizes. From dependencies between tasks, teams, and third parties, to a lack of information or unclear requirements, they vary in causes but carry the same negative effect – delay in delivery.
A system prone to delayed deliveries is a system prone to unpredictability. Blocked work puts our commitments at risk, posing a threat to our consistency and reliability.
But just because they’re inevitable, doesn’t mean blockers can’t be managed. By knowing how to efficiently deal with blockers, we can deliver work in a quicker, more predictable manner and drive cross-organizational evolutionary change.
Distinguishing Between Waiting Work and Blocked Work
Before we delve into the ways of managing blockers, it is important to emphasize that blocked work is different than waiting work.
In a Kanban pull system, the process steps are split into active and queue (waiting) states. Queue states don’t constitute containers for blocked work. Tasks held in the queue states wait their turn as the team pulls them forward once they’re at capacity to do so; nothing blocks these tasks from progressing.
On the other hand, blocked work is prevented from moving forward due to unforeseen circumstances.
The inability to start working on a high priority feature because there isn’t enough information on the goal it needs to achieve? Waiting on a license to be purchased before we can move on? Those are valid blockers preventing us from delivering customer value. We’re unable to carry on with our work despite being at capacity to handle it.
Let’s go through the process of managing such blocked work, step by step.
Managing Blockers in Kanban
Managing blockers, as described in the Kanban Maturity Model, helps you facilitate effective risk management and improve service delivery by avoiding the same impediments from recurring. The process entails you:
Visualize the blocked items
Making blocked work items visible on a Kanban board helps you create a sense of urgency to resolve the obstruction and unblock your flow of work as soon as possible.
Use a flag to mark the card you’re unable to continue working on. Include any additional information to the card:
- The reason for the blockage
- Main causes of the blockage
- The person responsible for unblocking the work item
- The category of the blockage
- The date of blocking
- When was the work unblocked
- Total blocked time
This information will prove useful down the line while performing blocker clustering – a technique that helps us understand and eliminate the root causes of blockers.
Treat blocked work the same way you treat the rest of your work
A blocked work item is still an in-progress work item, a commitment, a piece of value your customers are waiting for.
Both blocked and unblocked tasks should count towards your WIP limit and have a Class of Service assigned to them. Discuss how to tackle blockers during your daily standup meetings. Your team won’t be able to resolve some of them on their own, and in that case, you need to escalate the issue higher up.
This way, you will encourage an early and swift resolution of blockers standing in the way of oncoming work.
Use a data-visualization tool to track blockers
Visualizing and treating blockers the right way is a good starting point, but to raise awareness of their impact, we need an easy way of evaluating blocked items.
You can use Nave’s Cycle Time Scatterplot (CTS) to detect all of your blocked tasks at a glance, for any given timeframe.
Each dot on the graph is a delivered task. The X-axis displays its completion date while the Y-axis outlines its cycle time. The slightly bigger, red dots represent tasks that have been flagged as blocked.
Dots higher up on the graph are tasks that took the longest to complete. There’s a good chance a blocker was the main cause of a delayed delivery of these tasks. To verify this is the case, click on the dot to reveal its total blocked time.
Nave’s Cycle Time Scatterplot is a part of our advanced Kanban analytics suite. Try it out for free on your favorite tool and start leveraging the power of data-driven management.
Pay close attention to the tasks that have crossed the commitment point; for example, if you’ve based a service level agreement on the 85th percentile, the outliers that exceed the line are good candidates for closer examination.
Analyze the root cause of a blocker
Identifying and solving the root causes behind blocked work is one of the most effective ways of enabling evolutionary change.
You can leverage the list of blockers compiled by the CTS to deliver work in a quicker, more predictable manner through a process called blocker clustering.
Harvest the blocked tasks once per month and look at their causes of delays and resolution times. Group the blockers by internal and external causes, clustering the blockers which are similar in nature. Then, capture the total blocked time for each group to discover which types of blockers are more harmful than the others.
For example, if ‘’unclear requirements’’ blocker cluster is topping your list, think of a solution for this type of blocker first. Keep asking yourself why this type of blocker is occurring to derive its root cause.
- Why are the requirements unclear? Because the user story is vague.
- Why is the user story vague? Because it only outlines the end feature a customer will use.
- Why does it only outline the feature? Because it’s solution-oriented instead of goal-oriented.
Maybe your user stories should become goal-oriented and implementation-free so that you can expose the real problem you’re trying to solve instead of the means for solving it. Would this reduce the blocked time of your future tasks, resulting in a smoother, more predictable flow of work?
Define blocking issue escalation policies
Actively analyzing the reasons behind blocked items in your workflow can help you catalyze organizational change and continually improve.
Present the information captured during blocker clustering at your Operations Review meetings to demonstrate the impact of blocked work and encourage its prompt resolution.
Define and periodically revise escalation policies for resolving blockers. Specify what kind of blocking issues can be resolved autonomously by your team, and those that should be escalated to another organizational level. Make sure the decision is brought in agreement by the whole organization.
Although teams often track defects differently from blockers, defects can be clustered like blockers to investigate their root causes and to solve them in an economically sensible way.
THE 4-STEP PROCESS TO
Here is the 4-step management process to more sustainable delivery of quality software.
By following the agreed-upon policies, your team will know how to handle each type of blocker, resulting in a faster resolution of blockages and an increased speed of delivery.
Hopefully, you can now look beyond the impediments caused by blocked items and see them as sources for improvement and opportunities for growth.
Understanding and resolving the root causes which are systematically obstructing the progression of your work is one of the key steps in optimizing your processes and achieving continuous evolutionary change.
Meet the Author
Sonya Siderova is a passionate product manager and a driving force behind Nave, a Kanban analytics suite that helps teams improve their delivery speed through data-driven decision making. When she's not catering to her two little ones, you might find Sonya absorbed in a good heavyweight boxing match or behind a screen crafting a new blog post.