More on this book
Community
Kindle Notes & Highlights
Read between
March 20 - May 13, 2023
We need diversity of thought and different ways of working. If we get caught up in the idea that there is a best practice—a perfect way of doing things—then we risk branding fresh perspectives or improvements as inherently flawed ideas.
Parkinson’s Law: work expands to fill the time available for its completion.
Our culture of overwork, our obsession with productivity versus effectiveness, our default mode of existing rather than living—these things aren’t simply unnatural and unhealthy, they’re unsustainable—for the individual, for the team, for the organization’s bottom line.
The amount of requests (the demand) and the amount of time people have to handle the requests (their capacity) is almost always unbalanced. This is why we need a pull system—in which people can focus on one thing long enough to finish it before starting something new—like kanban.
TOC is a way to identify the most important limiting factor (the constraint) that stands in the way of achieving a goal and then systematically improving that constraint until it is no longer the limiting factor.
As Darren Davis writes in his blog post “The Secret History of Kanban,” David’s methods “ . . . eliminated explicit estimation from the process, and relied on data to provide a probabilistic means of determining when software was likely to be done.”
All it takes is a shift from haphazardly saying yes to everything to deliberately saying yes to only the most important thing at that time. And to do it visually. The solution is to design and use a workflow system that does the following five things: 1.makes work visible 2.limits work-in-progress (WIP) 3.measures and manages the flow of work 4.prioritizes effectively (this one may be a challenge, but stay with me—I’ll show you how) 5.makes adjustments based on learnings from feedback and metrics
The five thieves of time that prevent you from getting work done include: 1.Too Much Work-in-Progress (WIP)—work that has started, but is not yet finished, sometimes referred to as partially completed work. 2.Unknown Dependencies—something you weren’t aware of that needs to happen before you can finish. 3.Unplanned Work—interruptions that prevent you from finishing something or from stopping at a better breaking point. 4.Conflicting Priorities—projects and tasks that compete with each other; this is exacerbated when you are uncertain about what the most important thing is to do. 5.Neglected
...more
In textbook terminology, too much work-in-progress (WIP) is when the demand on the team exceeds the capacity of the team—which is a rather boring way to say that our teams are drowning in work, often because their schedule is completely full.
Too much WIP matters for a number of reasons. It can result in many issues, including delayed delivery of value, increased costs, decreased quality, conflicting priorities, and irritable staff, to name a few. When we start a new task before finishing an older task, our WIP goes up and things take longer to do.
Cycle time is the amount of elapsed time that a work item spends as work-in-progress. In addition, business value that could have been realized sooner gets delayed because of too much WIP. This is known as cost of delay.
There is a relationship between the amount of WIP and cycle time—it’s called Little’s Law, where the average cycle time for finishing tasks is calculated as the ratio between WIP and throughput.
You know Thief Too-Much-WIP is stealing time from you when:
Context switching is common:
Your customers wait for long periods of time:
It is inefficient from a customer perspective to prioritize starting new work over finishing the things you have already begun.
Quality suffers:
Irritated staff:
Someone asks you if you have five minutes and you say yes:
Work flows across the board based on the WIP limits and pull policies. If WIP limits are set appropriately, the system cannot become overloaded. The WIP limit is what allows you to say, “No, there is no capacity to take on more work right now.”
Let’s define dependency. From my perspective, when we talk about dependencies, three types emerge: 1.Architecture (both software and hardware)—where a change in one area can break another area (i.e., cause it to stop functioning) 2.Expertise—where counsel or aid from a person with specific knowhow is needed to do something 3.Activity—where progress cannot be made until an activity is complete
Sometimes unplanned work comes in the form of a necessary strategic change in direction:
But often, unplanned work comes in the form of unnecessary rework or expedited work requests.
Unplanned and expedited work steals time away from work that’s creating value.
If everything is priority one, then nothing is a priority one, and everything takes too long.
Thief Neglected Work often plants invisible technical debt in the system, knowing that short-term thinking sways prioritization in favor of new features over protecting valuable assets.
The current corporate culture that focuses on people being “busy” all the time is absurd. Work is neglected when people are “busy.” Busy people, however, do not signal productivity—delivered value does.
A ten-minute task probably doesn’t need to be tracked unless one of the following is true: 1.Only one person knows how to do it (Thief Unknown Dependencies):
The work impacts other teams (Thief Unknown Dependencies):
Someone’s job primarily involves doing tasks that last fifteen minutes or less,
Sometimes, the boss or just a few people determine the whole team’s work item categories. This is something to avoid. The people doing the work should always be involved with designing their workflow management system for two reasons: 1.It helps ensure you have the right number and types of categories that cover the needs and demand of your entire team. 2.When people participate in creating something, they have ownership, which motivates them to invest in solving problems and achieving desired outcomes.
When deciding the number of categories, I’ve found that somewhere between three and seven is good.
Demand Analysis
Identify Work Item Types/Categories
Card Design
Workflow Mapping
Making Work Visible with a Value Stream Canvas
You know you have too much WIP when: •Context switching is common. •New tasks are started before older tasks are finished. In other words, we say, “Yes, I’ll do that,” even though we haven’t finished a bunch of other stuff that is already on our plate. •Work gets neglected and ages.
There are many ways to track WIP. The following example (Figure 12) helps expose WIP. It starts by dividing WIP into three major categories based on who requested the work: •Silver bullets are urgent requests to do something right away, usually initiated by someone in a leadership position. They are in a category of their own because of their urgent priority (perceived or otherwise). •Business requests, including feature work, content, and design, are the things IT does that “the business” promotes, manages, tracks, and is heavily involved with. •Teamwork is the stuff IT does that teams
...more
Remember, categorizing work by who requested it brings visibility to the communication involved—internal, external, or leadership.
Explore the Five Reasons Why We Take on More WIP
Setting WIP Limits
Little’s Law is a relationship of averages. The gist of Little’s Law is that—on average—the more items that are worked on during the same time interval, the longer it will take to finish those items on average.
“By the time you find out you suck, you have sucked for a very long time.”
This thief tends to thrive, predictably, when many teams work on different parts of one big system. The more teams, the higher the probability that more features are worked on at the same time, and this opens the door for more dependencies.
Use cross-functional team stand-ups to flag dependencies. 2.Identify dependencies using a dependency matrix. 3.Implement explicit rules for work flowing between different team kanban boards. 4.Create a rotating dependency scout role—an enterprise-wide system architect who knows the system inside and out.
Organizing teams around a product allows the people who developed, tested, and delivered the functionality to stay in their area of expertise. There is no need for complex, dependency-driven handovers. Instead, organizing teams by product decreases dependencies during hand-off to ongoing operational support.
that’s what happens when priorities are unclear—people take on more WIP.
There are several ways to prioritize. Let’s look at some of the more common methods: •Highest paid person’s opinion (HiPPO): Each job is assigned a priority by the most senior person in charge and processed accordingly. Remember the thirty-three projects prioritized by the VP? •Cost of delay (CoD): A way of communicating value and urgency, CoD is a measure of the impact of time on the outcomes we want. This is an excellent approach for determining business risk, but difficult for many people to actually do. •First-in, first-out (FIFO): First-in, first-out work is processed in a first-in,
...more