Listen to this post
Errors are going to happen. Trying to prevent them is helpful, but it is often more effective to minimize the impact they have by detecting them quickly.
In software development, waste can be thought of as “unplanned work caused by errors which are usually exacerbated by delays in feedback.” It can come from several sources.
- Errors that are detected well after they occur. The later they are fixed, the more unplanned work they cause.
- Delays in workflow, where the information (such as requirements) ages and has to be redone.
- Manual work that could be automated (such as testing). In the case of manual testing, the delays in detecting errors causes even more waste.
- Task switching (often referred to as multi-tasking). This causes people to be less effective in their work and causes all of the delays listed above.
When projects get delayed by a few months, you may not notice that these delays are caused by a series of small errors that cascade into a multiplicative effect. “Big” delays are caused by a sequence of small delays but aren’t noticed until they are big. These small delays are pervasive throughout the value stream network.
To get to the root cause, ask, “Where are we putting delays into the development process? And why?”