- Knowledge Worker's Toolkit
- Doing the laundry: exploring terminology by example
Doing the laundry: exploring terminology by example
A seemingly simple system can teach us so much
Let’s explore some terminology through an extremely relatable activity: doing the laundry!
Of course, the point here isn’t to understand laundry (although it’s inevitable that we soon will — I apologise for how nerdy it’s about to get), the point is to find correlations in the systems that we want to understand and improve!
In systems thinking, we model systems in terms of Stocks (lists or piles of things) and Flows (how those things move into or out of a given Stock).
When you have more than one Stock in a system, we can start to observe Feedback loops of items moving between them.
At greater orders of magnitude, we start to see streams of effort, and the overall, primary stream of effort, which we call the Value stream.
Systems have Capacity, and they have Demand. They also have Bottlenecks and Constraints.
Modelling with systems is recursive; we have smaller systems inside bigger systems.
Wherever we have an accretion of items that all share the need for a common processing step (or choice among steps), we have a stock.
What are the stocks in the laundry system?
Work-in-process (WIP) laundry
Work in process: the term we use to describe things we have started but not yet finished. It doesn’t matter how likely it is that we’ll finish it; we’ve started it, so it’s WIP.
Each of these is a stock, in that they are discrete from one another. Any given garment can not be in more than one of these places:
In bedrooms, in laundry baskets (or, let’s be honest, sometimes it’s the bed and the floor).
All jumbled together in laundry baskets next to the washer (again, a pile on the floor is quite likely).
Laundry sorted into batches - darks together, lights together, sensitive cloth separated.
Same as before, but now we’ve dealt with stuff like stain removal.
Recently washed (ready for drying)
In a dryer
Or hung on a line
Recently dry (ready for folding, and ironing)
Ironed (if appropriate) and folded, ready for packing away
Clean clothes and linens, in the place we expect to use them: packed or hung in the right cupboards.
This is the ‘outcome’, the ‘business value’ of the process. Anything that isn’t here yet, is by definition WIP, and not-yet-valuable.
The laundry itself, in all its various phases, is the obvious stock.
However, there are other kinds of stocks, too:
Cleaning products — Detergent, stain remover, bleach, fabric softener, fragrance pellets, dryer sheets. Consumed at a rate that’s fairly consistent with the flow of laundry.
Tools — Laundry baskets (an important batching tool — imagine having to hold piles of wet laundry in your arms!), the washer, the dryer, clotheslines, clothing pegs, laundry baskets. Not consumed, but eventually worn out, so there’s a slower form of consumption here.
Waste — dryer lint is a waste product that is also technically a stock. If you don’t deal with it, you’ll quickly run into issues.
People — technically a stock too! At least, from the perspective of the system, a person is an agent that is capable of accepting and relinquishing stock items. Not consumed, but it certainly can feel like it, sometimes 😂
A flow is movement to a stock (inflows), or from a stock (outflows).
There are so many common examples!
Water in a sink: inflow from the tap, outflow through the drain hole.
The temperature in a room: inflow from the heater, outflow through the window (in winter), inflow from the sun, outflow through the air conditioner (in summer).
Inflow and outflow can be symmetrical (like a sink which drains as quickly as it fills) or asymmetrical (much faster filling or much faster draining).
You’ll know how big this asymmetry can feel when the stock in question is your bank account 😄
The number of stock items that flow at a time can be few, or many.
Pieces (as in ‘single-piece flow’) — when only one or a few at a time, e.g. washing a jacket or a pair of shoes.
Batches — when there are many items at a time — e.g. typical laundry loads of clothes or linens.
If you re-read the laundry stock list above, you can easily identify the flows; just imagine what it takes for a given piece to move into or out of a given stock:
Getting the kids to bring the laundry baskets from the rooms.
Loading a washer. Unloading a washer.
Hanging laundry to dry. Taking it down.
Folding a pile from one basket to another.
Packing laundry into cupboards.
When we include humans as stocks, then there are actually more flows hidden among these.
As a human being needs to move all laundry around (we don’t have commoditised end-to-end laundry robots yet), every time a human does something, they are ‘inflowing' laundry to themselves, and then ‘outflowing’ laundry into the next stock.
Dirty laundry basket → person → washer
Washer → person → dryer
This may seem inane right now, but this is crucially important to bear in mind when we look at systems of work that are larger in leverage and scope than doing the laundry.
Ignoring the capacity of individual team members is a pretty reliable way to overwhelm them and degrade a system of work!
Whenever something ‘downstream’ changes how things work ‘upstream’, that’s a feedback loop. It’s a loop in that information is now travelling in the opposite direction to the ‘work’, and because of this, the next iteration of the work changes in some way.
We have reinforcing feedback loops, where every iteration increases or magnifies the subsequent iteration. They’re exponential. Compound interest is a common example.
And we have balancing feedback loops, where the system will iterate towards stability. A thermostat will stop heating when its thermometer reaches a certain high reading. It’ll start heating again when it reaches a certain low reading (which could be one degree lower than the high value). The system balances itself.
What examples do we have when doing the laundry? For the most part, these are all balancing feedback loops, in that we sometimes push away from the norm and then stabilise at a new norm.
Can you think of an example of a reinforcing feedback loop in the system of laundry?
We did the laundry but it isn’t clean
Change inputs: use hotter water or colder water, or a different detergent, or more of it.
Change processes: use a stain remover before washing.
The laundry doesn’t smell nice, even though it’s technically clean
Change inputs: use fragrance pellets.
Repair tools: clean and service the washing machine.
Change processes: don’t let freshly washed clothing sit in a basket for too long; work in such a way as to shorten this wait time so that it can be dried as soon as it’s washed. (More on this in a bit.)
The laundry is clean, but we’re not working efficiently
We are using too much cleaning product at a time, or it’s taking longer than it needs to.
Change inputs: use less, until quality degrades below standards (the smell test).
Change processes: use shorter wash cycles, cold wash instead of warm. Hang things up instead of running a dryer.
We left the lint in the dryer and it has to work harder and harder to push the moisture out. Mould can form. In extreme cases, lint can come into contact with a heating element and start a fire!
Repair tools: repair and clean the dryer.
Change processes: be sure to take the lint out of the dryer after every load!
The chain of these flows is what makes up the overall “value stream”:
Value streams are typically thought of as linear (at least in terms of how we measure throughput), but they can also diverge and converge, skip steps, and of course, they can loop around.
Some items use different tactics e.g. use the dryer machine for clothing and linens that won’t shrink, use the hanging line for everything else.
Some items use completely different processes entirely, e.g. suits are dry-cleaned, and rugs are steam-cleaned.
Some items skip steps, e.g. we don’t iron socks or woolly jumpers.
Some items skip almost all the steps e.g. a clean item in the room’s basket going straight back into the cupboard.
And of course, it loops. We clean something, then we use it, and then it’s dirty again. And then we clean it again.
(At least, until ‘3D printing fresh clothes at home that we only wear once’ becomes cheaper and more sustainable than the current system of buying and washing it repeatedly).
Capacity and demand
There’s capacity: how much laundry we can clean at any given time (we can also call this ‘supply’), and demand: how much laundry we currently have to clean.
Each stock has a capacity, and these capacities are different to each other. For instance, the washer can only take so many items at a time, but we can make a much bigger pile than that on the floor!
The laundry system as a whole also has an overall capacity, which is the aggregate of all the stocks in the system. Everything piled up, plus what we’re washing, plus what we’re drying, plus what we’re folding, plus anything at rest that isn’t in the cupboard.
Value demand is the laundry we successfully cleaned and packed away.
In our feedback loop examples above, we saw that sometimes we had to rewash things. The fact that we have to wash it again causes new demand; this form of demand is called ‘failure demand’, in that it’s avoidable demand if we can prevent the associated ‘failure’.
Together, value demand and failure demand make up the total demand on the system.
Relationship between capacity and demand
There are layers. There’s what’s happening at the moment, and there’s the patterns of what happens over time.
The system oscillates between these states continuously:
Underwhelmed: too little demand. Only a small amount of laundry; batches are not big enough to be processed. Not something anyone will complain about!
Overwhelmed: too much demand. Lots of batches at once i.e. a big ole laundry pile-up. I believe the song goes “never-ending-lau-ndryyyyyyyy”?
The Goldilocks zone: balanced demand/capacity. (Is ‘whelmed’ a word?)
If all the laundry is fully clean and packed away, and no one is making anything dirty, the system is empty and idle. We all yearn for this state, but somehow, never attain it 😅
Pattern: Less capacity than demand
If we spend every (reasonable) minute doing the laundry, and somehow still always have a big pile of dirty laundry to do, then we have less capacity than we need. There could be so many reasons why.
Not enough time to do the labour (which is also a way of saying, not enough hands to help)
Machines are too small
Not enough drying space
Sometimes, these causes are temporary and can simply be weathered; e.g. when actual weather limits drying capacity, we can just wait it out, or we can use a laundromat service.
Other times, we need to intervene systemically or the system will implode (or a person will explode!) Get bigger machines. Make the kids help. Reduce demand by making people wear things more than once (not underwear!)
Pattern: More capacity than demand
Bigger or more is not always better.
It's possible to have too much capacity (or, put another way, not enough demand), and create a situation of inefficiency.
For example, a machine that’s too big for the average load will waste detergent, water and electricity. Otherwise, if we wait until we do have enough to wash, it will cause us to wait too long; ‘slow cycle time’. It becomes an unsatisfying trade-off.
We can end up here when the kids (finally!) leave the house.
Get smaller machines, or sell them, and switch to outsourcing to a service or to a laundromat.
Bottlenecks and constraints
There are bottlenecks all over the place, all the time. Waiting for someone to unload the washer, with more dirty laundry to load: bottleneck. Dry laundry waiting to be taken down, with wet laundry to hang up: bottleneck.
Somewhere in this system, there’ll be a bottleneck that’s deciding the overall throughput (speed) of the system. This is the ‘governing constraint’ of the system. It can and does move around!
When all we have is dirty laundry, the washer (and the availability of the person loading it) is the governing constraint.
When all we have is wet, washed laundry, the governing constraint moves to ‘having enough drying space’.
This is what the Theory of Constraints by Eli Goldratt is all about. If we want the overall system to go faster, we need to figure out where the governing constraint is and do things to help improve it directly, rather than work on other places in the system which are not part of the governing constraint.
When we’ve plenty of drying space, then washing dirty laundry is exactly the right thing to do to make things better.
But, when we’re out of drying space (the dryer is running and the lines are all full), washing more dirty laundry is going to make things worse, not better, despite it being a productive activity.
This is pretty obvious to anyone who’s had piles of washed laundry start to smell because it stood for too long — in this case, it was easy to receive feedback that our timing was off.
In knowledge work, though, this is far less obvious. The ‘smell’ is nuanced. Higher levels of WIP. Longer queues of next-up tasks. More prioritisation activity, escalations, and “asap” rush jobs. More heroics (‘cancel all my meetings’, overtime) to get things done.
The Theory of Constraints helps us to have the whole system work at a speed that’s appropriate for the constrained step, so as not to let these queues form. We’ll dig into this more in a future article!
These are the decisions or situations deciding the capacity of the system.
We have one washer and one dryer. We have so much hanging space. We have so many people who can move laundry between them.
The point is, these decisions constrain the throughput of the system.
The governing constraint is the limiting constraint deciding the overall throughput of the system right now.
Not all constraints are ‘bad’! Sometimes we impose constraints of our own to make the work better, for a given definition of ‘better’. These are known as ‘enabling constraints’.
We might use them to manage for efficiency: we don’t run a washing machine with less than (say) 50% of a load, so as to get a minimum amount of value from the consumption of those resources. We accept that sometimes it’ll take longer for a given item to be cleaned, so that we can apply this batching rule that enables overall efficiency.
Without this constraint, we might end up running the washer with a 20% load frequently, and that’d be wasteful.
It’s important to recognise that most of these terms are about the relationship between capacity and demand. If there’s no demand, there are no bottlenecks or limiting constraints in effect at the moment.
Systems of systems
This ‘stocks and flows’ model is recursive. From the ‘outside’, a stock is a stock. From the ‘inside’, a given stock can be another system, with yet more individual stocks and flows within it.
As someone who pays for a laundry service, in your mind, the service is a stock with an inflow and an outflow - you provide dirty laundry (and payment) and get back clean laundry. For the people who run that service, though, they have many stocks and flows to deal with.
Similarly, your laundry system is situated in a bigger ‘household’ system.
Wearing clothes and using linens, hand-me-downs from older to younger siblings (or parents to kids!), these are all non-laundry stocks and flows that interleave with the laundry system in some way.
There’s also the total stock of these items in the household, which decides the possible demand for the laundry system. This can change when buying new items, donating clothes to charity, receiving and giving gifts, and so on.
(Again, seems inane, but important when we apply this model to our work!)
Let’s look at some examples of the outer situation deciding how the inner system will work.
A single person or a couple with minimal needs
A single person or a couple without children can use outsourced equipment (a laundromat), and so will decide when and what to wash differently from those who have their own equipment. It may even decide what textiles they buy.
A family with a baby
A young family with a baby will have higher demand (lots more stuff to wash) and lower capacity (tired parents!).
A large family
Families with lots of kids will have higher demand and could have more capacity if the kids are taught to help!
A family with big, hairy, smelly dogs
This family is going to have a lot of really dirty stuff to deal with. They may need heavy-duty detergents or machines to manage it all.
A professional laundry service
A professional do-it-all-for-you laundry service will have much stricter processes, far more optimised equipment and materials, far higher quality training, greater capacity, etc. Same stocks and flows, but substantially different elements and scales at each one.
They have to because, for them, profit is capped by maximum utilisation with the least possible waste and failure.
They want their machines and people working every minute because that’s the only way to achieve the greatest possible value as a business.
(Of course, there’s also the bigger picture reframing in which we always want to have some capacity available so as not to annoy and drive away repeat customers, but that’s a topic for another time.)
So there we have it. We explored these terms today, using laundry as an example:
Flows - inflows, outflows
Feedback loops - upstream, downstream, balancing loops and reinforcing loops
Capacity (supply) and demand - value demand and failure demand
Bottlenecks, governing constraints, limiting constraints, enabling constraints
Systems of systems
What did you learn? What connections did you make?
What questions do you have?
Perhaps next time you’re doing the laundry, you can impress your partner (or your cat) with how clearly you can now see and understand the laundry system of work. And, maybe, now you have good, logical, systemic reasons to ignore that pileup for a couple hours? 😁
See if you can use these concepts to see your current systems of work in new and illuminating ways, and then let me know what you discover!
In case this was forwarded to you:
Hi. I’m Robert Stuttaford.
In this Knowledge Worker's Toolkit newsletter, I introduce, explain, tell stories, share past experiences, and explore the connections and intersections of all the various systems thinking & knowledge work concepts & models I've encountered during my tenure as CTO at Cognician, over the past 13 years (and counting!)
Subscribe to the Knowledge Worker's Toolkit newsletter here:
Learn more about me, and what I’m about here:
Find me on: