Many teams struggle to get sufficient flow because they work on too many things at the same time. Sadly, for many teams, if they were to represent their work graphically it would look something like the following image:
The problem with this is that there’s just too much going on in the Doing column. Encourage your team to reduce their work-in-progress or work on fewer things simultaneously. In spite of the many indications that reducing work-in-progress actually makes us deliver more, faster, as humans, we often feel that starting work is a sign of progress; the reality is it’s an illusion. In many cases, starting work prematurely will actually slow you down because now you incur the costs of context switching.
When you focus on reducing work-in-progress, don’t forget to take your stakeholders on the journey. If you don’t, expect to face pressure from them when they see you suddenly not starting additional work—in the past, for them, starting work was an indication of progress, now that you are mobbing, they need to re-calibrate.
While the stakeholders are still re-calibrating, expect them to occasionally put you under pressure to start multiple pieces of work. At times like this, you need to stand firm, reassure them that you believe you’re working in the most effective way possible (you really do need to believe this) and that your priority is to finish features faster, not start features sooner. Often, all it takes for them to be comfortable is reassurance from you that you’re doing what you’re doing for the right reasons.
When your team starts to reduce work-in-progress and focus on flow, it helps to have a guide or set of principles they can operate by. When considering a set of principles, keep these in mind:
Different development methodologies support these principles more than others; for mobbing to work, it’s important that your overall development methodology supports flow.
While Mob Programming works well with a variety of processes (see Mob Programming and Scrum, Kanban, Waterfall, etc.), it works particularly well with kanban. Over 50% of respondents on my industry survey of Mob Programming indicated that they were using a kanban methodology. Kanban is all about explicitly limiting work-in-progress with the idea that the fewer things in flight, the quicker they’ll get done. If you’re not familiar with kanban, it may be worth checking it out to see if it’s a good match for your team’s overall development needs.
It’s quite possible, through mobbing, for a team to get to this: