From the course: Lean Software Development

Optimize the whole

From the course: Lean Software Development

Start my 1-month free trial

Optimize the whole

- Optimizing the whole, one of the seven lean principles, means caring about the flow of value through the entire process from beginning to end. This end-to-end process is called the value stream. Before you can optimize a value stream, you have to understand it. One of the easiest ways to ensure a common understanding is to create a value stream map. Join me as I help a team walk through the process of creating one. Okay team, ready to get started? - Sure. - Okay, the very first step in creating a value stream is determining the boundaries. I want you to think about the very first activity that happens to a piece of work and then the very last activity that happens to a piece of work. So we're thinking about the start and the end of the process, okay? This might sound like a simple question but you'd be surprised at how many differences of opinion there can be. - I can see why you think the start's a procurement because that's when we first hear of it, but we want to make the whole process better. Should we start at market research or maybe with a customer request? - Well, speaking of the whole, I mean, delivering something isn't really the end. We're not finished until we've verified that we've delivered value. Are people ordering this new item? - Yeah, I'm hearing some really great points in your conversation. Once you start thinking about the very first idea of the concept all the way to post-delivery learning, you're really starting to think about optimizing the whole. Now that you've identified the boundaries of your value stream, it's time to identify an owner. - But that's tricky. There's no one person in our org chart that's responsible for the entire process. - Yeah, that can be tough in organizational structures like yours that are based around functional jobs. So the good thing is that you don't need a position of authority to be the owner of a value stream. You just need to be able to assume responsibility for the end-to-end process. So what that does take is time, energy and the ability to implement. - I can be the owner. I don't manage the whole process but improving it directly relates to my goals. - Awesome. Now that you have defined boundaries and identified a value stream owner, you can get to the task of creating the map itself. So we want to visualize every activity in the process from the very start that you identified to the very end, okay? And then underneath each activity, we want to capture the amount of time you spend actively working on that step. That's called the value added time. Though value stream maps can look like they represent a waterfall process, that doesn't have to be the case. We know that as we learn more about the thing we're working on, some activities are revisited. For instance, we might need to tweak the design or update the code, though over time we also learn to make the work smaller so there is less need to revisit activities for a single piece of work. Regardless, the simple solution is to capture the cumulative time a piece of work spends in each activity on average no matter how many times an item usually cycles through it. Great job. Next, you capture how an item moves from each activity to the next. For instance, an email, a card created on the board, or an automated process. And then under each, you capture the actual time spent moving the work, creating the card or sending the email. This work is currently needed but doesn't actually create value for the customer so this time is considered non-value added time. - Okay, all done. - Great, congratulations. You now have a basic value stream map. Now if your reality matches this, you're way ahead of the game. But usually that's not the case. How often are you able to start something as soon as its requested? - Hardly ever. We're usually busy working on other things so things have to wait a little bit. - Okay then, to get a more accurate picture of how long it really takes to move work through this process, let's capture the average total time an item spends in each step including the average waiting time. By subtracting the active time from the average total times in each activity, we see the average wait times. This information allows us to calculate our flow efficiency, the percentage of time work is active in this value stream. When you look at a small part of a value stream, say a single team's part of the process, you can easily get a false sense of efficiency. But when you start to look at how work moves across teams and department boundaries, wait times often increase dramatically. In most organizations, there is much more time spent waiting than working and you find flow efficiency numbers less than 20%. - Well, most of the time, our work is queued up waiting for someone especially here. - The more you map the value streams in your organization, the more alignment you create about how work gets done and the more understanding you have about potential areas of improvement. When you're ready to get started, an easy path is to select a value stream that's feeling significant pain or one that has known advocates of continuous improvement. There's no better time than now to get started.

Contents