Jacob Nielson & Don Norman are leaders in User Experience & Usability design and testing. Their website is Nielson Norman Group and it explains the heuristics or 'rules of thumb' for good design.
Do I know what the system is doing?
Do I know why I have to wait?
Is the process running in the background or foreground?
Do I know how much longer I will have to wait for a result?
Do I know how far along the process is?
Can I see how many steps are left in a process I am working on?
Do I know what is coming next?
Does the UI use terms based on users’ language for the task?
Are meaningful icons and/or abbreviations used?
Does information appear in a natural order?
Does the order that information is accessed match user expectations?
Are users offered easy ways out of as many situations as possible?
Are there clearly marked ‘emergency exits’ for users to leave unwanted situations without having to go through several stages?
Support for undo and redo, e.g. Ctrl-Z & Ctrl-Y
Cancel button (for dialogue boxes waiting for user input)
Universal undo (can go back to the previous state)
Interrupt (especially for lengthy operations), e.g. Home button, “ESC” key
Quit (for leaving the program at any time)
Defaults (for restoring a previous state)
When thinking about, designing for or analysing for consistency, ask yourself, is the product consistent:
Within itself?
With earlier versions of the product?
In its use of metaphors?
With people's expectations?
List the standards you can identify in the UI.
What makes them consistent?
Try to describe why?
Do dialogue boxes pop up to ask for confirmation of interactions which have an impact, like deleting?
Does it prevent the user from choosing interactions that are wrong in a certain situation, e.g. by greying out?
Does the UI prevent choices that could be wrong for the user task (e.g. dates in the past, double booking or purchasing...)
Does the website's menu help you find the destination for your task easily?
Does the website provide clear hints to choose appropriate functions?
Does the UI help you remember the steps of your tasks, and your progress within the task?
Does the UI use standard elements that make it easy to find your way?
Can a user speed up tasks with shortcut functions?
Can an advanced user skip elements to speed up a task?
Does the user interface use predictive text or search?
Does the user interface show recently used functionality or files for quick access?
Does the website use brief, clear language?
Is the layout uncluttered and does it use white space?
Does it use icons where possible?
Do all elements have a purpose on the page or in the dialogue?
Does the website use a simple colour scheme?
Are error messages constructive?
Are error messages consistent in grammar, form, terminology, and abbreviations?
Do error messages blame the system, or the user?
Do error messages inform on the severity of the error?
Do error messages indicate actions users need to take to correct the error?
Does the system guide users to the place where the error occurred?
Can the user consult more extensive documentation?
Is a help function always available, on each screen?
Do functions and fields have specific help content?
Is the help function easily searchable?
Is the help content aligned to the user tasks, e.g. by using verbs?