One of the most common questions I get when talking about
Kanban is: „How do we define our WiP Limits?“ There are different approaches to
this and I don’t think we can find a best practice for this. What I learned
during the past years was:
- There is no secret formula for setting WiP
Limits. No matter what you do: The limits will be wrong at the beginning and
need to be adjusted. And they need to be adjusted anyway every now and then,
because the team should improve and the system should change over time. So we shouldn’t put too much effort
in setting the initial limits.
- It’s very important that the whole team is involved
in designing the board – and part of this is setting the limits. It should be a
collaborative process and everybody should have the chance to voice his
opinion. Otherwise acceptance might be lower than it could be.
When facilitating system design workshops in the
past, what I did was the following: I stood in front of the first draft of the
board that was just designed, said a few words about WiP limits and then asked
the group „What WiP Limit should we put on this column?“ This was not a very
collaborative process and it often led to long and tyring discussions if the
limit should be 6 or 7 etc. Then I used a different approach: I divided the group
into 2 or 3 smaller groups and told them to come up with what they think are
the best limits to start with. After a timebox they reported back to the whole
group. After this we formed new groups and discussed what we had so far. After
this we consolidated the different drafts into the final one.
The second
approach is much more collaborative and certainly leads to better results. But
it’s quite time consuming.
A couple of months ago, I tried something different. It’s
similar to Magic Estimation, aka Bucket Estimation (a technique that some Scrum teams use for estimation their backlogs). And because I cannot come
up with a better name, I call it Magic WiP Limitation. I’m probably not the
only one who uses this approach, but I couldn’t find anything written about it
on the internet.
This is how I do it:
- The facilitator explains or repeats why we want
to limit our WiP and how WiP Limits work. And he should emphasize that whatever
limits we set: They are not made for all eternity and need to be adjusted.
- The facilitator asks the group to gather in
front of the board.
- One person starts. He writes a number on a
sticky note, attaches it to a column and says a few words about why he thinks
it’s a good choice. Then he chooses a number for the next column etc.
- Another person takes his turn and changes
the limits as he feels they are appropriate. And he explains the reasons for
the changes.
- Repeat 4. until nobody wants to change anything
anymore or until you observe that one or two numbers go back and forth all the time. Now
that’s definitely something you want to talk about a little bit longer.
- If you feel that energy goes down, fewer and fewer people are involved in the discussion and they argue about details (limit of 6 or 7), suggest a compromise (often
the higher number).
- Declare success and celebrate the new WiP Limits.
- Don’t forget to schedule a retrospective for reviewing
and adjusting the WiP Limits in a couple of weeks.
- Continue with another section of the workshop
where you talk about the policies for dealing with WiP Limits.
Until now I only have very few data points, but so far I’m quite
satisfied with this approach. Do you use something similar? Then please leave a
comment and share your experiences!