Enterprise Kanban A Case Study
Enterprise Kanban A Case Study
Enterprise kanban
a case study of improving the full value chain
using Lean thinking
Executive summary
Very few companies start off improvements from a clean slate. They carry legacy:
people, technology, roles, culture, market shares, processes.. a simple proof they
have been successful at some point. So how do we improve a traditional company?
How do you get to a high trust culture? I find this question interesting. Refining it into
a question:
If you are a company that has been successful at some stage: you have an existing
market share, you have heritage in both systems and people then how far can we
get by improving flow, step-by-step and adding skills before altering the
organizational structures becomes necessary?
This is our learnings from improving the full value chain at a traditional company
using Enterprise Kanban.
What we found
We were able to reduce lead times by half over a period of 1,5 years. For released
products, 95% were reported value adding and useful.
Figure 1 Lead time for released product ideas aggregated per quarter.
Page 1 / 34
Marketing
IT
Market unit A
Development
Market unit B
Change
management
Operations
Market unit C
They are organized into two main departments: Marketing and IT. Marketing is split
into three units, each targeting a specific market segment.
IT is divided into three functions:
Page 2 / 34
??
This is an actual quote from a marketing manager describing his view on product
development. It was hard for marketing and development to agree on the right level
of communication. Either the make or break information such as what was unique in
a product idea wasnt explicitly communicated or - if it was, in order to make the
deadlines, teams would abandon these uniqueness in favor of shipping the product
in time. Either way, the upside of the product got lost.
Page 3 / 34
Idea
Product idea
(still abstract)
Affects a complex
product/org
Page 4 / 34
Page 5 / 34
Figure 2 One of our scrum masters mapping their sprint backlog items to what product idea they
belong to on the overall kanban board. A non trivial exercise.
At first development teams were cautious about this change, in their view sprints
worked. But they were also keen to get a better view on what they were working on
(less a cog in the machinery) plus they were curious and so they agreed to give it a
try.
Page 6 / 34
The first time I reviewed them, I noticed 40% did not contain the specified
information we had agreed necessary to engage in a conversation with development.
For example impact would frequently be missing. To fix this we added a policy where
Page 7 / 34
we requested that the team leads screened incoming Concepts before they entered
prioritization and remind the creator of any missing information. While this was
partly expected since we were still early in the learning curve, one cant stop wonder
what would happen if we had developed and released these product ideas.
Cost
?
Effort spent addressing it
Figure 4 The uncertainty imbalance. The biggest uncertainty is on the value side - will the product fly?
Yet we invest the most of our effort during early product development in estimating the effort/cost.
Page 8 / 34
Funding of IT was solved by letting each marketing department fund IT with an equal
amount (1/3rd each). In return, they would be guaranteed to get every third product
idea. In this way, the important decision each marketing department needed to do
was figure out what the next product idea most likely to succeed on the market.
Product
ideas
Flow under
WIP control
Ready
to use
Market
unit A
Market
unit B
Market
unit C
Figure 5 A fixed WIP combined with the decision rule of each marketing department got every third
product idea made sure each department got the portion of development effort they paid for.
The default decision rule of every third product idea could be overruled, if
marketing department heads agreed. This would typically happen if they recognized
that a certain product idea or improvement gained the company as a whole. Heads of
marketing met in front of the board every 14th day to review priorities and make such
calls if needed.
One example of a prioritization call that overruled every third was to pull in a
performance improvement that gained all departments.
Page 9 / 34
Market
unit A
Next
[3]
Ready for
dev [1]
In prog.
Done
Dev
[5]
Data Graphics Portal
service
System
Test
Cust.
Ready
for
test
Testing
Production
Release
ready for
prod.
Acc
test
Ready Cust.
to use usage
Custom
adapt.
Market
unit B
Popular
Oh crap!
Market
unit C
Next
These are the next three product ideas the company has decided to pull
in. This is also where WIP begins and lead time measurements start. From
this moment the marketing department cannot insert new features or
make major changes to the feature scope. They do have the right to
cancel the product idea all together, in this case it moves to oh crap
section at the end of the board.
The manager of each marketing department met up in front of the board
every 14:th day to review prioritization. After a while our head of
development also joined this conversation. This proved to be an ample
opportunity to discuss and agree why an investment in technical debt
would be beneficial now or later.
Not all prioritization decision needs to be synced between the heads of
marketing. In our case each marketing department funds IT with 1/3rd of
its budget. Given this, our default decision rule was every third product
idea would be pulled from your marketing department. This default rule
could be overruled if all heads of marketing agreed. This would typically
happen for product ideas where the company as a whole benefited or key
technical debt.
Dev
System test
Page 10 / 34
Acc. test
Ready to use
Customer usage
Marketing
Sysadmin
Devteam
Change
management
Marketing (x3)
If active product
Devteam (x4)
Every time
Sysadmin
team
On demand
Change
Mgmnt team
Every time
Who comes?
At first, we asked for a (minimum) representation by each function at the standup.
That made up three from marketing (one per function), six from development (one
per team plus the head of engineering), one from change management and one from
operations). Specialists would get pulled in on need basis. Our facilitator at these
Page 11 / 34
meetings and the owner of the enterprise kanban board was our head of
engineering.
Our agenda:
1. Walk the flow. Find out if there is any blocker preventing progress. We
walked this from the back of the board forward.
2. If a blocker is found: Ask who are the right people to address it and assign
one responsible for each. Avoid discussing the problem at the standup, do
this right after.
3. Before ending the meeting: Recap important points (for example who owns
each blocking event)
4. Officially end the meeting (Thank you everyone we are done for today)
It is key to keep these meeting short. We would have 10-20 people in front of the
board from different functions at these meetings. We learned to arrive prepared and
study the board in advance instead of tripping over at the typical oh, what was this
about again.. with people patiently waiting. I believe we can say it worked, since we
still use this twice a week standup.
Page 12 / 34
Figure 6 The section where general impediments blocking progress where visible
While it may seem trivial, it sent an important signal that we did care about blockers
and we werent going to proceed until we had fixed them. It was an important
leadership signal showing these things mattered.
It was frequently used in early during our kanban implementation, but as we solved
a couple of the key blocking issues, it got less frequently used. Currently it is rarely
used. It is still on the board mainly to ensure teams that if they raise a serious
concern, they will be heard. This section is actually an unfiltered communication
channel all the way to both head of marketing and head of development.
Page 13 / 34
Each team was given the mandate to make the call if to pick up work or not when
approached by external parties as long they kept these rough guidelines.
Target
Front
end team
50 %
20 %
20 % 20 %
10 %
Back
end team
65 %
5%
10 %
Feat.
50 %
Bug + maint
20 %
10%
10 %
These bars was visualized on top of the kanban board, see the highlighted area
below.
Page 14 / 34
Tech. inv
Quick fix
personal reasons. This mechanism replaced time reporting as a tool to learn where
team had spent time.
Avoid the feeling that teams where only a small cog in the machinery.
Since one member of each team participated they would bring back an
understanding of the problem addressed plus the reasoning behind design
decisions to their team.
The workflow
Enterprise kanban board
Concept
(A3)
Release
Product
idea
Change
Sys admin
management
Collaborative
design
Dev teams
Prioritze
top 3 product
ideas
A product idea is written down by the owner of the idea as a Concept. This then
(hopefully..) get prioritized by the head of each marketing department. It is then
pulled into collaborative design which happens on demand.
Page 15 / 34
Client
Who attends?
Concept owner
Facilitator
Expert
(pull in)
Calling the meeting and running the show would be was done by a facilitator. He or
she was generally one of the developments teams scrum masters who received
specific coaching for the job. The facilitator would call the meeting and make sure
one developer from each team participated. If required, specialist resources would
be pulled in to this session, for example if integration was required with outside
teams.
Collaborative design session followed the agenda:
1. Paint the picture the concept owner describes the idea, walking through
the concept
2. Discover Carve out 2-4 solution ideas
3. Explore Dive deeper down each solution idea
4. Select Select two options to move forward with
Its the facilitators role to move the group between these modes, selecting the
balance between diving in to detail and exploring options.
Good facilitation is key
The job of the facilitator is to:
One of the most important tasks for the facilitator is to transcribe the discussion.
Ideas are many times thrown out and unintentionally lost. Transcribing enables the
participants to recap earlier conversations and solution options.
Page 16 / 34
Figure 7 Completing a collaborative design session. Solution ideas transcribed on the whiteboard.
Page 17 / 34
Product
ideas
Market
unit A
Prio
[3]
Ready for
dev [1]
In prog.
Done
Dev
[5]
Data Graphics Portal
service
System
Test
Cust.
Ready
for
test
Testing
Production
Release
ready for
prod.
Acc
test
Ready Cust.
to use usage
Custom
adapt.
Market
unit B
Popular
Oh crap!
Market
unit C
If the customer did not like the product idea it was put into the oh crap area. Vice
versa if the customer liked it and it became frequently used (popular).
If a oh crap event occurred, we would bring together the concept owner; the teams
involved and facilitator and do a root cause analysis together. This then became
input to changes we needed to do.
Page 18 / 34
Product
ideas
Next
[3]
Ready for
dev [1]
In prog.
Done
Dev
[5]
System
Test
Cust.
Ready
for
test
Testing
Production
Release
ready for
prod.
Acc
test
Ready Cust.
to use usage
Custom
adapt.
Popular
Oh crap!
Lead time
Together, these gave us indicators over time if we were doing the right thing and
how we were improving on making that happen (lead time).
Examples for changes introduced by the improvement pulse have been, changing the
templates for the kanban cards, inserting, removing and reinserting swim lanes,
refined lead time measurements.
Page 19 / 34
already gotten attention and where being solved. Thus we rarely spent time
discussing fixing blocking issues at our monthly improvement pulse.
160
140
120
UCL 105
100
80
Average: 70
60
40
20
0
1
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Figure 8 Our first sampling of the delivery time for new product ideas. Each bar represents a delivered
product idea and the vertical scale days it took to deliver it. An upper control limit of 105 means 95
out of 100 product ideas will get delivered before 105 days.
Page 20 / 34
Small
80
Medium
60
Large
40
20
0
1
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
In our case, the surprising truth was no. But there are factors that affect the time to
ship. In our case the more dominant factors where: wait time for release, wait time
to get access to specialized skills.
Page 21 / 34
Judging by the data above the argument could be raised that that theres in reality
only one estimation bucket (or two, if you dont judge see longest data point is a
random event).
Timeout How can I find my upper control limit (UCL)
An UCL is calculated such that a majority of events is expected to occur below its line.
The UCL reflects what degree of certainty you want to get for your predictions. You
can choose to be 95% certain (2), 67% certain (1), or 50% certain (aka average
not recommended..).
How big certainty you choose to opt for is up to you, I generally select UCL at 2 under which 95% of events are expected to occur.
UCL
Distribution
around
mean
Average
Figure 9 A way to visualize UCL is to imagine a frequency distribution centered around mean. The
further away from the mean we move, the fewer occurrences we expect to find. Thus UCL represents
a cutoff point of the tail of the distribution.
Page 22 / 34
under development, waiting for system test, system testing). Our first lead time chart
was the one below.
40
test to prod
dev to test
dev time
30
20
10
0
Figure 10 Our first view on which components consumed lead time. A typical situation in a product
development making decisions with but a few data points. It is in situations like this where expertise
and context knowledge matters.
Page 23 / 34
Hm. Sounds pretty much like a bottleneck right? Change management seemed like a
good point to focus our improvement efforts on.
Page 24 / 34
Heres a typical scenario where problem solving must involve several parties to be
successful. One single person/or function cannot make this happen single handed.
The only way this would work was if the agreement was kept and respected by all
parties - all development teams and all change agents.
To visualize this we drew a timeline at the far end of the kanban board that included
the cutoff dates and we asked the change management team to update this for us
for each release.
Last point
of new code
Demo!
2 days
1 week
Go / No Go
1 day
Figure 11 The last point of change - visualizing the release timeline at the kanban board.
Page 25 / 34
Making this change may sound simple in theory, but proved hard in practice. When
we started to discuss this idea with the developers and with change management,
the discussion derailed pretty quickly. Let me share two examples:
Situation #1:
We would like
to release ourselves
Dev
Change
mgmnt
Ahum.. no way..
Dev
Situation #2:
Can we get access
to more than dev environments
to support releases?
Dev
Sysadmin
Ahum.. no way..
Page 26 / 34
Page 27 / 34
Tech debt
200
150
100
50
Figure 12 Lead time for new product ideas. The two data points at the end mark tech debt stories.
As you can see, lead time is trending downwards. The two data points at the end are
Tech debt stories, aka improvements for keeping the pace up in the future. In our
case they were generally of high complexity and carried lower priority, this we can
expect lead time of tech debt stories to be longer.
Page 28 / 34
Here we can see that product ideas released through Q1 2013 got out roughly 2x
faster than product ideas released in Q3 2012. So, where did the improvement come
from? Was it the simple case of just better understanding how to handle new
technology?
30
20
10
0
jul12-sep12
okt12-dec12
jan13-mar13
We can see how average waiting time is trending downwards. The higher up in each
bar, the later in the flow the waiting time (and the more costly it becomes).
Page 29 / 34
We lacked separation of data between waiting for customer usage and making
customer adaptation. Therefore waiting for customer usage (in green) includes
both waiting and sometimes value adding time.
Dev time
20
0
jul12-sep12
okt12-dec12
jan13-mar13
Figure 14 Value adding time separated into development and system testing.
Again we can see both time through development and test is dropping. The fact that
development time is decreasing can be because we know the technology better, but
we have also learned to prepare work and slice it better. But the biggest
improvement has happened in testing - time through system testing has actually
been reduced by a radical 7x.
Page 30 / 34
3%
2%
Customer rework
95%
Figure 15 Customer value feedback. Sample size is 113.
Happy means customer liked it and uses it. Dev rework means we stopped it before
shipment, reworking the design before we deemed it satisfactory to ship to
customer. Customer rework means customer where not happy, sending it back to us
for redesign.
Page 31 / 34
Before
Flow
Marketing
Development
Release
<support
activity>
<support
activity>
Figure 16 Before: Synchronous steps with handovers. Cross function communication revolves around
completing activity steps, holistic feedback returned late.
Today
<current
product
gap>
<current
product
gap>
Flow
Marketing
Development
<current
product
gap>
Release
<holistic
product
feedback>
Figure 17 More work in parallel, cross function communication sharing what is needed to make the
product fly. Feedback is returned faster, first occasion is when concept is shared with development
teams and then continuously as the concept owner reviews and refines the work together with the
teams.
Page 32 / 34
Page 33 / 34
Summing it up
How far can you get by doing evolutionary improvement before altering team
structures becomes necessary?
For us, we reached a 2x improvement in lead time over a period of 1,5 years. The
main bulk of this reduction is due to less waiting time, better approaches to system
testing, and better prepared inflow to development.
We have shown it is possible to let people passionate about ideas to run with them,
regardless of role. (We dont have the traditional roles of Product owners or Project
managers). We continuously learn how this affects quality and usefulness of what
we produce. For released products during the time period, 95% were reported value
adding and useful.
Enterprise Kanban, a quality first mindset, focus on flow, ownership of result,
teamwork and Concepts has helped us get to where we are today. Its has been a fun
and sometimes bumpy ride, we are no way near the end yet and I look forward to
see how things move in the future.
Mattias Skarin, October 2013
Page 34 / 34