„Design is not just what it looks like and feels like.
The design is how it works.”
In this article, I would like to focus on an important issue that accompanies application development – usability.
The usability of digital products has a key impact on their market success. In order for our product to stand out from the competition, we must respond to the user’s needs.
It is defined as a measurement of efficiency, effectiveness, and user satisfaction with which a given product can be used in a given context.
Jakob Nielsen (named „king of usability”) defined usability as a set of 5 elements:
With these in mind, I would like to take a closer look at the set of 10 principles of interaction design also defined by Jakob Nielsen.
These rules, called Nielsen’s Heuristics, are a kind of checklist for UX/UI designers. Thanks to the guidelines it contains, designers are able to identify usability problems of digital product interfaces, making them more accessible and user-friendly.
The topic may seem enigmatic at first, so I will present a brief overview of the decalogue based on specific examples.
“The design should always keep users informed about what is going on, through appropriate feedback within a reasonable amount of time.”
Users should know where they are in the application and how they got there. Giving immediate feedback on actions should be provided on an ongoing basis. Animations, micro-interactions, notifications, or text messages with instructions can be of assistance.
Predictable interactions build trust in both the product and the brand.
Make it clear when loading is occurring. Showing the bar indicator, more commonly known as the progress bar that communicates something is happening, is the best example.
“The design should speak the users’ language. Use words, phrases, and concepts familiar to the user, rather than internal jargon. Follow real-world conventions, making information appear in a natural and logical order.”
Interaction with the user is the key to the success of the product. In the simplest sense, it all comes down to avoiding unnecessary complexity: use simple terminology and easy solutions, so that the person using the product does not feel confused.
Interactions should feel natural, and information should be presented in a logical way, using familiar conventions.
This point also includes intuitiveness and a visual representation of tools and functions. When a design’s controls follow real-world conventions and correspond to desired outcomes, it’s easier for users to learn and remember how the interface works. This helps to build an experience that feels intuitive.
“Users often perform actions by mistake. They need a clearly marked “emergency exit” to leave the unwanted action without having to go through an extended process.”
Users should feel in control when interacting with the interface. The system must be flexible. Solutions should not be imposed on the user and it should not be difficult for them to achieve their goals.
Provide users with a sense of freedom and control when using your product, let them easily give up a task, go back a step and undo changes they have made to the system.
“Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform and industry conventions.”
Users are accustomed to commonly used patterns – stick to them. Follow the same convention throughout the product.
This way, users won’t have to worry about what to do or what the pictures and words mean.
Such standards include the so-called design patterns. They are proven solutions to common problems appearing in the development of digital products.
The best-known systems of this type are Google Material Design, Apple Human Interface Guidelines, and Microsoft Fluent Design System. They contain specific standards that help maintain the consistency of systems. Users have expectations as to how certain functionalities should work, they formulate them based on previously encountered conventions.
“Good error messages are important, but the best designs carefully prevent problems from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.”
The application should display various types of queries accompanying the actions, e.g., during deletion, a confirmation request should appear.
“Minimize the user’s memory load by making elements, actions, and options visible. The user should not have to remember information from one part of the interface to another. Information required to use the design (e.g. field labels or menu items) should be visible or easily retrievable when needed.”
Users going through a specific process while using the application should not have to remember information from each step – let’s give the user a choice.
An example is the search functions which give you suggestions for search terms to choose from. It is easier to quickly select the desired option than to try to recall it from memory.
“Shortcuts — hidden from novice users — may speed up the interaction for the expert user such that the design can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.”
Your solution will be used by novices and regular users. Take care of the first ones (properly guide them through the whole process so that they do not feel lost) and the more familiar ones (include the possibility of “shortcuts” – provide accelerators such as keyboard shortcuts or touch gestures.).
“Interfaces should not contain information which is irrelevant or rarely needed. Every extra unit of information in an interface competes with the relevant units of information and diminishes their relative visibility.”
Clear the background – you will highlight the content.
Each element and information contained in the interface should serve a specific purpose. The interface should not be overloaded with elements.
A good example of what not to do is using background images with text placed over them. They have a negative impact on readability and distract the user’s attention from the elements on which they should focus.
“Error messages should be expressed in plain language (no error codes), precisely indicate the problem, and constructively suggest a solution.”
Use non-technical language so that user knows immediately what went wrong and how to fix it.
Error messages should be visible and appear in the right context. For example, if a user enters incorrect data in a form field, the error message should appear next to that field and be highlighted in various ways to draw attention.
“It’s best if the system doesn’t need any additional explanation. However, it may be necessary to provide documentation to help users understand how to complete their tasks.”
Helpful hints prevent frustration and improve the app’s user experience. Starting with the FAQ, through tutorials, to the chat or helpline.
Of course, you should ensure that these functions are properly embedded in the application interface and that they are easily accessible.
Overall, the usability decalogue is a set of guidelines designed to help create digital products that are easy to use, solve significant user issues, and provide a positive overall experience.
As you can see – Nielsen’s heuristics aren’t rocket science. Although they may seem enigmatic, it is worth knowing their wider context to be able to consciously participate in the application development process.
If you need help with designing your app, check out our Fast App Prototyping service. A team of experienced specialists will not only design but also develop your application prototype in just 2 weeks.
I hope you made it to the end! 😊
If you’d like to know more, just email me with your question.
M. Ritter, C. Winterbottom; UX for the Web
Ch. Badura, UX UI Design Optimized