How to identify problems worth solving for your software product
Over the course of my product career, I’ve heard all about effective (and ineffective) product strategies when trying to bring a new software product to market.
Over the course of reading probably hundreds of books and testing out even more strategies on products of my own, I’ve learned quite a bit about what I’ve seen work (and what hasn’t).
A concept we’ve developed at NxtStep, which is something we are regularly striving for with our clients, is identifying something we call problems worth solving.
To learn more about why you want to start with problems, read our article on Lean Startup for Nonprofits.
For the rest of this article, we’re going to do a deep dive on this topic and why it should be an intense focus for you and your organization.
Don’t build solutions to problems that don’t exist
One of the most important reasons why we focus so intensely on identifying what we call problems worth solving is because it can you from falling into one of the biggest pitfalls that dooms a majority of failed software products. To put it rather simply, we don’t build solutions for problems that don’t exist.
Instead, we start with problems because that’s where people are searching for solutions which is essentially what our is expected to become. If we don’t identify a problem worth solving before we build our product then there’s a good chance your product won’t be successful.
Why am I so convinced? Well, I’ve made this mistake myself. My first software startup was a failed product largely because I built a solution to a problem that didn’t exist. So after all the time, effort and money (ouch), I unfortunately couldn’t get people to pay for that version of my product.
So let’s make sure that doesn’t happen to you, shall we?
How do we define a ‘problem worth solving’?
OK we know we need to start with problems and that we shouldn’t build solutions to problems that don’t exist – got it. But what exactly is a problem worth solving?
I like to define a problem worth solving as follows…
A problem that causes a direct negative impact on the lives of our clients or customers for which a solution exists that does not adequately solve the problem.
More on the rest of this terminology in the following sections, but I wanted to define the concept early so you can fill in the gaps along the way.
Next, let’s talk about the procedure we follow to discover problems worth solving.
Customer discovery overview
In our article on the Lean Startup for the Nonprofit World we referenced a concept called customer discovery. Customer discovery is a process of conducting qualitative research (interviews) with your customers or clients to better understand their needs and challenges related to a particular topic.
Also mentioned in that article is my favorite book on the topic written by Steve Blank called The 4 Steps to the Epiphany. I highly recommend that you get yourself a copy of this book.
The customer discovery process is the way you are going to identify problems worth solving. You need to interview your clients to understand everything about them and their problems. This is where the value lies to move the process of building a valuable product forward.
The bottom line is you need to get in front of clients and interview as many of them as you need to so you can get the data that will help you identify the top problem worth solving.
As you begin to conduct customer discovery, you may be wondering how you organize the data you collect and prioritize that list to focus on the top problems. Great question, that’s what we’re going to talk about next.
Buckets & Marbles
Working on as many products as I have (hundreds at this point), I’ve developed a construct that I feel provides a great visual for understanding how we want to organize the data we collect during the customer discovery process. I call this visual the buckets & marbles construct.
As you can see in this visual we have rather obviously some buckets and some marbles. In this diagram the buckets represent unique problems experienced by your clients and the marbles are a unique instance of that same problem.
So as you are conducting customer discovery, we will be creating a new bucket everytime we hear about a unique problem worth solving and everytime we hear about that problem again from another client we will place a marble in that same bucket.
Overtime, we will have a varying degree of buckets of different weights, giving us the ability to sort our problems worth solving by priority so we’ll know which ones are the top problems worth solving.
Following me so far? Good. If not, email me at sean@nxtstep.io and I will walk you through everything here (not just this example).
OK so far so good, but how do we know when we need to create a bucket and when to place a new marble in that bucket? I’m glad you asked.
The 5 qualifying questions
To better understand when we need to create buckets and drop marbles into buckets, I’ll refer you to a list of questions we’ve developed over years of performing customer discovery and user research.
What problems are you experiencing in this area?
The first question we ask rather obviously is an effort to identify problems our clients are experiencing. However, just because they mention one doesn’t mean it is a problem worth solving. That will only be the case if we get the appropriate response to all of these questions listed here.
How are you solving that problem today?
The second question is an effort to identify what we refer to as an existing solution. More background on that later, but the gist is that an existing solution is how our client may be trying to solve that problem today. This is an important distinction to make because if our client feels like they have this problem, but aren’t trying anything to solve it, then for our sake we aren’t going to consider this a problem worth solving and so it is eliminated from contention.
How well does that solution work?
If our client has a problem and they are attempting to solve it with a particular solution the next most valuable information we can learn is how well the solution works. If the solution they have works really well, then their motivation to use a different solution (our potential future product) will likely be low. However, if the solution they have today doesn’t work very well then we may have a significant opportunity to improve upon this solution with our future product.
What is the impact that problem causes?
Even if we have identified a problem for which our client is attempting a solution and that solution doesn’t work well, there is still more information to be learned before we get excited and jump into the solution design phase. What we want to know now is what is the impact of this problem for our client? How does NOT having a great solution for that problem impact them? Does it cost them time, money or both? The greater the impact, the greater the potential for us to generate value for our clients by building a solution to this problem in the form of our future product.
How motivated are you to solve this problem?
If you’ve made it this far with any given problem you are nearly there. The last piece of information we’d like to know before we officially stamp this problem as a problem worth solving is how motivated they are to solve this problem. If we’ve done a good job getting quality data about this problem, chances are their motivation will be high. However, there are always roadblocks to progress when building a potential future product so we still want to be conservative in our approach because guessing wrong here leads to expensive mistakes.
At this point, ask questions about their level of motivation to solve this problem. It will give you even more context around this potential problem and how important it is to focus on solving this one.
Now that you’re armed with most of the process and the questions to use to identify problems worth solving, let’s dive into some other concepts a little deeper to strengthen your knowledge of the most important ones.
Existing solutions
I promised to go into existing solutions in greater detail and we’re going to do that in this section because it’s a very important concept. You see, even if you identify what appears to be a great problem worth solving, it still shouldn’t fully qualify unless your client is already trying to solve it. This is because we need to better understand their motivation.
Most people are not motivated to do something new. It takes quite a lot to motivate people even when it comes to leveraging a solution to one of their problems. For example, people that want to get into better shape have options like managing their diet and exercising, but how many people actually develop a routine with either?
You see, behavior change is really what we are after and your potential future product is going to require this to be successful. That is why it is SO important to better understand IF your clients are attempting something now. For example, it will be much easier for me to help someone get on a diet and exercise routine that actually produces the results they want if they are already attempting to do one or both.
Pro tip: What have you googled?
Obviously you are following along with this process because you are interested in potentially building a future software product to help scale social impact and solve problems for your clients or nonprofit organization and while I want you to be conservative when it comes to building that product before you have done this research, there are still things you can do now that will help you speed up progress later.
For example, when you’re talking about problems and existing solutions with your clients, ask them what they’ve googled to find a solution to their problem. This is in an effort to verify two things, 1 – are they actually searching for solutions and 2 – what did they think to search for to try and find a solution. This data is powerful because it verifies if they are actually searching for a solution and if they are, it provides you with some early marketing data to get a better idea about how you can reach more clients based on what they are searching for. Neat right?
Eliminating problems
Before we go too far, I want to help provide you with an appropriate mindset with which to enter this customer discovery process in an effort to uncover problems worth solving.
First, I want you to be rather aggressive at attempting to eliminate problems from consideration. There are tons of problems out there worth solving and your resources need to be preserved until we find not just the right problem worth solving, but a combination of other variables that will lead to the recipe you need to achieve success for your product.
Try to maintain a singular focus when you do start to uncover problems worth solving. Remember the buckets & marbles tool. That will help you sort your problems worth solving by priority because not all problems are created equal. The heavier the bucket (more marbles) the higher the priority in solving that problem.
So make sure that if the problem you are researching with a client doesn’t pass through the 5 questions process in comprehensive fashion that it is eliminated from contention and does not become a marble. If you don’t follow this strategy correctly, you can set yourself up for failure by potentially attempting to build a solution to a problem that doesn’t exist.
Remember, people aren’t always the most reliable source for identifying their top problems. That’s where your expertise leveraging these strategies comes into play. That is your job, not theirs.
Focusing on the top problem that is also the easiest to solve
In the previous section I made reference to other variables related to the eventual success of your potential future product. One of those variables is related to future phases in this process, namely solution design. The solution design phase is next and it will cover important topics such as, how easy or difficult is it to solve that problem?
So once you have a prioritized list of problems worth solving, you’ll want to evaluate the list by hypothesizing what it may take to solve each of these problems. This will help us better select the appropriate problem worth solving for the first version of your product or MVP.
As a guide you should ensure that the problem you choose to solve should provide the biggest opportunity to drive impact to the community AND be able to be solved in as straightforward and simple a way as possible. This is critical, because as you move forward in this process it will be important to give yourself every possible opportunity to build forward momentum.
Think of it this way, the hardest part of moving a train is getting it moving in the right direction, but once the train is moving, it’s actually harder to stop then it is to simply keep it moving.
An example of the results this process can produce
As I’ve mentioned before, I’ve done countless discovery sprints and research projects in this area of helping our nonprofit clients identify their top client problems worth solving. For more detail on an example of how we’ve done this and what the results look like, check out our case study for one of our nonprofit clients in Compass Working Capital.
Hire help when you need it
This process should excite you about the possibilities for your nonprofit organization. If you would like help completing any step of this process and having the strategic guidance on your team to make sure it runs smoothly, book a call with us at NxtStep to learn more about how we can help scale the impact of your nonprofit organization through software.