- Previously, a guy called Robert ordered a cup of coffee
from Dr. Who.
Today, we'll make the leap from coffee shop
to your Agile board, your Kanban board.
And fair warning, things are gonna get animated.
(upbeat music)
Welcome to Development That Pays.
My name is Gary Straughan
and this time we have no time for that subscribing malarkey.
We have a ton of ground to cover.
If you saw the last episodes
and if you missed it, this link will help you,
if you saw the last episode,
we came in with this guy, our famous barista doing it all.
Taking the order (cash register ringing),
making the coffee (coffee whirring),
and delivering it to the customer.
Let's get that up on a board.
As the barista is doing everything,
I'm gonna adjust the wording to match.
And build a board around it.
A little bit minimal.
What could we do to flesh it out?
Well, we could add a Done column
and while we're at it
and to balance things out a little bit,
let's add a To Do column.
Actually, the To Do column makes quite a lot of sense
especially if we consider that our process extends out
to the front door.
In other words, it includes this queue
of potential customers.
I'll say more about that in a second but first,
it's worth noting that although
we don't yet have a Kanban board,
what we do have is something
that looks like well, at least it will do
when we change the text a little bit,
looks very much like a Scrum board.
Very interesting.
So we have three columns,
two of which I'm gonna color them gray
where things just kinda hang around
and one column where we, either in a coffee shop
or in a development team,
get things done, where we actually add value.
Just so you know, there's been no slight of hand.
We're gonna animate the two side by side
or should that be top and bottom?
And while I'm doing so,
I'm going to correct a massive omission
from the first episode.
I'm gonna be adding in some coffee shop music.
(smooth jazz music)
Our hero takes the first order.
People are coming into the shop and being added
to the To Do Column.
Meanwhile the barista is making the coffee
and he delivers it to the customer.
Did Dr. Who feature in the first episode?
Or was that a Different Time
And Relative Dimensions in Space?
Strangely enough he did feature
in the role of an assistant of sorts.
He arrived out of the blue
at the moment when we decided to specialize.
We had Dr. Who taking orders (cash register ringing)
and the barista making and delivering the coffee.
Let's get those processes reflected on our board.
To Do, take order, make coffee, deliver coffee and Done.
Now I come to look at this again,
I'm not really sure that deliver coffee merits
a separate column.
Although deliver coffee would be an excellent definition
of Done for the previous stage, making coffee.
So making coffee is done
when the coffee is delivered to the person
or at least, slammed down on the desk
and some version of the name shouted out
across the room.
So yeah, let's squash those two back together,
leaving us with two value-adding columns,
one for Dr. Who and one for the barista.
You're not gonna want to see that animated are ya?
That's gonna take ages.
Go on then.
(smooth jazz music)
Pulling from the backlog from the To Do column,
taking the order details
and over to make coffee.
(coffee machine whirring)
We tend not to put people and cups
on our Agile boards
so I'm gonna swap them out
for good old Post-it notes.
Did I just pull a fast one?
The cups, especially those with their little check boxes,
they are definitely Kanban.
I don't think you've argue with me about that
but what about the people in the queue?
One of the ways we could square the circle
would be to have people pick up a coffee cup the moment
they entered the shop
although there's probably some issues around hygiene there
that we're probably best not to go into
and actually I don't think we need to do so
because I think it can be argued quite strongly
that the people in the queue
are actually proper bona fide Kanbans.
Think about it.
Each of the people in the queue
does indeed carry information
about their very personal coffee selection.
Sure we can't see it yet but it's there all the same.
It's worth saying that the queue,
or rather the To Do column,
is not only a product backlog,
it's probably the best product backlog in the world.
A product backlog that Heineken might have made.
Here's why.
It's ordered, it's self-limiting.
When the queue extends out of the door,
no one's going to join it.
And it's dynamic.
It will grow and shrink in response to our speed of working,
even the choices within that queue are dynamic
and it's always up to date.
It's never stale, all, and product owners,
this is where you'll get really jealous,
all without any action on our part.
Let's just make sure that everything is falling into place.
So far so good.
Looks like things are moving along nicely.
Whoa, just a second, did you see that move?
Who did that?
Dr. Who, was that you?
What did you just do?
Let's rewind that.
(tape whirring)
I'm quite happy with how things start
with Dr. Who pulling from the To Do column
and I do think it is a pull.
Sure, the customer has to be present
but it's Dr. Who that decides
when to engage with the customer
by saying something like can I help you, madam?
So yes, it's Dr. Who that initiates the move
from To Do into take order,
so I'm calling that a pull
and the pull is a valid move.
(cash register ringing)
Roll the tape forward again.
Yes, there, stop.
Now, that might be a valid move back on Gallifrey
but in our world, in our Kanban world,
it is most certainly an illegal move,
not a pull put a push.
We can't be having that.
That's like pushing a cup into the poor barista's face.
Leaving aside the whole health and safety implications,
it's just rude.
Now, back in the coffee shop,
we avoided being pushy
by using the space between the till and the coffee machine.
A buffer between Dr. Who and the barista.
A buffer between two adjacent processes,
a mechanism for handling the transition,
the hand-off from one process to another.
Surely, I hear you say,
we can't represent an empty section of counter top
on our Agile board?
Well, we can and for the sake of everyone involved, we must.
And it's with a heavy heart
that I have to color it gray.
Sadly we're adding no value here.
It's just Post-its in a parking lot.
As for naming, well, I'm gonna put that off
until a little bit later
and I suppose you're gonna want me
to animate this thing
so I'm also gonna put that off for just a second
while we take stock of the Kanbanness
of what we have created so far.
Well, Kanban, the objector object,
well, we have no shortage of those.
That's all the Post-its.
Kanban principles.
Actually we have ticked off a couple of those.
We have visualized the work
by having the board in the first place
and we have made sure that at each stage we pull work
through the system
rather than any of that rude pushing behavior.
Kanban, the Agile framework.
Well, we have the makings of a board
that would work well for a team
using, employing Kanban, the Agile framework.
So yeah, we're getting there.
Not quite as far as we will get in just a couple of minutes.
Oh yeah, by the way,
that Kanban with a capital K
that I use when I'm talking about Kanban,
the framework, that's not necessarily a universal thing.
It's kind of my shortcut.
In the same way that scrum with a little s
is something that I except to see
on a rugby pitch
and Scrum with a big S is the Agile framework.
Kanban with a little k
is all of the things we've been talking about
but it gets a big K
when we're talking about the Agile framework.
So yeah, not universal, one of my shortcuts.
All right, let's animate this sucker.
We're off and running.
The buffer column in the middle looks
like it's doing its job.
Very nice indeed.
Hold on, yeah, that's not ideal.
If you saw the last episode,
then this mess will have come as no surprise
but what may come as a surprise
is that it could have been a lot worse,
at least on this board and the reason for that
is that the coffee shop had some constraints,
some natural constraints that this board doesn't have.
The till is either available or it isn't
and although the coffee machine looks like it's up
for some serious multitasking,
the barista probably isn't.
Maybe he could handle two coffees at a time.
There're a couple of ways we could add those constraints
to our board.
For now, I'm just gonna use horizontal lines.
So a limit of one for the order taker,
three for this as yet unnamed buffer column
in the center and two for the make coffee column.
Let's take that for a spin.
A smooth start as we expected.
The Make column is now at its limit of two.
And now the buffer column has hit its limit of three.
No pile-ups this time around.
I'm rather pleased about that nice flow.
Less happy about our still-to-be-named column here
in the center.
Actually, a more important question
than what it's called
is who does it belong to?
Is it something that belongs to the system as a whole?
Does it belong to our two-hearted order taker?
Or does it belong to our barista?
As we saw last time, we gave notional ownership
to the process that influences the buffer column the most.
In other words, the process that lives just upstream
from it, in this case, the take order process.
And I can represent that notional ownership on the board.
The take order column is now split into two sub columns,
doing and done.
Looks like the naming took care of itself.
I think we're there.
The board is now a pretty good reflection
of the coffee shop situation.
A Kanban board with Kanban cards
implementing Kanban principles.
Perfect for Kanban, the Agile framework.
I wonder if you're feeling at this point
that we've gone to quite a lot of trouble here
without really feeling
that we've reaped the rewards.
Well, now that we have this board in position,
we are ready, we are poised to really put it to work,
to start to reap some of those benefits
and we'll be getting into that in the very next episode
but just before you go,
I'd like to hear from you.
Do you have an Agile board
and is it more like this or more like this?
Let me know in the comments below
and I'll see you next time.