Heuristic Evaluation and 10 Heuristics for the UX - Part 3
Tags: ux, technicalwriting, technicalwriter
Published: 2020-09-06 12:40:23

In the previous blog, we had discussed [Processes in the UX](https://dev.to/adhistac/user-experience-ux-part-2-processes-in-ux-19mo). In this blog, we will dive deeper into *Heuristic Evaluation* and *Neilson's Heuristic*.

Let's get started:

## Heuristic Evaluation

In *Heuristic Evaluation*, the usability experts compare your website's interface against the widely approved usability principles. Heuristic Evaluation assists in obtaining inexpensive feedbacks early in the design process. This feedback can be incorporated with other usability testing methods. However, it is arduous to find a trained usability expert and can be expensive. 

## Neilsen's Heuristics

The following lists the ten heuristics refined by Nielsen and defined by himself with Rolf Molich in 1990. They are:

1. **Visibility of the system status**
The status of the system must be visible to all the users. For example, *Copying 10 items to Drive G:* in the progress bar or *Windows is shutting down*.

2. **Match between system and the real world**
The system should speak the user's language and follow real-world conventions. The information should be kept natural and logical. For example, *Error 123* can be rewritten as *Error while fetching the data*.

3. **User Control and Freedom**
Your system should support *undo*, *redo*, and most importantly *emergency exit* without allowing a user to go through an extended dialogue.

4. **Consistency and Standard**
Consistency in the word, icon, functions while you transit from one to page to another within a website. 

5. **Error Prevention**
Prevention of an error before it occurs is the key. Otherwise, discard an error-prone situation or present users with a confirmation action, whether they want to proceed or not?

6. **Recognition rather than recall** 
The user should not have to recall the information from one dialogue to another. Also, make the instructions easily retrievable and visible wherever appropriate.

7. **Flexibility and efficiency of use**
It focuses on giving users ways to speed up their work. For example, MAC OS gives privilege to its users to create a custom keyboard and shortcut commands. Another way to increase the efficiency of a user can be to give easy access to its functionalities. For instance, to make an online payment the recent transaction can be made available.

8. **Aesthetic and minimalist design**
Dialogue should not contain irrelevant information. *Development Community* is a great example of this heuristic. It is essentially like a blank page with *Write a new post*, *Edit*, and *Preview* options on the top when you start writing.

9. **Help users recognize, diagnose, and recover from errors**
An error message should be expressed in plain language with a necessary solution. If you have entered an incorrect username, then a dialogue with *Please enter your correct username* should pop up, or the font color for the *username* should turn red with the message *Incorrect username*. Also, the *username recovery* options should be prominent.

10. **Help and documentation**
Finally, required or supportive documents and FAQ (Frequently Asked Question) section should be updated.


In the upcoming blog, we will dive deeper into *Usability Testing*.

Happy writing :)