Key Takeaways
- Problem solving is a skillset that can be learned by practicing techniques and refining how to apply them
- Blending problem solving techniques with the agile mindset can result in better outcomes
- Self-organising teams can build team problem solving muscle and are able to collaboratively tackle impediments which no single individual could solve on their own
- It’s important to distinguish the signal (visible symptom of a problem) from the impediment itself, the signal is almost never the actual problem
- Leaders need to support teams as they address impediments and support the teams decisions
Ben Linders has written a new book focused on helping teams and individuals identify and address impediments. Titled Problem? What Problem? The book presents ideas and experience around problem-solving approaches using agile mindset and principles to help teams rapidly overcome challenges and use impediments as opportunities to learn and adapt.
A sample of the book can be downloaded here, and it can be purchased from LeanPub here.
Ben spoke to InfoQ about the book.
InfoQ: Why did you write this book, what is the fundamental problem you were hoping to address?
Ben Linders: Agile defines impediments as problems that slow down teams or keep teams from getting work done. They are an obstruction or obstacle, something that hinders people. Impediments have an impact on the flow of work, they inhibit delivery of value.
Impediments need to be dealt with. This can be hard. I’ve seen teams struggle with impediments that they were facing. Being blocked and not being able to find a way out. People looking up to their managers to solve their problems, only to find out that the solution provided wasn’t what they had hoped for.
With an agile way of working, people are expected to solve their own problems. So, now everybody needs problem-solving skills. But how to develop those skills?
What I’ve seen is that having the right skills for dealing with impediments and applying them using suitable practices can make a significant difference. Hence I looked for ways to help people develop those skills. Previously I published a blog series on dealing with impediments and created a serious game called The Impediment Board Game where teams can practice their problem-solving skills. I'm also giving workshops on problem-solving and improvement, so writing a book was a logical next step.
I started looking for ways to blend the agile mindset and principles with existing problem-solving practices that I've used and am still using. My aim was to adapt what's there for using it within modern software development, and show how these practices fit into Scrum, XP, Kanban, or any other agile framework.
The book Problem? What Problem? is about dealing effectively with impediments using agile thinking with problem-solving practices. It explores how teams and organizations can deal with problems themselves. By doing that, they become better in self-organizing the way that they do their work. The book also provides solutions for dealing with impediments beyond the team level.
InfoQ: Who is the book for?
Ben: This book is for agile teams, Scrum masters, tech leads, agile coaches, consultants, developers and testers, project managers, line managers, and CxOs; basically, anyone who is looking for an effective way to handle impediments or support people in doing that.
InfoQ: What is the difference between a signal, an impediment and a blocker, and how should they be addressed differently?
Ben: An impediment is anything that slows people or teams down or block the delivery of products or services. It can be something in the way of working, be it processes, tools, or organizational rules or structures.
Examples of impediments are:
- Build time that keeps increasing
- Toxic behavior from people that you have to work with
- Networks or cloud-based systems that are failing
- Power outages
- Frequent conflicts between people
- Accumulating technical debt
- Situations where people object to or find it difficult to work with other people
- Elephants in the room that nobody dares to mention
- Many test cases that are failing
- Unavailability of people
- Difficulties to contact people when you need them
- Organizational procedures making it difficult to do your work
- Bad coffee
- Lots of discussions about everything while making no progress
- Having to work in a sick building
- Situations that cause people to remain silent most of the time
- Personal problems that people bring to work
- The office police
- Teams depending on other teams or departments
When people are being slowed down by an impediment, there are usually signals that tell you that this is happening. A signal is not an impediment, it is an indicator telling you that you might have an impediment.
Examples of signals are:
- Things take longer than expected
- People are complaining
- Unclear user stories/requirements
- A lack of collaboration in the company
- Team members that are stuck and don't ask for help
- Skipping the retrospective
- People seem to be avoiding somebody
- Code integration issues
- Customers who are unhappy with your products
- Important work that is not being picked up
- Stakeholders that are complaining
Signals aren't only what people say, they can also be what people do (or don't do). It can, for example, be subtle things in how people behave, how the work is being done, or how people collaborate.
Recognizing that there might be an impediment is a very important step. Often there is only a signal, so you have to be a good listener to notice it and pick it up.
If you are unsure if what you have is a signal or an impediment, start by asking yourself why this is happening. If that leads you to something that could be causing multiple problems, then you might be looking at an impediment.
I consider blockers to be a special kind of impediment. A blocker is something that inhibits work completely and brings it to a halt.
Blockers are a subset of impediments: every blocker is an impediment, but most impediments are not blockers as often people will still be able to proceed when they face an impediment.
Where most teams are able to recognize blockers, they may miss out on impediments. Blockers are easier to spot as they stop an activity, where other types of impediments often (gradually) slow things down.
InfoQ: What is it about the agile mindset that requires a different way of addressing problems?
Ben: If an organization is working in an agile way, their approach to solving problems should also be agile-based. It has to fit in and be congruent with the company's and people's agile mindset to be effective.
What does problem-solving look like when we are using an agile mindset and agile thinking? Here's my view on this.
Many problems relate to the way people work together. Where every person does the best they can, problems often arise when things come together. Problem-solving practices should help us to understand how individuals interact and to solve collaboration issues.
There are often too many problems to solve. We need to focus our effort on solving impediments that have the biggest impact on outcomes. Solve the ones that affect our ability to deliver something that is working, right now.
Collaboration is key, not only within teams but also between teams and when working with stakeholders. Problem-solving practices should enable us to visualize the system and collaboratively look for solutions. They should engage people from the start and enable them to self-organize and come up with solutions that work for them.
While we're working on a problem, things will change. We'll learn new things along the way. We will find out what works and what doesn't. Problem-solving needs to respond to change to be effective. We need to be flexible on what problem-solving practices to use and how to use them.
The agile manifesto mentions the four key values: Individuals and Interactions, Working Software, Customer Collaboration, and Responding to Change. You may recognize them in the above view :-).
Where most problem-solving practices may not be new to you, applying them with agile thinking can make a significant difference.
It's about being agile over doing agile. Not doing problem-solving practices by the book, but applying them so that they can blend in with the daily work and hence be more effective.
InfoQ: How can members of a team identify which impediments they can address themselves and which they should look for outside assistance with (and how do they make sure they’re not escalating the ones they should tackle themselves)?
Ben: Funny thing is that, contrary to what people think, most impediments can be solved by the team themselves. I dare to say this, based on what I see while doing exercises for many years with teams for solving impediments in my workshops and conference sessions.
In these exercises, teams discuss and analyze impediments. Next they decide what action to take and who should take action. Throughout these exercises, teams assign most actions to “any team member”. Next comes “Scrum master”. Very few actions are assigned to “someone outside the team”.
Teams are responsible for their own way of working. That means that team members will have to work together to solve problems that their team is facing. In an agile organization, agile teams will solve most of the impediments themselves. Organizations should ensure that agile teams can do this and do not have to rely upon management to solve their problems.
There will be some impediments that go beyond the team’s influence or span of control. As an example, think about systemic organizational issues, or problems that hinder multiple teams or need management support to solve them. These kinds of impediments relate to the "system" in which teams are doing their work, the context in which they have to operate.
Some of the challenges that teams face in dealing with such impediments are:
- It's hard to oversee impediments only looking from a team perspective.
- Teams may have limited information about problems, not all information may be available or accessible to them.
- Problems can involve many stakeholders, where it's often hard for teams to get them all together to align their views and decide what to do.
- Actions needed to deal with the impediment may be outside the team's control or influence.
The nature of these kinds of problems makes it very difficult to impossible for teams to solve them on their own. Teams need to go up higher in the organization to properly address such impediments.
The few impediments left where managers have to be involved to solve them are the hard ones. They often have to do with organizational barriers or company goals or culture. Managers should focus on getting these issues solved with the help of teams, where teams will solve most of the other issues themselves.
InfoQ: How can someone improve their own problem-solving effectiveness?
Ben: Let me begin by stating how important it is to become more effective in dealing with impediments. Solving impediments is often perceived as stressful and difficult by many people. It often means changing something and trying things that you haven't done before. By improving your problem-solving skills you can turn it into a practice and habit that supports continuous improvement.
Here are some suggestions on what you can practice for becoming a better problem-solver:
- Invest time in deeply understanding impediments before taking action to solve them. Once you really know what is happening it becomes much easier to do something about it.
- Work as a team, don't take things personally. In the teams that I work in or with, I make clear that it doesn't matter who comes up with an idea. It's more important to solve problems so that the team can continue.
- Don’t try to change everything at once. Teams and organizations are limited in how much change they can absorb. When they start to become overloaded, chances are high that everything stalls.
- Keep a list of the problems that you are working on. Visualizing what needs to be solved now helps people to focus.
- If there are people who show signs of resistance when actions need to be done, by all means, talk with them and listen to what they have to say. They might have good reasons for doing that. Take them seriously, ask them why and how they see things, and how they feel about it.
- Give high priority to solving impediments. As long as the impediment exists, you are incurring waste. You are losing time and money. The sooner the impediment is gone, the better it is.
- Managers should stand with people when things go wrong. Even if you expect that something will fail, as a manager it's better to support people to try out their ideas for themselves and get better in what they are doing by learning from their own experience.
- Continuous improvement needs to be "designed" into the way of working. Create opportunities where people take time to stop and reflect on what helps and what hinders them in their daily work.
Improving your effectiveness, be it dealing with impediments or any other activity, is never done. It's always possible to improve. But don't let that stop you from taking the first step.
So, my final advice is to take the first step of your improvement journey today. Pick one thing that you feel you can do better, and improve it. Enjoy the success, celebrate it together. And then repeat :-).
About the Book Author
Ben Linders is an Independent Consultant in Agile, Lean, Quality, and Continuous Improvement. Author of four books (and writing the fifth one), creator of many Agile Coaching Tools, for example, the Agile Self-assessment Game. Ben is a well-known adviser, trainer, coach, speaker, and author; he’s much respected for sharing his experiences and helping others share theirs. His consults organizations worldwide (onsite and online), and his books and games have been translated into more than 12 languages and are used by professionals in teams and organizations all around the world.