10 Usability Heuristics

These ten rules of Usability testing are derived by Jakob Nielsen - one of the founders and directors of the company "Nielsen Norman Group", which dedicated to providing advice in the field of usability.  He formulated these rules in 1990, but despite this, they all still have not lost their relevance. In the original their name sounds like "Ten Usability Heuristics".

Awareness of the State of the System

User must always be aware of what is happening in the system. In this case, the inverse relationship between the user and the system should be logical and operational.

The Similarity of the System With the Real World

The system must communicate with the user in a language he understands. Using words, phrases and concepts familiar to the user in the real world is much more preferable than the use of specialized terms. This allows us to provide information in a more natural and logical form.

Freedom of Action

Users often make mistakes, so the system should always provide a clear "path of retreat", through which the user will need to make a minimum of body movements to correct his mistake. Give users the ability to cancel the action and return to the previously undone action.

Uniformity and Standards

Do not deceive your users, describing the same thing in different words and terms. Stick to the uniformity and follow the standards.

Avoiding of Mistakes

Even the best error messages will not be able to make the system as friendly as it will make well thought-out architecture that allows to prevent these errors. You should minimize the number of conditions, in which may be mistakes, but also requires the user to further confirm their actions, if he made a mistake.

In the Mind, But Not in the Memory

Do not tire your user, forcing him to remember a large number of objects, actions and options. This user does not have to keep in his mind information, moving from one part to another. Instructions of using the system should always be in sight, or at least should be easily accessible from any part of the system.

Flexibility and Efficiency

Do not load the experienced users too much information, give them the opportunity to perform repetitive actions as quick and easy as possible. At the same time you should try to hide these features from the eyes of the inexperienced user.

Aesthetic and Minimalist Design

Dialogues should not contain irrelevant or too little demand information. Each extra word makes the perception of relevant information more difficult.

Understanding the Problems and Their Solution

Error messages should be expressed in plain for the user language. It should be as close as possible to describe the problem and provide options for solving it.

Reference Material and Documentation

Even if the system can be used without documentation, in the process of working with it may still need background information. Such documents should be drafted so that it can easily be found necessary information there. In addition, reference materials must be concise and contain only a specific guide to action.