I often find teams that are struggling to get their work done, but many of these don’t see the queues and blockages that are impacting their everyday work. For me, these are key things that can be the focus for initial improvement. Oftentimes, by managing queues and blockages you can get a significant improvement in overall lead time without having to work any harder. For today’s blog post I’m going to talk about queues, a future post I will talk about blockages.
Queues appear where work is waiting to move from one workflow / knowledge discovery step to another. A common instance of this is where there is a handoff between teams or to a specialist. Use the visualisations to help make the queues visible.
Starting from this where the queues are not visible / hidden from the board:
As a first step make the queue visible. Often the queue is unbounded; ie it doesn’t have a WiP limit and we can often see items piling up waiting for the next state:
Once they are visible you can start to apply the WiP limit against it (in this case we created the “Testing – Done” column for those items waiting to deploy and applied the overall testing WiP limit which includes the “Testing – Done” queue):
Using a WiP limit will prevent additional work coming into the system before dealing with the source of the blockage. This creates a catalyst for action as work can’t proceed without the problem being remedied – it forces the organisation to deal with the key issues that are preventing work from getting done.
This can be the case particularly as an organisations size gets larger – usually this means more teams are involved to be able to realise the value which creates a series of hidden wait states. I often find this is particularly the case as you start to track the overall project / initiative outside of the immediate team and within the context of the whole organisation (often this is “upstream”). The more interdependencies between teams, the longer work will take. Usually in this situation it’s futile to try and make the work more efficient because the overall flow efficiency is so low that it’s not worth tackling. Instead, make the queues visible and work on the interdependencies to either remove them if they are frequent or be explicit about expectations for delivery to minimise queue wait times.
Sometimes when I’m first trying to understand the overall flow, I’ll put the queue in place and make it visible. If I see that it’s continuing to be a problem I’ll leave it in place. Otherwise I might take it out and put it as a “Definition of Done” for the step, or an “on the line” transition.
Identify queues and the wait time in the system of work. Determine which ones are having the largest impact to your flow efficiency and start to work towards removing them. In really inefficient systems, you can get lead times down to 10-20% of what they originally were without working harder, just manage the flow.