This article is also featured on LinkedIn by Kyle Chandler
Your software company is forever trying to be first-to-market with new features that customers love. It is survival of the fittest. It’s the ultimate race. If your teams take longer to deliver than your competition, competing products pull ahead, and business is lost.
Customer expectations are high – and loyalty to businesses is a thing of the past. Customers will jump-ship when a competing product has features yours doesn’t. New customers won’t knock on your door. If your teams cannot get high-quality features out fast, you’ll need to take action.
To remain competitive, you may lower your prices or put effort into delivering value faster, or more predictability. Operational efficiency becomes a priority. You can hire more people, implement complex technical solutions, or do a significant transformation of your operations. These solutions are lengthy or expensive, and the risk may be too high for the reward.
Perhaps there’s a better way…
The Power of Limiting Work-In-Progress
During rush hour, how long does it take to get from the highway entrance to the exit? How predictable is the highway? How likely are accidents to occur? Would you rather drive on the weekend? Why?
On the weekend, there are fewer cars, more predictable/faster commutes, and a lower chance of getting into a fender bender. Customers, like you, are much happier, and much more likely to drive there again.
Like a highway during rush hour, teams take on too much and cripple their ability to deliver effectively. Reducing work-in-progress, however, profoundly boosts speed and predictability.
Little’s Law is proof that the same thing happens in software development teams. Like a highway during rush hour, teams take on too much and cripple their ability to deliver effectively. Reducing work-in-progress, however, profoundly boosts speed and predictability. The enemy of speed is too much work-in-progress.
Limiting Work-In-Progress is Not Easy
In the workplace, challenging conversations emerge when you limit work-in-progress. Why can’t we start? Why should we start feature x over feature y? Does feature x need to start right now? Why? Do we really need to expedite bug z? Is it worth starting z and slowing down all other features in our pipeline? There are many strategies to expedite these conversations and make decisions to delay starting easier.
Additionally, some team members can begin to feel as if they have a lot less to do, threatening their sense of value, and job security. Many strategies can help make this more comfortable too. For example, encouraging less busy developers to help other teams. It doesn’t make sense to fill four lanes of work when there are only two lanes down the road. Instead, developers can help by widening the sections with two lanes.
Limiting work-in-progress can feel unnatural, and so it can be challenging to implement. The right strategies, however, can make it easier.
Use Evidence to Create Momentum
Limiting work in progress increases delivery speed/predictability. It also causes everyone to feel less busy. You’ll need data to counter-act that feeling and prove everyone is actually more effective. Additionally, you’ll need evidence to get buy-in from customers, stakeholders, and team members to gradually decrease work-in-progress.
Limiting work in progress increases delivery speed/predictability. It also causes everyone to feel less busy. You’ll need data to counter-act that feeling and prove everyone is actually more effective.
The Basic Strategy
How can you collect the right data, limiting work in progress, and improve your delivery speed/predictability? With these techniques:
Create a Visual Model to Manage your Work
A visual model of the workflow, often represented as a Kanban board, helps leaders and their teams manage their work using visual clues. They’ll often find high WIP, vast queues of work, and work sitting blocked or ageing unnecessarily. All of which contribute to extended and unreliable waiting times for customers.
Track Delivery Effectiveness with Flow-based metrics
These help you measure the effectiveness of your ability to deliver to customers; speed (lead time), quality, and predictability. Measure and inspect these metrics often and validate that what you’re doing, including limiting work-in-progress, is making a difference.
Implement Effective Feedback Loops
Meetings that regularly call attention and priority to both inspecting progress and improvement of customer-oriented outcomes. The most basic of which are:
- A daily review of the board. This helps to detect when work is blocked, ageing, or stale and helps you take decisive action to get work moving again.
- A monthly review of visual cues on the board and flow-based metrics. This validates the impact of improvement efforts and provides dedicated time to plan the next actions.
All of these things in place, and done well have proven to improve delivery effectiveness, and it is only a small subset of what the Kanban Method has to offer.
To learn more check out our ultimate guide or get a copy of these books:
- Essential Kanban Condensed by David J. Anderson
- Kanban: Successful Evolutionary Change for Your Technology Business by David J. Anderson
Share this article