In this three-part series on Kanban for DevOps, Dominica DeGrandis, Director of Training and Coaching at Planview AgilePlace, explains three key reasons why IT Ops teams and those implementing a DevOps value chain use a lean flow approach to product development. If you’re just jumping in, here’s a link to part one; otherwise, read on for part two.
Reason #2: Staying focused when flooded with conflicting priorities.
Imagine a five-gallon bucket poured through a narrow funnel. The funnel can hold only so much before it overflows into a messy spill. For operations teams, the funnel is often overflowing, because they support a flood of multiple and competing requests, servicing a wide variety of customers.
From configuration management to capacity expansion, and from security compliance to automation, operations teams work on so much more than new product development. Such broad usefulness can result in a barrage of interruptions that mess up a team’s flow. In every workshop I facilitate, operations teams cite the constant “context switching” from interruptions as one of their top frustrations.
Context switching occurs when priorities conflict. When today’s number one priority routinely usurps yesterday’s number one priority, the purpose becomes murky and frustration, endemic. To get back on track, it’s necessary to clarify our prioritization processes (or lack thereof) and illuminate conflicting priorities.
But before we do that, let’s look at why the problem of conflicting priorities exists in the first place, why it’s such a tough problem to solve, and what happens when it doesn’t get solved — or at least improved.
Why conflicting priorities exist and why they’re a problem
Many priority conflicts arise from three common causes.
1. Too much demand. Conflicting priorities can occur when there is more demand than we can handle. Of course, we desire demand, because if no one demands our product or services, we may be out of work soon.
Demand is life, but when left unchecked, it overloads our capacities. Wanting to do the right thing, we attempt to do too much work too fast. Heroic efforts appear praiseworthy in the short term, but such efforts inevitably lead to expensive mistakes. Recall the adage: When we attempt to get everything done, nothing gets done.
2. Shifts in business direction. Conflicting priorities often seem to go hand in hand with uncertain market conditions. To stay competitive, business owners must hustle to change direction quickly. As a result, teams working on Project A may be asked to begin Project B before discovering that Project A may soon be abandoned.
3. Unrealistic project timelines. Conflicting priorities can also come from inappropriate deadlines and targets. For example, when a sales manager promises a new feature to a customer – without asking impacted teams – the new work can knock other committed projects off their timelines.
Likewise, if a hopeful vendor naively says, “Sure, we can do that – no problem!” — an overly optimistic target may land the work in the “abandoned” bin.
Why the problem of conflicting priorities is tough to solve
People in other parts of the company who submit requests to operations teams are often unaware of all the other requests. Everyone just wants to get his or her job done. Urgently.
When the roiling sea of requests hits the funnel, everything clearly cannot all be done at the same time. We need some form of prioritization to monitor the flow. But how does prioritization happen?
It’s not unusual to see the following methods:
- Prioritization by he or she who yells the loudest
- Prioritization by who has the most political authority or influence
- Prioritization by who is best friends with the person whose skill set is in need
While these methods can work, they exemplify the kind of command and control behavior that has people updating their resumes. On a more fundamental level, these methods mask problems — like not understanding which work request, when well executed, represents the best choice for the company.
I recommend the following method instead:
- Prioritization by examining the over-arching business value to the entire company, rather than one particular department.
Business value (and/or cost of delay) is often hard to decipher, and it’s too big a topic to address in this post. Suffice it to say that when all concerned parties consider the whole picture, it’s easier to be on the same side of the fence.
What clear priorities can do for teams and how to get them
When workers request project priority, a “do all the things” answer can do more harm than good. Attempting to increase the workload through a funnel that can only handle so much is a futile exercise — it only increases interruptions that cause further delays.
Clear priorities are vital. They help reduce questionable tasks and relieve workers of expensive context switching, which in turn improves the flow of work. But it’s important that these priorities come from the top.
Business owners (or the leadership team) with collective responsibility for attaining common goals for the organization should identify which few items to place in the funnel. Operations leadership needs a seat at this leadership table.
Removing the burden of guessing what is the highest business priority frees teams to focus on the execution of the requests. Escalated requests bounced back and forth between departments are reduced because of the priority consensus at the leadership level. High-level prioritization is an action for leadership to determine — not downstream teams.
Why we need to shine a light on conflicting priorities
When a work item takes longer than expected, or it sits idle, it consumes space in the funnel. This prevents progress on other work and blocks the funnel. A blocked funnel is impossible to ignore. Like a clogged kitchen drain, the plumbing gets the attention it deserves. To clear the funnel, a discussion is needed to decide if the work should be escalated or pulled out.
Here’s an exercise to try: Query your ticketing system to reveal all work items that haven’t been touched for a period of time (e.g., 30 days). Compare that outcome with the work that is getting done. Is the result surprising? If yes, it might be time to revisit your organization’s prioritization method and have a good old-fashioned conversation about conflicting priorities.
How to shine a light on conflicting priorities
“When one party begins to feel pain in synchrony with the other, the problem will eventually find its resolution.” — Gerald Weinberg
Talking about conflicting priorities may be uncomfortable, but shared pain is an effective way to focus attention on problems and begin to resolve them.
Making pain visible is the most comprehensive way to share pain. Shining a light on conflicting priorities requires a visual representation of all the work that is currently in the funnel. When everyone is looking at the same picture, visibility makes priorities obvious: Everyone can see what’s being worked on and what’s not.
In the Kanban board example above, three lanes represent work currently in the funnel: “In Work,” “On Hold,” and “Abandoned.”
The “On Hold” lane exists below the “In Work” lane to explicitly disclose when work cannot make any progress. Additionally, we can discern that the work in the “On Hold” lane is sitting idle because people are busy working on higher priority items above. The “On Hold” lane can also be used to show items that are delayed for reasons outside of the team’s control, such as purchase order approvals or third-party services.
The “Abandoned” lane reveals work that was started but is now de-prioritized to the point of no return. Showing the state (i.e., the column or lane) where the work stopped allows us to better understand the cost of beginning but not finishing work. Adding a policy to visualize displaced work causes necessary prioritization discussions and highlights the potential morale cost.
The bottom line
Using Kanban boards to reveal all the work in progress helps operations teams monitor priorities more effectively. But first, business owners and leadership teams (which include operations) need to determine which few priorities make it into the funnel. Clarity is critical. When priorities become clear and work-in-progress limits are adjusted appropriately, we can finally focus. Uninterrupted focus is priceless when it comes to getting things done.
Learn the third reason why IT Ops uses lean flow — read part three in the Kanban for DevOps series.