The document discusses how limiting work in progress (WIP) can improve delivery. It uses the analogy of eating marshmallows to show how limiting WIP to one marshmallow at a time (1) reduces cycle time, (2) lowers complexity and risk of errors, and (3) provides faster feedback. Limiting WIP also allows for (4) faster delivery of value that can be accurately measured and estimated. Finally, working this way (5) reduces stress and promotes sustainable development through continuous workflow improvements. The conclusion is that limiting WIP does matter as it helps waste less time, reduce risk, shorten feedback loops, deliver faster, reduce stress, and improve collaboratively.
6. We all know the costs of Context Switching...
❖ But are there other costs of a high Work In Progress?
❖ Why is it important to limit WIP?
❖ Is it important at all to limit WIP, or is it all a myth?
Let these two people show you:
11. Little’s Law
L = average number of customers
λ = customers’ average arrival rate
W = average time customers spend at the business
12. Applied to Kanban
WIP = Throughput * Cycle Time
Q: So how long does it take to consume 1 of my 6 marshmallows?
A: It depends on how many you’re eating at once
WIP / Throughput = Cycle Time
❖6 / 6 = 1 minute
❖1 / 6 = 10 seconds
13. More on Little’s Law…
David Lowe – At The Drive Thru
- A brilliant illustration
Eliyahu Goldratt - The Goal
- The effects of adding variability
Daniel Vacanti – Little’s Flaw
- If you lurve metrics!
17. 2. Complexity & Risk
Minutes
● What could have gone wrong here?
○ How would they each have responded?
● What risks do you associate with working through a big job?
○ How would they have been handled differently?
25. 2. Complexity & Risk
- Localise problems
- What if they hiccupped?
- Reduce the pain of release
- It’s much easier when there’s less to swallow
- Smaller cost of delay
- Don’t keep those tummies waiting!
26. “If you only quantify one
thing, quantify cost of
delay”
- Donald G. Reinertsen
32. - Detect Defects Quicker
- What if there was something weird and crunchy?
- Faster Feedback from the customer
- What if their tummy rejected it?
3. Feedback Loops
34. 3. Feedback Loops
- Detect Defects Quicker
- What if there was something weird and crunchy?
- Faster Feedback from the customer
- What if their tummy rejected it?
- Responsive to change
- What if we wanted to change the priority?
37. 4. Can we measure our delivery?
Minutes
● Which method delivered value more quickly?
○ How do you know?
● Could you predict when they’d be finished?
○ Or when they’d met their customer need?
38. 4. Can we measure our delivery?
- Deliver value early
- Do these marshmallows still appeal?
39. 4. Can we measure our delivery?
- Deliver value early
- Do these marshmallows still appeal?
- Estimation
- Just how big a job is it to eat marshmallows?
41. 4. Can we measure our delivery?
- Smaller cost of delay
- Don’t keep those tummies waiting!
- Estimation
- Just how big a job is it to eat marshmallows?
- Appetite
- How much is enough?
42. Just Enough is Good Enough
Simplicity
- the art of maximising the amount of
work not done -
is essential
47. 5. How does it feel to work this way?
- Achievement
- Ultimately much more satisfying
- Less stressful
- Being in control of your own pace
48.
49. • Inability to focus on tasks
• Ability to process information - existing and learned - and apply to
problem solving
• Reduction in work quality
• Defensive behaviour, clashes with colleagues
• Physical illness, absenteeism
Effects of stress
51. 5. How does it feel to work this way?
- Achievement
- Ultimately much more satisfying
- Less stressful
- Being in control of your own pace
- Trigger workflow improvements
- What if this is only one step, and we really need to do it faster?
52. Kanban principles - Buy One Get One Free
Make policies
explicit
Limit the WIP
Improve
Collaboratively
Manage Flow
Visualise the
workflow
55. So, does Limiting WIP Matter?
● Waste less time
● Reduce Complexity & Risk
● Shorten Feedback Loops
● Deliver Value faster - and
measure it
● Reduce Stress
58. References
• The Goal - Eliyahu Goldratt & Jeff Cox
• LKCE12: Daniel Vacanti, Little’s Flaw
• WIP: why limiting work in progress makes sense (Kanban) - David Lowe
• The Principles of Product Development FLOW - Donald G. Reinertsen
• The Lean Startup - Eric Ries
• Continuous Delivery - Jez Humble & David Farley
• Get a Grip!: Overcoming Stress and Thriving in the Workplace - Bob
Losvyk
Editor's Notes
[https://pixabay.com/en/volunteer-voluntary-guide-guiding-422598/]
So, who’s up for volunteering? You need a sweet tooth, and to be ok with gelatine…
Research has shown us that the more tasks you have in flight, the more time you waste.
Anyone know the reasons for this?
Remembering where your thinking had got to
Having to find the place in your work
Getting back into the same level of concentration and focus
This all adds up to time being lost.
[https://burst.shopify.com/photos/marshmallow-candy-texture, https://creativecommons.org/publicdomain/zero/1.0/]
Mikko is going to eat them one at a time, as he thinks he can be more productive if he does one thing at a time.
Tom is going to eat 6 marshmallows all at once! He doesn’t believe those Context Switching charts, he thinks that the sooner you start, the sooner you finish!
Let’s see what happens:
[start timer, Tom and Mikko start eating]
40 seconds later - STOP (even if Mikko hasn’t finished, as that can be useful later on)
Let’s have a big round of applause for our very game volunteers!
Go and have a drink of water to wash that down with.
We’re going to discuss this from 5 perspectives.
First up: Time.
[https://pixabay.com/en/time-stopwatch-clock-hour-minute-731110/]
Unlike the our expectations around Context Switching, they probably finished about the same time overall, but:
For Tom, the first one was delivered at the same time as the last one.
This is the effect of Little’s Law - if you are doing x things at once, then each thing takes x times longer!
[By Christoph Roser at AllAboutLean.com under the free CC-BY-SA 4.0 license. http://www.allaboutlean.com/littles-law/water-tank-littles-law/]
https://www.youtube.com/watch?v=nl7hARdw18M - Disney application of Little’s Law
Little’s Law states that Avg time spent in the business = Avg number of customers * Average Arrival rate
If you have 2 of these metrics, then using this algorithm you can work out the other one - and then use that to optimise.
As Disney have done successfully in their stores.
We’ll see next that it is the basis of Kanban.
This can be translated as you can see here, enabling us to answer the simple question of “How long does it take to eat a marshmallow?”
WIP = avg number of items in process
Throughput = avg release rate (eg 5 items released per week)
Cycle Time = avg time an item spends in flight
You can examine Little’s Law in much more detail by looking up these sources
So now that marshmallows have been washed down, how are Mikko and Tom feeling?
Tom - Overwhelming, stressful, nearly choked, took ages to swallow the stuff
Mikko - Tasty! I enjoyed each one thankyou
[ Gillian Maniscalco - Question Marks - https://www.flickr.com/photos/gillian_m/448800043/, https://creativecommons.org/licenses/by-sa/2.0/ ]
I’m going to ask you at your tables to have a short chat about certain themes here
[70023venus2009 - Complexity of track - https://www.flickr.com/photos/70023venus2009/6032939635/ https://creativecommons.org/licenses/by-nd/2.0/]
Have a 3 minute chat amongst yourselves about the notion of complexity. What was different between these two scenarios? What could the impact be?
[70023venus2009 - Complexity of track - https://www.flickr.com/photos/70023venus2009/6032939635/ https://creativecommons.org/licenses/by-nd/2.0/]
Any problems would have been small enough to handle - for Mikko
Mikko could have handled it politely and quietly
Tom would have started to choke, we’d have all panicked and leapt to his rescue with tissues and the Heimlich manoeuvre
http://srsp.weebly.com/uploads/7/2/4/4/7244139/1303576628.jpg
If they’re so small other people don’t need to even notice them, you can just get on and deal with them.
https://preemploymentscreen.com/wp/wp-content/uploads/2015/06/Job-interview-Panel-of-co-workers-about-to-c-27194759.jpg
If you allow a problem to snowball, then all kinds of hell breaks loose. The problem is now “out there”, beyond your reach and ability to quickly resolve.
Now everyone wants a piece!
A lot of people have placed their faith in you, and they will look bad if this goes sour!
Emotions run high, people’s worst behaviour comes out, meetings need to be scheduled, and it all distracts those people who can fix the problem from actually getting on with it.
“Releasing” is much easier when there’s less to swallow
Mikko had no problems, it was literally bite-sized
Tom got bogged down massively in the effort
https://img.memesuper.com/383febc31b2c3102925ba51a91bf722a_community-post-21-chubby-chipmunk-cheeks-self-portraits-see-chipmunk-cheeks-meme_640-640.jpeg
https://s-media-cache-ak0.pinimg.com/736x/0d/e6/e8/0de6e8668238583d7fa7af0959cbbc7c.jpg
Nibble away at the problem, break it down into literally bite-sized pieces and it’s much easier to release.
[ Steve Czajka - Once Upon a Time https://www.flickr.com/photos/steveczajka/11392783794/ https://creativecommons.org/licenses/by/2.0/ ]
Once upon a time, FT releases were monthly. On a weekend. With 15 people in the office, and another 5 on stand-by.
Our monolithic architecture meant that e.g. a small change to our metadata tool was made in the same codebase as the search box on the website.
Introducing: Bundled up releases, containing a wide variety of changes, requiring lengthy verification in live, and a large team who could understand all of the changes. And who could roll the whole thing back if needed…
Oh, and it had to be made when the system (i.e. our entire digital organisation) could cope with being offline for a day or 2.
[ David Hollcraft - Vibrant https://www.flickr.com/photos/dhollcraft/8026123129/ https://creativecommons.org/licenses/by-nd/2.0/ ]
We needed faster deployments, but that increases the risk.
So we shifted to a highly modularised codebase - microservices and continuous delivery - meaning we could make lots of tiny releases each with a tiny risk.
This actually moved us from a 20% deployment rollback rate to ~0.1%, i.e. a two order-of-magnitude reduction in our error rate.
You don’t want to keep people waiting. Their tummies were just dying for some marshmallow!
Mikko’s tummy was satisfied with something quite quickly
Tom’s tummy waited longer, and probably got even hungrier while it was waiting
What happens to your scope when you take a long time to build it? How do customers react to this delay?
By asking for more things. “While you’re there, can you please do x? So that I don’t need to wait for the next big release?”
Basically, an already large batch gets bigger, because they get impatient
Customers’ eyes become bigger than their stomachs and they just order more food, meaning in turn that they actually have to wait even longer!
Reinertsen says to quantify cost of delay as currency, but even articulating what the different risks are you will make better decisions.
The longer you take to get something out, the more change will have happened around you - changes to the opportunity you are seeking to exploit, but also changes to the environment you are releasing into - involving greater risks of technical, product, or project (cost) failure
[Frank Derks - Turbo Feedback Loop https://www.flickr.com/photos/eurosporttuning/22213137610/ https://creativecommons.org/licenses/by/2.0/ ]
So what were different in terms of feedback loops here? What were they? What were the opportunities?
What if there was something wrong with this batch of marshmallows… something weirdly crunchy in the middle…
Is it a fly? Or is it some sugar?
Mikko was really paying attention to the tastiness of his marshmallow and would have discovered it so quickly he’d only need to spit out 1
Tom was chomping on all of his and when he finally noticed he’d have spat out far more - a much more grisly task!
[Emma Forsberg - Sandcastle https://www.flickr.com/photos/echoforsberg/2347354433/ https://creativecommons.org/licenses/by/2.0/ ]
It’s far easier to recover from a mistake if you spot it before you’ve built on it!
And of course this is easier if you’re moving smaller items, in smaller batches through your system for checking
https://d2mug8yhikhiqv.cloudfront.net/wp-content/uploads/2016/06/23053207/reinertsen-1.jpg
https://www.amazon.com/Principles-Product-Development-Flow-Generation/dp/1935401009 - Donald G Reinertsen
It just makes sense
What if their stomach rejected their marshmallow due to an unknown allergy?
Mikko would have found out after only 1 marshmallow, so it would have limited impact
Tom would have been very poorly after eating all of those harmful marshmallows
So a much bigger impact!
https://s-media-cache-ak0.pinimg.com/736x/f5/19/fb/f519fb4ce7f6dd8a06325211d742f8ad.jpg
(Sorry, just had to get a kitten in here somewhere!!)
If we can find out after one marshmallow, or one dead bird, then we can avoid making our customer get a violent allergic reaction to the marshmallows, or have a bird graveyard on her doorstep…
Smaller batch sizes inherently reduce the risk, and scale, of failure.
What if they’d started eating pink marshmallows but I wanted them to eat the white ones?
Mikko finished his first marshmallow very quickly and could have switched instantly to white for his next one
Tom could not have focused on white ones until he’d finished all of his
[Paul Whitehouse - Change Direction, https://www.flickr.com/photos/philliecasablanca/2182162819/, https://creativecommons.org/licenses/by/2.0/]
New information is always becoming available, and we need to be ready to respond quickly - the less we have to “wrap up” before moving on, the better.
[https://pixabay.com/en/tape-measure-measure-centimeter-1860811/ ]
In terms of measurement, and of delivering value, what do these two approaches mean?
Mikko delivered early whilst the appetite was still there
Tom may have suffered through his delay - that appetite may have waned by the time he delivered!
Mikko was able to re-evaluate his estimates as he went - once he’d eaten 1 marshmallow, he knew exactly how long it would take him!
Tom thought he knew what was a manageable amount of work to take on, and regretted it!
[http://www.modernanalyst.com/Portals/0/images/cone%20of%20uncertainty.jpg]
When do you know the most about what you can accomplish in a given time frame?
Mikko realised that he couldn’t finish his marshmallows. His tummy didn’t want any more - so that was a good time to stop and do something else.
Tom, on the other hand, was committed to finishing what he’d started, and his tummy was quite overwhelmed.
Stopping when we’ve done enough -
[ https://pixabay.com/en/flowers-symbol-march-8-composition-2082136/ ]
Last but not least..!
Think about those two ways of working - what would the experience be of working on those two ways?
Mikko enjoyed his experience much more than Tom did
It was less overwhelming, and he dispatched items more quickly
Ultimately much more satisfying
It enables a sustainable pace for the team, and enables them to enjoy completing things rather than being overwhelmed
Tom says he almost choked while he was eating those marshmallows..
[Geralt - https://pixabay.com/en/stress-man-hand-flame-burn-fire-543658/]
Many many studies have shown the direct link between stress and productivity.
So when companies seek to improve “happiness”, what they’re often seeking to do is reduce stress by removing the conflicts that generate it, and enable the right stimuli to allow people to be their best creative - and productive - selves.
Basically, this stuff matters. Working to a sustainable pace is both more enjoyable, and more rewarding
What if there is a real genuine need to consume marshmallows faster than Mikko can 1 at a time?
Collaboration - more people can swarm and help by picking up Mikko’s marshmallows
But they can’t help tackle the ones that are already stuffed in Tom’s mouth!
By limiting the WIP, you highlight where your problems are and can work to solve them and clear the bottlenecks.
Anything that makes you break your WIP is a problem to be solved
There are 5 main principles in Kanban. If you Limit the WIP, then you get “Manage the Flow” for free, as it makes it obvious where change needs to happen.
[Robert Cheaib - Time’s Up https://www.flickr.com/photos/theologhia/15321369529/, https://creativecommons.org/licenses/by/2.0/ ]
We’re out of time!
[https://burst.shopify.com/photos/marshmallow-candy-texture]
If you want a shorter, 5 minute version (with fewer observations, but very punchy), this can be found as a lightning talk online, called Limited WIP: The Other Marshmallow Test
Just some of the things I made passing reference to.