Learning Usability Heuristic Principles
July 19, 2019
Jakob Nielsen's 10 general principles for interaction design. They are called "heuristics" because they are broad rules of thumb and not specific usability guidelines.
1. Visibility of the system status
The website or application must always keep the user informed of what is happening and provide an answer in the shortest possible time.
2. Relationship between the system and the real world
The website or application must use the user's language with familiar words and expresions (a.k.a. Natural Language). The information must appear in a logical and natural order.
3. User control and freedom
In case of choosing an option of the website or app by mistake, the user must have an "emergency exit" to leave the unwanted state in witch it is. In other words, you must be able to undo any action.
4. Error prevention
Even better than good error messages is a careful design which prevents a problem 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.
5. Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.
6. Consistency and standards
Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.
7. Recognition rather than recall
Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.
8. Flexibility and efficiency of use
Accelerators or keyboard shortcuts (unseen by the novice user) may often speed up the interaction for the expert user so that the app can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.
9. Aesthetic and minimalist design
Pages should not contain unnecesary information. Every extra unit of information in a screen competes with the relevant information and decreases their visibility.
10. Help and Documentation
Even though it is better if the system can be used without documentation, it may be necessary to provide some help and documentation. In this case, information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.