The following 10 tried-and-true usability “rules of thumb” originate from Jakob Nielsen’s Ten Usability Heuristics and have been adapted here for websites and web applications.
We have also borrowed two thoughtful rules from Hiser (11 and 12) and adapted one from the World Wide Web Consortium Web Accessibility Initiative (W3C WAI – 13).
1. Keep users informed about what’s going on
The website should always keep users informed about what is going on, through appropriate feedback within reasonable time.
2. Organise information as in real world and speak the user’s language
The website should speak the users’ language, with words, phrases and concepts familiar to the user and avoid any industry specific jargon and technical terms. Follow real-world conventions and display information in a natural and logical order.
3. Respect user control and freedom
Users often navigate to sections of the website by mistake and need a clearly marked “emergency exit” to return to previous location or the home page.
In a web application allow users to leave any unwanted state without having to go through an extended dialogue e.g. avoid compulsory multi-page forms. Web applications should also support undo and redo.
4. Be consistent and follow web standards
Users should not have to wonder whether different words, situations, or actions mean the same thing. Be consistent in labelling and terminology. Follow web conventions and standards by applying design patterns.
5. Prevent errors
Careful design that prevents a problem from occurring in the first place is even better than good error messages. Eliminate error-prone situations as much as possible or at a minimum present users with a confirmation option before they commit to an action that can result in error.
6. Minimise user’s memory and cognitive load
Minimise the user’s memory load by making information objects, actions, and options clearly visible. The user should not have to remember information from one part of workflow to another. Instructions for use of the website should be visible in the context of use, or at least easily retrievable whenever appropriate. The application should perform all calculations on behalf of the user.
7. Design for flexibility and efficiency of use
Design the web application to cater for both inexperienced and experienced users. Accelerators, unseen by the novice user, can speed up the interaction for the expert user. Allow users to tailor frequent actions where appropriate.
8. Apply aesthetic and appropriate visual design
Web application screens should not contain irrelevant or rarely needed information. Every extra unit of information in a workflow competes with the relevant units of information and diminishes their relative visibility.
Apply visual design that is aesthetically pleasing but also appropriate to the website or web application and its users.
9. Help users recognise and recover from errors
Express error messages in plain language, indicate the problem precisely, and suggest a constructive solution. Better yet, prevent the error from occurring in the first place by using defensive design techniques.
10. Provide help
Most of the time the web application will be used without any documentation but sometimes 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.
11. Provide constant feedback
Design your website or application to provide visual clues and feedback when the user interacts with it.
12. Help users make informed decisions
Help users make informed decisions on next steps by providing clear navigation. Design for a good mapping between user’s task and the application and create a feeling of progress and achievement.
13. Design for accessibility
Follow accessibility guidelines to make you website accessible to a wide range of people with disabilities. This will also make your website more usable to users in general.
14. Cultivate your website
Online services are living, breathing entities that are never completed. Launching your website is only the starting point so ensure you have a maintenance plan and budget in place. Make the most of your investment by promoting your website using search engines, listings and campaigns.
Make sure your marketing goals and messages on the website are clear.
Update 14 July 2009: For good examples of Jakob Nielsen’s Ten Usability Heuristics please read Theresa Neil’s 6 Tips for a Great Flex UX: Part 5.