Getting Teams to Deliver Predictably
Getting Teams to Deliver Predictably
Join the DZone community and get the full member experience.Join For Free
DevOps involves integrating development, testing, deployment and release cycles into a collaborative process. Learn more about the 4 steps to an effective DevSecOps infrastructure.
As recently as this week, I’ve been involved in conversations with customers about how we can help make their teams deliver more predictably. How can they meet commitments on all levels of the organization, including project, program, and portfolio?
Well, it’s not easy. There is no silver bullet that is going to allow you to align the organization overnight. I do, however, have one recommendation: Stop trying to maximize the utilization of your people. I know some are going to find that hard to understand. To maximize value throughput, you need to keep your people as busy as possible, right? Didn’t Henry Ford do it that way, when he had cars coming off the assembly line at three-minute intervals? Actually, no, he did not. What he had and what you need is a balanced system.
Henry Ford did not have everyone working at 100% utilization. If everyone worked at 100%, the result would have been congestion — bottlenecks within his (assembly) system and the production of excessive parts inventory. Instead, one of the many things he did was focus on limiting lead times. That’s the time something waits before an activity happens. By understanding his system, he was able to have the right amount of people, working at the right pace, in the right sequence, in order to maximize flow (delivery through the system).
When trying to get your teams to delivery predictably at your organization, let’s look at this from a 100,000 foot view:
- Understand Current and Potential Capability and Capacity
- Understand the Delivery System and Establish Goals
- Balance Capacity and Capability with delivery throughput
- Monitor Performance
That is how you establish predictable outcomes.
No let’s look at this with some detail.
Understand Current and Potential Capability and Capacity
You’ve probably heard the analogy of a freeway being a value delivery system. If not, let me draw the parallels. On a freeway, we don’t care about utilization; we care about throughput. That is, we don’t care how many vehicles can fit onto the freeway. We care how quickly we get from point A to point B. Measuring the capacity of the freeway is not going to directly help us. Measuring the throughput will. For those who follow Lean Startup, these are referred to as vanity metrics and actionable metrics.
Actionable metrics can lead to informed decisions and subsequent action. Example, I know how fast the vehicles travel on a given freeway, therefore I can plan accordingly to arrive on time. Vanity metrics show that you’re measuring things, but they really aren’t helping you. You need to measure the right things. By measuring the capacity of a freeway and then trying to fully utilize it would be foolish. Strangely enough, I see organizations do that with their people all the time. They try to keep them as busy as possible.
Understand the Delivery System and Establish Goals
We don’t build bigger freeways so they can hold more vehicles. We build bigger freeways because we’re not smart enough to figure out how to limit the size or amount of vehicles on them at the same time. The fewer or smaller the vehicles on the highway at the same time, the faster everyone moves along. To increase throughput (speed) on a freeway, you need to increase the ratio of space utilized by a vehicle relative to the total space of the freeway. If we could increase the (distance) buffers between the vehicles, we’d have fewer start and stops along our commutes. Once we hit higher utilization rates, things dramatically slow down until we have traffic jams.
Balance Capacity and Capability with delivery throughput
It’s the same thing with knowledge based systems! Exceed a 70% utilization rate and you’ll begin to see dramatic performance decreases.
One thing that I have seen that is bringing it together is enabling teams to make their own commitments. Once they have a sequenced queue of work and all the people necessary to complete that work, allow them to commit to, start, and then finish it. You should begin to see the flow of value start to emerge. Don’t pull people from the team to give them “busy” work. Don’t push extra work on the team to keep them busy.
You can tell if your people are over-utilized by measuring the lead times. If their work is properly sequenced, and they limit the size and volume of work they agree to do at any given time, the result should be minimal delays. If you want to go faster, you may have to change the system. Measure how long it takes to get something through your system. Reflect on that. Were there any dependencies on other people or resources that slowed you down? Did you have your people over-utilized? Was the work you committed to too big? Look for an area of possible improvement, address it, and run work through your system again. Did the lead time get shorter?
Going back to the commuting analogy, for those doing the driving, understand the conditions and know the optimal start time to begin your commute in order to avoid delays and arrive at your destination without breaking any laws. For those asking for arrival commitments, respect what the driver tells you. If you don’t, you’ll find people doing things like driving on the shoulder or illegally speeding in the express lane, just to arrive on time. Sooner or later, there’s going to be an accident.
Published at DZone with permission of Mike Cottmeyer , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.