According to the Scrum Guide, “Daily Scrums … identify and remove impediments to development …“. They also advise that this is a service for the Development Team offered by the Scrum Master. Often an impediment backlog is used for this purpose. I’d advise the Scrum Master to use a Kanban board for handling the Development Team’s impediments.
Most of the Scrum teams I’ve seen over time use impediment backlogs. In the worst case that is an unordered list of impediment items, stored as an excel file on the Scrum Master’s computer. That’s not good for several reasons:
- Lack of transparence: Only the Scrum Master has access to that list, and even to him that list is not visible all the time.
- Lack of participation: The Development Team can’t participate in the almost secret list. No self-organisation is encouraged. The Scrum Master has to delegate items if he wants others to participate.
- Lack of structure: An unordered list gives no direction on which item to work next.
With the last two Scrum Teams I worked with, we came to the following solution: an action board, which is in fact a Kanban board for actions. We did this in the following seven steps.
1. Transfer the list from excel to a flip chart.
Put each impediment item on one line on the flip chart. Put the flip chart in the Development Team’s room or attach the flip chart paper on a wall in that room. If you get rid of an impediment, cross out that line to signal that it’s done.
That’s better, because it’s visible and therefore transparent for everyone involved. During a Daily Scrum e.g. everyone is able to see which impediments are resolved and which ones have not been addressed yet.
Next challenge is that the flip chart will look odd after a while, because of all the crossed out lines. It might become harder to identify the impediments which are not done yet. You could write a new flip chart after a while, and transfer the open impediments, or use a second flip chart, but the problem of the big batch size remains.
2. Transfer the list from the flip chart to sticky notes and attach all stickies to one board.
Put each impediment item on one sticky note. You could use index cards as well. Put all stickies on one board. If you get rid of an impediment, crumple the sticky up and throw it away.
That’s better, because now you don’t have to rewrite half of the impediments all the time on new flip chart paper if you tidy up the impediment backlog.
Next challenge is that nobody knows who’s actually working on which sticky.
3. Use name tags on each sticky to identify who’s in charge.
Write the name or the initials of the one who’s in charge of a certain impediment on the impediment’s sticky note. You can also use paper clips to attach name tags (little pieces of paper with name or initials).
That’s better, because now everyone knows who can be asked about a certain impediment in the Daily Scrum. This is very useful for long lasting impediments such as “Get the special hardware device xyz”, where one has to call diverse departments over and over again before the impediment is removed. With name tags no one will forget who signed up for this task.
Next challenge is that if you find new impediments and put them on the board, you might not have the time to organize it, i.e. find someone who’s in charge for it. You’d want to wait until the next Daily Scrum. Also if you crumple up stickies which are done, you won’t have the ability to have an overview of what you’ve achieved, say once a week.
4. Divide the board in three areas, “Todo”, “Doing” and “Done”.
Draw two lines on the board, one in the upper third of the board, the other in the lower third of the board. If an impediment is discovered, add it to the todo area. If an impediment is done, move it over to the done area.
Thats better, because now registration of an impediment is separated from its organization. Everyone who finds a new impediment just puts it in the “Todo” area, and in the next Daily Scrum the Development Team can figure out who should sign up for it. Also in regular intervals, e.g. every friday, the whole Scrum Team can have a look at that “Done” area, have a short reflection about what they achieved in the last week, and then crumple every sticky in the “Done” area. Btw: Bonfires with done-stickies lift the spirits!
Next challenge is that this board design is so familiar…
5. Turn the board 90° to the left, replace rows with columns, and say hello to your new Kanban board.
That’s better, because – well, now you have a name for it, and you can apply much more principles and science to it, e.g. Theory of Constraints http://de.wikipedia.org/wiki/Theory_of_Constraints. Also, you can use Kanban terminology, e.g. impediment items are now called tickets.
Next challenge is that it’s not visible when you have to work on a blocked ticket. The nature of most impediments is that you wait for them more than you work on them. Ordering hardware, arranging meetings, negotiating conditions, all of those are often tasks one has to do to solve an impediment. So you don’t have to deal with every impediment every day in the Daily Scrum.
6. Use smaller stickies with due dates to indicate blockers.
Write down the due date on a smaller sticky. Due date is the date of the next action required for a certain ticket. Put that due date sticky right on top of the blocked ticket. You only have to do this for the “Doing” column. Order the “Doing” column according to the due date in ascending order from tickets without a due date to tickets with the highest due date.
That’s better, because now in the Daily Scrum you only have to focus on expired tickets, i.e. tickets either without due dates (in columns “Todo” and “Doing”) or with due dates that are less than or equal today’s date (in column “Doing”).
An example: Today is 01.08.2011. To resolve an impediment you ordered hardware, and the delivery time is 2 days. Now block that ticket with a due date sticky note. The due date is 03.08.2011 (+ 2 days). You don’t talk about that ticket on the next day’s Daily Scrum (because 03.08.2011 is not less than or equal than today’s date, which is 02.08.2011). But you adress the ticket on the day after tomorrow’s Daily Scrum (because 03.08.2011 is equal than today’s date, which is 03.08.2011 then). And maybe you won’t be able to do your day after tomorrow’s Daily Scrum (because that could be a national holiday), and you would only be able to do the next Daily Scrum on the day after that (which would be the 04.08.2011). Then you’d also address the ticket, because 03.08.2011 is less than 04.08.2011.
Next challenge is that you now probably have two tools for the same two things: a Kanban board for impediments, and something else for your actions, e.g. from your retrospectives.
7. Integrate actions into your impediment Kanban board.
Put all your actions from retrospectives or other sources onto the impediments Kanban board. Rename your board and call it action board.
That’s better, because now you have all activities in one place, next to your stories on your storyboard. Because actions and impediments are so similar (you do actions to solve impediments, too), you can handle and track them with one tool. If you want to distinguish them (e.g. to measure different average lead times), use stickies with different colors.
That’s it. You turned your impediment backlog into an action board.
Outlook: Now that you have an action board which is in fact a Kanban board, you can apply all kinds of Lean methods and principles, e.g. introduce WIP limits or measure lead time.
P.S.: I think this is a great example of the use of Kanban and Scrum within one system. Would you agree?
Pingback: Handling Impediments with the Task Board « Stefan Roock
Pingback: Bernd Schiffer: 7 Steps to Build a Kanban Board for a Scrum Team’s Impediments « Agile Links