Uploaded by Monalissa Chikumo

Heuristics and usability principles

advertisement
Heuristics and usability principles:
A heuristic evaluation is a usability inspection method for computer software that helps to identify
usability problems in the user interface (UI) design. It specifically involves evaluators examining the
interface and judging its compliance with recognized usability principles (the "heuristics").
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.The final set of
heuristics that are still used today were released by Nielsen in 1994. Also known as ''Usability
Heuristics'.
Usability principles are:•
•
•
•
Similar to design principles, except more prescriptive
Used mainly as the basis for evaluating existing systems or prototypes
Provide a framework for heuristic evaluation. They are also called heuristics when
used as part of an evaluation.
The common usability principles
The ten main usability principles developed by Nielsen and his colleagues (2001) are:
Visibility of system status
Match between the system and the real world
User control and freedom
Consistency and standards
Help users recognize, diagnose, and recover from errors
Error prevention
Recognition rather than recall
Flexibility and efficiency of use
Aesthetic and minimalist design
Help and documentation
1. Visibility of system status
The system should always keep users informed about current state and actions through
appropriate visual cues and feedback within reasonable time.
Gmail loading a user’s mailbox. Tells the user to wait & Indicates the status of what’s going on.
This principle states that the user should know what’s going on inside the system. We need to give a
feedback of his/her action within a reasonable time. This feedback is normally associated with points
of action and can be provided using a colour change, loader, time-left graphics, etc.
2. Match between system and the real world
The system should speak the users' language, with words, phrases and concepts familiar to
the user, rather than system-oriented terms. Follow real-world conventions, making
information appear in a natural and logical order.
iBooks iPad application using the metaphor of wooden book shelf.
Using real life metaphor in computer application.
3. User control and freedom
Users often choose system functions by mistake and will need a clearly marked "emergency
exit" to leave the unwanted state without having to go through an extended dialogue. Support
undo and redo.
This principle talks about giving the user the freedom to navigate and perform actions. The freedom
to undo any accidental actions. This principle can be best illustrated by the Gmail’s flash message
with undo action when we accidentally delete an email.
Mozilla suggesting some security tips and handling exception.
History in Photoshop helps user in recovering previous steps.
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.
How many times did your outlook remind you that there is no attachment in the email while
you mentioned that something is attached? Outlook intuitively scans the email for such
keywords and alerts the user before sending. This is Error Prevention.
Below is an example of Google Search trying to correct my spelling:
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.
Errors are inadvertent in the user journey. A check needs to be made if those errors are being
explained to the user in understandable language. In the below example, I have entered a fictitious
username and password and the error message I got is either the username or the password is
incorrect. Here we are not informing the user if the username is invalid or if the password is wrong.
6. Consistency and standards
Users should not have to wonder whether different words, situations, or actions mean the
same thing. Follow platform conventions.
A Submit button in one page should look the same across the site on any page. If we show the data
in a particular table format on one page, it should look the same the next time data is being shown
in tabular format. If the header is displayed in a certain way on the public pages, it should be the
same when he/she logs in.
Inconsistent Icons.
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.
It’s always better to suggest the user a set of options than to let him remember and type the
whole thing. The goal is to minimize the application of user memory.
Below is an example of Quora suggesting possible questions based on what I am trying to
type.
One more example is when Quora lets you pick the topics of interest from a list of options
rather than asking you to type all of them which would have been disastrous.
Another example from Google:-
8. Flexibility and efficiency of use
Accelerators --unseen by the novice user --may often speed up the interaction for the expert
user such that the system can cater to both inexperienced and experienced users. Allow users
to tailor frequent actions.
The Interface should be flexible transforming itself between a novice user and an advanced
user. One frequents this option while installing a new software that asks if the user wants to
go ahead with default installation or custom installation. An advanced user chooses a custom
installation to cut out the unnecessary services.
Auto-fills
9. Aesthetic and minimalist design
Dialogues should not contain information which is irrelevant or rarely needed. Every extra
unit of information in a dialogue competes with the relevant units of information and
diminishes their relative visibility.
Prioritization comes to play when this aspect is being considered. For the designer or the
developer, all the information that’s being presented on the page is relevant. The product
manager needs to ask the end user if it is so. Is every information displayed on interface
necessary and useful?
Google has been resisting the temptation to show more information on their search page for
years. This is could be shown as the example of the best possible minimalist design.
Google: Nothing More and Nothing Less.
Interfaces need to be cleared of unnecessary elements and content that do not support the
page goals and tasks. Apple provides only the basic information of feature hiding additional
information under “Learn More”. Check the same product on a retail website to understand
the importance of clutter-free experience.
10. Help and Documentation
Even though it is better if the system can be used without documentation, it may be necessary
to provide help and documentation. Any such information should be easy to search, focused
on the user's task, list concrete steps to be carried out, and not be too large.
A great user interface lets the user navigate through it’s features without any documentation or
training. But if there is any user who could not make it out, adequate help should be provided within
the product.
Below is an example of GoDaddy’s Help page. While there is a search field, there are main
categories and frequently asked queries on the same page.
See another example below:-
Contextual help is the best way to help !
Also, telling users about the consequences of their actions is also very helpful.
Download