As many have already pointed out, identifying, tracking, and resolving impediments are some of the most important things you can do for your team. The question that naturally arises is, “How?” In my experience both observing and working with teams, often impediments are jotted down during the daily stand up on a post-it note or listed on a whiteboard. There is nothing wrong with those techniques if the impediments are addressed in a timely fashion. However, if we really have our act together we can do a lot better than these relatively crude techniques. Impediments play an important role throughout the entire scrum process and I think this is under appreciated by many practitioners.
I would break down impediment management into the following areas: Process, Tracking, Scaling, and Roles. In each case we can explore how impediments are managed and examine how this benefits the team.
In most texts that describe how scrum works impediments are given pretty short shrift. Impements are described as being captured during the daily standup and then they are to be resolved by the scrum master. There really isn’t much additional attention given to the topic: identify the problem and then magically resolve it. End of story. However in practice, impediments play a much more pervasive role in the development lifecycle and they need to be managed accordingly at different stages in the process.
It turns out that impediments have different lifespans. Some impediments are very transitory and are dealt with or resolve themselves very rapidly. Other impediments, especially those that are related to the culture of an organization are much more persistent and can require substancial time and effort to resolve. It would be convenient if impediments were all resolved the same day that they were found – and that is certainly the goal to strive for (as suggested by Jeff Sutherland). However, my experience is that in practice impediments can take some time to resolve, no matter how dedicated the scrum master may be. This is especially the case in organizations that are just adopting Agile.
So given that impediments are in different stages of resolution (and different severities) it makes sense that we track them throughout the scrum sprint cycle. Let’s start in the middle where we are most accustomed to finding impediments – the daily standup.
Every day the team is required to get together for 15 minutes and answer three key questions:
What did you do yesterday?
What are you going to do today?
What is holding you up?
Of course it is the third question that leads us to the impediments. We need to make a note of these impediments as the team does the standup. Then after the standup we can get together with the affected parties and gather more details about the impediment. Hopefully your team will provide you with impediments. The standup is the primary source of new impediments in the process. However this is just the beginning as far as tracking is concerned.
So we go through our sprint, and we get to our review with the product owner. We can demonstrate our small unit of “potentially shippable product” and gather their feedback. However there is an additional opportunity in this meeting to share the impediments that the team overcame in delivering that product (or realistically, in perhaps not delivering that product). Sometimes the team has to jump through some pretty amazing flaming hoops to deliver the product – the product owner might want to know about these things. Why? First, it will help to set their expectations in the future if they understand the kinds of challenges that the team faces. Second, the product owner is an important ally of the team and may be able to help the team out with resolving those impediments. We should take advantage of that potential. Being transparent means sharing all of the struggles that the team encountered in delivering the product.
Next we go into the retrospective as a team and review our own performance over the previous sprint. What went well, what needs improvement, kudos, and so forth. This is an opportunity to review the list of impediments and the progress that the team made in resolving those impediments – I see this as an important measure of the teams ability to overcome challenges. The retrospective is an ideal place to check in on this performance. Are there impediments that are consistently not getting addressed? Why not? What can the team do about it? We can use the lessons learned from the impediments that we encountered in this sprint to modify the way we act in the next sprint.
So we wrap up the sprint and we take the weekend off. We come back on Monday ready and fired up to start a new sprint and we go into the sprint planning meeting. Impediments can play an important role in the planning meeting too. When the team is reviewing the stories in the product backlog, they will find impediments that prevent a story from being worked on in the current sprint (often the impediment is that the story is not well understood yet). These impediments are important for the team to track as well. The other opportunity we have in the planning meeting is to put in place plans for actions that we believe will help us address or avoid impediments in the upcoming sprint. Sometimes simply avoiding impediments is just as important as recording them after they have hit.
So as you can see, impediment tracking really is pervasive throughout all of the scrum lifecycle. There is real value in making sure that impediments are considered along every step of the process, not just the daily standup.