Design principle: Error & Forgiveness

The importance of preventing errors and forgiving them

Making errors is an integral part of the way we humans live. We trip over when we are learning to walk and we press the wrong buttons when we use new UI. This fact is very unlikely to change soon.

As Designers, we must have that in mind when designing. Our designs must be aimed at preventing errors happening. Design must minimize the negative impact of errors when they occur and provide a way to reverse them if possible.

“We trip over when we are learning to walk and we press the wrong buttons when we use new UI.”

Let’s take a look at some of the main error categories that we need to pay attention to, when designing.

Slips, Lapses and Mistakes

Slips happen when you walk on ice. 🙂 In other words, when people perform an action and the result is not what was intended due to misstep.

A good example, are typos when texting on my phone and I’ve tapped the wrong letter because my fingers are chubby. Or, when I try to handle Instagram with one hand and want to reach the far corner action icon suddenly the base of my thumb presses the home icon.

Lapses are a brief failure of concentration, memory or judgment. In a world, where the average person has short attention span lapses are frequent type of errors. Most of the cases they happen due to distraction either in the user interface or in the environment the user is using our product. Other times is just due to the passage of time.

An example of a lapse could be the failure to pay automatically my membership subscription because the system didn’t notify me that my credit card has expired. It could have sent me an email to input my new card but it didn’t. Now, it’s my fault for not remembering it!

Mistakes occur when the user has incorrect knowledge or an incorrect assessment of a situation. This develops a mental model that leads to an error most of the cases. People are goal orientated and if the system/app does not provide them with correct information/guidance they do mistakes. Usually, that leads to trial and error approach. Unfortunately also to not so good user experience.

For example, I’ve been tweaking my profile settings for 10 minutes. When I am finally done, I click on my profile to check out the changes only to find out that they were not saved and everything is lost. 10 minutes of my life lost forever!
“But slight mistakes accumulate, and grow to gross errors if unchecked.”
So let’s see what can we do to design in a way that prevents such mismatches between the people’s expectations and our products.

Prevention and forgiveness (Ctr+Z)

Our designs must help people avoid errors and protect them from harm if errors occur. Here are a few strategies to achieve that.

Affordances and constraints

“Our designs must help people avoid errors and protect them from harm if errors occur.”

Image source

Use the knowledge your users have of other products and designs to establish a baseline for your design. That’s why it’s a good idea to use already established usability patterns. Buttons should clearly communicate that they are buttons, doors should clearly indicate if you need to pull or push and etc.

Avoid assuming that your user knows how to use your product, user test it! Save the user from inputting incorrect information or clicking the wrong button. Design UI that communicates clearly what the purpose is and provides guidance for the user to complete her/his task.

Previews for a glimpse of the future

Nike shoe configurator with preview of how the show looks

“Use the knowledge your users have of other products and designs to establish a baseline for your design.”

Allow users to compare where they are going before they make the final decision. Enabling the user to preview the changes that will occur is a powerful technique to prevent unexpected results.

For example, applying effects in Photoshop provides a preview option so the settings can be adjusted before the effect is applied.

Alarms and checklists

UI image by Michael Hutchinson

“Allow users to compare where they are going before they make the final decision.”

To deal with short attention spans and lapses use clever alarms and checklists. Setting a reminder/alarm at the right time to inform the user that an action is required can provide your users with great UX and save them from errors.

Whenever possible, save the user from the trouble of keeping information in their short-term memory. Use task lists or checklists to eliminate the condition of remembering all the tasks that need to be done.

“Enabling the user to preview the changes that will occur is a powerful technique to prevent unexpected results.”

Remember, people use products in the real world which is full of distractions, especially valid for mobile apps. Make sure to design with the usage context in mind.

Confirmations and warnings

Sometimes, people don’t realize the red button they’re about to press means that everything goes to hell. Ask for confirmation in cases where making a choice can lead to a mistake or harmful result.

1hW-F01He-0PsqkERmkHMoA

Confirmation window asking you if you really want to leave the page without saving your settings is a must if you don’t have auto save!

“Save the user from the trouble of keeping information in their short-term memory.”

Use alerts when something is about to go wrong. Make sure the warning is clear and communicates useful and actionable information.

Forgiveness

The power to undo is tremendous! Whenever possible design the product to forgive mistakes and allow the user to reverse any actions that led to them.

Whenever possible create a safety net. Version control, parachute systems and archive of the deleted folders in your cloud storage, all of these can be lifesavers (literally in some cases).

Final thoughts

Designs that account for errors and are designed to be forgiving provide security and stability. Users are happy when they feel secure and safe. They can explore and use our designs without worrying or feeling dumb that they do all these errors.

Users enjoy using forgiving products and once they’ve experienced forgiving design they don’t settle for designs that don’t offer that.

This post was originally published on Antons’s Medium profile.

UX Designer creating for trust at @Trustpilot. Finding happiness in improving things. Find me on Twitter and LinkedIn

Related Posts

I recently worked on defining the spacing system for Practice Fusion’s EHR (Electronic Health Record) product, to ensure improved readability and consistency across all pages. I came up with 3 spacing rules (hint: rule of 3 C’s) and 4 spacing values, which worked harmoniously well with the new typographic system. The problem “When positioning elements vertically, the designer has to… Read More →

A selection of prototypes, photos, and learnings from Design Club at a special CoderDojo We recently joined CoderDojo London to deliver two days of workshops for 7–17 year-olds. We were hosted by UCL at Base KX, near Kings Cross. There were tables dotted about, offering coding activities. There were computers everywhere. Except on our table. We we were unplugged. Okay,… Read More →

“Dashboard”, “Big Data”, “Data visualization”, “Analytics” — there’s been an explosion of people and companies looking to do interesting things with their data. I’ve been lucky to work on dozens of data-heavy interfaces throughout my career and I wanted to share some thoughts on how to arrive at a distinct and meaningful product. Many people have already tackled this topic,… Read More →