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.
The website should always keep users informed about what is going on, through appropriate feedback within reasonable time.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Design your website or application to provide visual clues and feedback when the user interacts with it.
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.
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.
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.