When ToDo, In-Progress, and Done Aren’t Good Enough

January 4, 2010

On a task board there are two places that we can capture additional detail regarding the tasks we are working on:

  1. In the tasks and stories
  2. In the categories that we use to organize the tasks and stories

The common starting point for categories on a task board are: ToDo, In-Progress, and Done. Obviously this works for the great majority of cases because the categories are so vague. It’s the starting point for most teams that are using a task board for the first time. However it isn’t long before we discover that some things don’t fit this model well. For instance many tasks commonly take place in multiple ordered steps. Look around you, it happens all the time. Trying to capture tasks that have more than three steps to them on a task board starts to feel awkward. People start to ask if there should be another column on the board. The answer is probably yes.

You see, if you resist and decide not to track additional legitimate state for a task, then in essence you are keeping that information invisible. State is important. Hidden state violates the principle of transparency that we are trying to promote on agile projects. So you need to find a way to represent it on your board. There are lots of mechanisms to reflect additional state on a task board:

  1. Add new swim lanes
  2. Use color on the task/story cards
  3. Use labels or stickies on the task/story cards
  4. Additional text on the card
  5. Additional task cards

All of these techniques will provide additional state information to your task board. A common symptom of a board that isn’t conveying enough state information is when the stories tend to get “stuck” under the In-Progress category for long periods of time. Now there are lots of reasons this can happen, but one reason the task/story may not be moving is because you don’t have an adequate way to express the state of the progress being made on the work. The developer may be making lots of progress, but none of it is reflected in the task board. When this happens, you need to consider that perhaps the board is not displaying information that would make the progress visible.

I was reminded of this today when looking at a team’s task board. Stuff was sitting in the In-Progress” category for too long. However I knew that the team was making great progress. So they weren’t lazy. And they were keeping the board up to date. So what was the problem? There wasn’t enough information on the board to properly reflect the work that the team was doing. As a result, there were impediments that we couldn’t even recognize because we didn’t have any way of showing progress on the hidden states. Being blocked on “In-Progress” is not very informative. Being blocked on the “certification request” is much more explicit.

So the next time that the team seems like they are stalled with their task board, consider changing the way the information is presented. Adding a few new categories could help the team identify some of the hidden issues that are currently blocking them.


Classifying Impediments

February 25, 2009

2009-02-26-220518

 

 

 

 

Categorizing things can be a very useful tool for understanding the world around us. I watch my 2 year old daughter doing it all the time. She points at a robin in a tree and chirps, “Birdy!” Then she sees an eagle in a book, points and says, “Birdy!” I guess Homo sapiens must be pretty good at drawing these kinds of associations, because it’s apparent that we start doing it at a very early age. We use categorization to discriminate the different things we encounter in the world.

Recently I have been trying to look at impediments with “new” eyes. If you keep an impediments log you can see patterns arise and common themes become apparent as you review impediments with similar causes. When I first started tracking my impediments I used a spreadsheet to keep track of them. I was trying to create a history of impediments that I could review and reflect on both by myself and with the team. At first, I just started out recording the name of the impediment and tracking whether or not it was resolved. Soon however, I started adding more categories to the list of impediments. I wanted to track when I first became aware of the impediment, and when it was resolved, I wanted to categorize the impediments so that I could track themes – impediments that might share a common origin. I also started to track the root cause of the impediment – what had occurred (or not occurred) that had led to the impediment in the first place?

As I tracked my impediments over time, the list of categories grew longer and longer. Here is the list of impediment categories that I track today:

Missing dependencies: This could be software, hardware, or people dependencies. All too often something needs to happen, but something required to make it happen is missing. I want to order a burger at the drive through, but there is no one to take my order at the window. I picked up the idea for this category from Matthew May’s excellent book, “The Elegant Solution”. He outlines a lot of the lean strategies used at Toyota and the principles that support them. In one chapter he categorizes many different kinds of waste that can be found in any process. It was reading this chapter where I had a “eureka!” moment: impediments = waste!

Defects: This one is pretty obvious most of the time. Something is broken. There is a bug in the system. Something isn’t working as intended. The heater in my car seat stopped working. The bugs assigned to the team in triage. The little plastic lid won’t snap on to the top of my latte and stay.

Not enough time: The story of my life. Usually this indicates a scheduling or commitment problem.

Interruption: Do you have your email client setup to alert you as soon as a new email arrives? That’s an interruption. Interruptions can be obvious, like when the phone rings, or they can be subtle, like the way we manage our email.

Incomplete Work: Half done work can be as bad, if not worse than work that was never started at all.

Waiting: This category is everywhere. Try keeping a notepad with you and noting all the times that you wait during the day – for anything. You may be surprised at how much waiting is going on in your day.

Miscommunication: Communication between team mates – between teams – between silos…

Decisions not made: Organizational dysfunctions are impediments – sometimes the toughest impediments to resolve. The good news is that they are also frequently the kinds of impediments that once resolved, deliver the most reward.

Poor Maintenance: OK, I admit it – I was thinking of my car when I came up with this category. Without revealing too much, I realized that there are a lot of things that need maintenance in my life, and they all need to run smoothly (my car, my house, the dishwasher, the servers that run our software, etc.)

Disorganization & Clutter: Anyone who has seen my desk knows where this category of impediments came from.

Over commitment: Sometimes impediments arise from the very fact that we are just trying to accomplish too much. The good news is that this category of impediment is easy to resolve – just back off the throttle.

Lack of control/Discipline: This encompasses those impediments that arise because of something that wasn’t done. Sometimes there is an established process that isn’t followed – that can be a problem. Other times the process itself can be the impediment.

Forgotten: Alright, so my memory isn’t what it used to be. OK, my memory was never that great. The point is, forgetting to do things can be a big impediment to getting things done.

Distractions: email, web browsing, and the three martini lunch – It’s amazing I get anything done at all. It pains me to think that many of the things that we get such pleasure from can also impede use from achieving our goals (such pleasurable impediments). This category of impediments is the hardest for me to see.

This is by no means an exhaustive set of impediment categories. I’m quite sure that there are many more.  The categories can overlap too. An impediment can fit into multiple categories at once (i.e. waiting and decisions not made seem a natural combination).

There is one other benefit of categorizing impediments that I am only now starting to realize – categories provide a language for talking about the impediments for your team. It’s a lot like patterns in the respect that simply giving a name to a class of impediment allows us to discuss the issue as a group without getting locked into specifics. It provides a level of abstraction for the discussion – and dealing with abstractions is where we make unexpected connections to other solutions.

I see working with categories as a tool that we can use to help remind ourselves of the things that we should be looking for when we are seeking to reveal the impediments around us. Categorizing is something that we do very well as human beings. Scientists have been doing it for a long time (Kings Play Chess On Fine Grain Sand). On a cognitive level, categorizing our environment helps to frame how we think about the problems we are facing. It allows us to better discern the similarities and differences in the objects under study.

We need to take a scientific, empirical approach to working with impediments. Categorize them any way you choose – the very act of making the categories will help you to discover new impediments. Uncovering impediments is uncovering problems and it is in the solutions to those problems where you find innovative ideas for yourself and your team.