How to Effectively Address the Usability Debt Within Your Product

A structure for getting your organization aligned on making usability improvements that matter

Many companies fall into a dreaded pattern of continuing to ship new features without going back and iterating upon things that were previously shipped based on research and insights. As a result, both big and small usability issues continue to pile up and it becomes difficult to address them. Beyond the process and product development strategy reasons why this can happen, 0ne reason why usability issues aren’t always addressed is that it’s difficult to see the real impact of each usability issue in isolation. Even if you thoroughly keep track of each problem in a project management tool such as Jira, Asana, Trello, etc., these issues can easily get lost and difficult to prioritize. Without a visible burning problem in front of your team, it’s easy to cast aside these issues as something you’ll come back to “when you have time.”

As designers, we deeply understand how usability issues compound into a degraded user experience that can have a big impact on our products’ and customers’ ability to be successful. It’s important for us to come up with a way of organizing and communicating usability issues to our team in a way that helps articulate this impact and that leads to actually getting them addressed.

What You Need in Order to Address Usability Debt

At SalesforceIQ, we initiated an effort to address the “usability debt” that our products had accumulated over time. In order to do this effectively, we identified that we needed the following:

A shared language for discussing usability issues across the product

Defined methods for finding and gathering usability issues

A structure for organizing and classifying the issues

A method for prioritizing usability improvements and getting them into work streams

Ways to meaningfully measure the impact of usability improvements

1. Define a Shared Language for Discussing Usability Issues

Usability issues are often initially discussed in terms of very specific changes necessary within a product’s UI. However, sometimes the real problems exist at a higher level than what might be initially visible to the team. The following structure has made it easier to map individual issues back to the higher level task and goal that they support so that we can make sure we’re addressing the core of the problem:

User Goals: What the user is ultimately trying to accomplish in their lives, which may be outside of the product itself. Goals are identified by conducting high-level user research and developing personas. They’re used as inputs to identify opportunities to optimize tasks or introduce new features. Example: Achieve my personal quota for call volume.

What the user is ultimately trying to accomplish in their lives, which may be outside of the product itself. Goals are identified by conducting high-level user research and developing personas. They’re used as inputs to identify opportunities to optimize tasks or introduce new features. Example: Achieve my personal quota for call volume. Tasks: High-level flows the user does in the product to achieve their goals. Tasks are identified by watching users use the product or through task-oriented usability testing. They’re used to identify entire flows or workflows that can be improved. Example: Update contact information.

High-level flows the user does in the product to achieve their goals. Tasks are identified by watching users use the product or through task-oriented usability testing. They’re used to identify entire flows or workflows that can be improved. Example: Update contact information. Problems: The issues the user is having while they attempt to complete their task. Problems are identified by conducting either qualitative or quantitative research. They’re used to identify what issues are preventing a user from completing a task. Example: I can’t figure out which phone number is the one that I should contact first.

The issues the user is having while they attempt to complete their task. Problems are identified by conducting either qualitative or quantitative research. They’re used to identify what issues are preventing a user from completing a task. Example: I can’t figure out which phone number is the one that I should contact first. Usability Improvements: The solutions to user problems that will make it easier for the user to complete a task. Improvements are determined by the product, design, content, and development teams and often validated through research. They’re used to create tasks for the team to work on that will solve a problem (or at least make it better). Example: More clearly visually differentiate primary phone numbers from secondary phone numbers.

Using consistent terminology to discuss these concepts helps the team get aligned on where the problem exists. One benefit of this structure is you will start to identify multiple tasks related to a single goal, multiple problems for each major task, and multiple potential solutions to a problem. You may also identify a suggested usability improvement that may end up solving multiple problems. This hierarchy allows you to start to see how solving multiple problems can significantly improve the broader task the user is trying to do and goal that the user is trying to achieve. Otherwise, you risk addressing a lot of usability issues in isolation that may not have a measurable impact.

2. Find and Gather Usability Issues

In order to start addressing your product’s usability issues, you need to be able to keep track of them and see them in one place. These issues may come from a variety of sources, including (but not limited to):

Direct conversations with your customers

Usability testing

Product feedback channels such as email, UserVoice, Get Satisfaction, etc.

Heuristic evaluations

Internal team feedback

Put each issue into a centralized repository that will allow you to track and manage the issues. The simplest version of this is likely a spreadsheet, but you can also use a wide variety of project management tools. The goal is to reduce friction to getting the issues in one place, so aim for the simplest solution until you need something more complicated. In some cases you may have an issue reported in the form of a problem, and in other cases it may come in as a requested feature or improvement (a proposed solution to a problem). Keep track of both, so that you can ultimately investigate the core of the problem and how it relates to a broader user task and goal.

3. Organize and Classify the Usability Issues

Each usability issue should be tracked along with metadata that helps give context to the issue and makes it easier to slice and dice the data.