PF#60: Complex vs. Complicated Problem Solving
Identify the type of problem before designing the approach to solve it.
Thanks for subscribing to the ProductFix newsletter. If you are getting value, my request this week is to share it with 1 person then take a short coffee/tea break.
Last week I wrote about steps for complex problem solving. This week I want to take a step back to define what a complex problem actually is and why it matters to identify problems as such.
Here is a good definition to start with.
Complex problems are messy, unstable, unpredictable, confounding and don’t come with right answers, only best attempts. These problems require new solutions created specifically for the circumstances, and you can only know that you’ve found a good one in retrospect.
Why is it important to identify complex problems and differentiate them from complicated problems? How you solve a complex problem is different than a complicated one.
So that begs the question, what is a complicated problem?
Complicated problems can be hard to solve, but they are addressable with rules and recipes, like the algorithms that place ads on your Twitter feed. They also can be resolved with systems and processes, like the hierarchical structure that most companies use to command and control employees.
This article was instigated by a problem I had to solve this weekend. I went into my based laundry room to a bit of stinky water on the floor. After some investigation I realized the problem was my ejector pump was failing to work. Sewage from my basement bathroom was not getting removed from my house.
After a bit of Youtube handyman work, I identified the root cause of my problem. Started to do my own repair before realizing I should just hire an expert. This is a complicated problem and I don’t want to waste my entire weekend running back-and-forth to the hardware store.
Complex versus Complicated Problems
As Product Leaders our days are filled with identifying, prioritizing, and solving problems. We need to apply the different tools for different classes of problem solving and have different expectations.
Once identified, complicated problems can be solved by applying the right expertise. This expertise can be learned in order to solve these problems predictably, successfully, and repeatedly.
Examples in our product lives may include:
The production service is down - an expert knows exactly how to restore it.
We need a report on usage metrics - an expert knows exactly how to create it.
A new customer needs to be on-boarded - grab the right expert and get it done.
Complex problems often have many alternative solutions that can have varying degrees of successful outcomes. In fact, the outcomes themselves may be varied. In complex problem solving literature a typical example is global warming.
However, we don’t need to be dealing with such enormous issues to face complex problems. In fact, the majority of problems that product managers need to tackle are complex ones.
What is the correct product strategy and roadmap?
Should we prioritize technical debt over immediate user value?
How do we measure user satisfaction?
When will this be delivered?
Should we commit to a prospect that we will make this change?
The fact is that, these questions do not have singularly correct answers. They are complex problems.
If we seek an expert to solve them as if they were complicated problems we will be disappointed in their lack of certainty, in how long it takes to arrive at an answer, and (potentially) the long term results that don’t match expectations.
Often businesses will hire consultants to solve complex problems but expect them to provide “the” right answer or recommendation. Most consultants and advisors are providing services to tackle complex problems. As such, it should be expected that some people will disagree with their solution.
Identifying Complex Problems.
Frequently, we take a complex problem and expect to have “the” solution identified through the application of expertise. When that clarity of solution is not apparent we get frustrated and feel like progress is not being made. This is because we are not properly identifying this as a complex problem from the start.
Once we identify a problem is complex we need to be comfortable forging ahead with all uncertainty that any solution might still carry. There is no certainty here.
How can we identify these complex problems? There are a variety of fields that have studied this issue. Here are the key traits from Joachim Funke (Encyclopedia of the Sciences of Learning, Jan 2012).
Complexity of the problem situation. A large number of variables in the problem space.
Connectivity between involved variables. Many variables impact each other.
Dynamics of the situation. The problem is evolving without intervention and intervention may bring about additional changing problem variables.
Intransparency. Missing information on the problem and goals of the solution.
Polytely. Multiple conflicting goals present.
FastCompany has provided some slightly different attributes to identify for business problems:
Complexity renders the old playbook obsolete. What used to work will no longer.
Complexity doesn’t call a timeout. Speed of decision-making, with flexibility is key.
Complexity moves at an exponential pace. Organizations need to be built to handle repeated complex problem solving as a core process.
Conclusion
My ejector pump will be fixed by Tuesday, because I have an expert coming in to deal with it. When faced with a complicated problem, get the right expert involved.
When tackling complex problems, first recognize them as such. Do not bring in an expert expecting it to be perfectly solved.
Learn to respond and set expectations for solutions that will never be perfect but only one possible best path forward based on optimizing for some of the variables.