What are the 10 usability heuristics for user interface design?
A heuristic evaluation is an inspection used to understand usability issues in the user interface (UI) of a computer’s software. Jakob Nielsen, one of the pioneers in the field of human-computer interaction and usability testing, laid out ten general guidelines for interface design.
1. Visibility of system status
The system should always keep users informed about what is going on through appropriate feedback within a reasonable time-frame. Feedback can be audio or visual; the ‘swoosh’ sound when a tweet is sent on Twitter or how you can see the progress of a video upload on YouTube are two examples.
2. Match between the system and the real world
The system should speak the user’s language using words, phrases, and concepts familiar to the user. It should follow the same conventions that target users follow in the real world (e.g., deleting an item will send it to the trash bin in the same way that we throw trash into a trash bin in real life).
3. User control and freedom
This principle gives the user the freedom to navigate through an application and perform actions as they wish. It also includes the freedom to undo any accidental actions. An example of this is in any modern email application when the “Undo” message is shown after an email is deleted.
4. Consistency and standards
The application should be consistent throughout and stick to the standards established for the app. For example, the color scheme of buttons should remain the same throughout to ensure that the user does not get confused when navigating through an application.
5. Error prevention
In addition to notifying the user of an error, errors should be prevented from happening. An example of this is when online forms do not proceed unless you enter your phone number in the correct format.
6. Recognition rather than recall
Minimize the user’s memory load by making objects, actions, and options visible. The user should not need to heavily rely on their memory to navigate the UI. An example of this is a search engine that gives you recommendations based on what you’ve already searched.
7. Flexibility and efficiency of use
The interface should be flexible enough to switch between advanced users and novice users. An example of this is when operating systems allow you to perform actions with and without keyboard shortcuts.
8. Aesthetic and minimalist design
The interface should only contain information that is necessary and relevant. Each screen should contain focused elements. The best example of this is Google’s home page.
9. Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language, precisely indicate the problem, and constructively suggest a solution.
10. Help and documentation
Although an ideal system should be able to be used without any documentation, the option for additional assistance must be provided. An example would be the FAQ section on a university’s admission web-page.
Free Resources