Jakob Nielsen's heuristics are probably the most-used usability heuristics for user interface design. Nielsen developed the heuristics based on work together with Rolf Molich in 1990. Although the final set of heuristics was released in 1994, they grab so fundamental issues that they are still used today unchanged. Its persistence is one of the main reasons that it is the most recommended heuristic system at the moment.

#1: Visibility of system status

Problem:

The user has no idea what is going on at the system.

Solution:

An interface with appropriate feedback is required which informs the user within a reasonable time.

#2: Match between system and the real world

Problem:

The user doesn’t seem to understand the content of the website, because it’s presented in system-oriented terms.

Solution:

The content should be presented in familiar concepts for the user, with real-world conversations and in a natural and logical order.

#3: User control and freedom

Problem:

The user made a mistake, but can’t seem to find a way out of this unwanted state, so the process got really complicated and slowed down.

Solution:

We have to make sure that there are more possibilities and so-called “emergency-exits” implemented in the process.

#4: Consistency and standards

Problem:

The user is confused because the platform is full of inconsistent elements and actions.

Solution:

The platform should be designed in an easily understandable way, following “platform conventions”.

#5: Error prevention

Problem:

The user ran into some kind error on the site and got a message about it.

Solution:

Prevent the problems instead: eliminate error-prone conditions or provide a confirmation option to the users before they commit to the action.

#6: Recognition rather than recall

Problem:

The user’s got too much information to deal with and has to make huge efforts to remember everything on the site.

Solution:

Make most objects, actions, and options visible and easily retrievable whenever appropriate.

#7: Flexibility and efficiency of use

Problem:

The system is not designed for every kind of user. It is either more compatible with experienced or with inexperienced users. 

Solution:

The speed of the interactions can be speeded up by accelerators that make frequent actions more flexible.

#8: Aesthetic and minimalist design

Problem:

A lot of unnecessary information is displayed on the platform, and the user has a hard time to distinguish the most important ones. 

Solution:

We should provide only relevant information for the users in order to make them less confused and help them to find exactly what they are looking for as fast as possible.

#9: Help users recognize, diagnose, and recover from errors

Problem:

The user ran into an error message which has too complicated information and it is too hard to understand.

Solution:

The language of an error message should be as simple as possible so the user recognizes the problem immediately, and it should also suggest a solution to the problem.

#10: Help and documentation

Problem:

The user needs help with a specific task, but it is too hard to look it up on the site.

Solution:

We have to make a seamless and easy to use search function which contains all the information that the users could need about the site.