Abstract and general,
or specific and authoritative.
Design rules are rules a designer follows to increase the usability of a system. They differ along two axes - level of abstraction/generality and level of authority - and this lecture places principles, guidelines and standards on those axes before giving you the three rule sets everyone quotes.
LEARNING OUTCOMES
- Distinguish principles, guidelines and standards by abstraction and authority.
- Describe Dix et al.'s three usability principles and their sub-principles.
- State Nielsen's 10 usability heuristics.
- State Shneiderman's 8 golden rules.
- State Norman's 7 principles and apply them to increase usability.
Three kinds of design rule
Design rules (or usability rules) are rules a designer can follow in order to increase the usability of the system or product. They differ on level of abstraction/generality and level of authority.
| Rule type | Abstraction / generality | Authority | Example |
|---|---|---|---|
| Principles | Abstract, high generality. Widely applicable and enduring. | Low authority. | "The interface should be easy to navigate." - Dix et al.'s usability principles. |
| Guidelines | Narrowly focused. Can be too specific, incomplete and hard to apply. | More general and lower authority than standards. | "Use colour to highlight links." - Smith and Mosier's Guidelines for User Interface Software (MITRE Corporation, 1986). |
| Standards | Very specific. | High authority. Set by national or international bodies. | "Use colour RGB #1010D0 on home links." - ISO 9241 Ergonomic Requirements for Office Work with Visual Display Terminals; British Standards Institution; ISO. |
- Guidelines can guide or advise on how to achieve a principle - they sit between the two.
- Design rules should be used early in the lifecycle, during design - though they can also be used to evaluate the usability of a system.
- Heuristics or golden rules provide a succinct summary of the essential characteristics of good design: Nielsen's heuristics, Shneiderman's golden rules and Norman's principles.
As you go principle → guideline → standard, generality falls and authority rises. A principle applies everywhere and forces nothing; a standard applies narrowly and forces everything.
Learnability - and its five sub-principles
Learnability: the ease with which new users can begin effective interaction and achieve maximal performance.
Predictability
Support for the user to determine the effect of future action based on past interaction history. Can I tell what will happen based on what I have gone through in the past?
Synthesizability
Support for the user to assess the effect of past operations on the current state. Can I tell why I am here based on what I have gone through in the past?
Familiarity
The extent to which a user's knowledge and experience in other real-world or computer-based domains can be applied when interacting with a new system.
Generalizability
Support for the user to extend knowledge of specific interaction within and across applications to other similar situations.
Consistency
Likeness in input-output behaviour arising from similar situations or similar task objectives - size, layout, colour, language and so on.
Both look at past interaction history. Predictability looks forward - what will happen next. Synthesizability looks backward - why am I here now. The lecture gives you the two questions verbatim; memorise them as a pair, not separately.
Learnability = P-S-F-G-C: Predictability, Synthesizability, Familiarity, Generalizability, Consistency. "Please Say Familiar Generic Commands".
Flexibility - and its five sub-principles
Flexibility: the multiplicity of ways the user and system exchange information.
Dialogue initiative
User freedom from artificial constraints on the input dialog imposed by the system. Who has the initiative in the dialog - the user or the system?
Multithreading
The ability of the system to support user interaction for more than one task at a time.
Task migratability
The ability to transfer control for the execution of tasks between the system and the user - spell-checking is the lecture's example, since it can be done by the user, by the system, or by both.
Substitutivity
The extent to which an application allows equivalent input and output values to be substituted for each other: input values such as fractions or decimals; output values such as digital and analog; and output that can be reused as input.
Customizability
The ability of the user or the system to modify the user interface. Adaptability is user-initiated modification; adaptivity is system-initiated modification.
Flexibility = D-M-T-S-C: Dialogue initiative, Multithreading, Task migratability, Substitutivity, Customizability. And for the last one: adaptABILITY = user does it; adaptIVITY = system does it. The word with -ability is the one the person has.
Robustness - and its four sub-principles
Robustness: the level of support provided to the user in determining successful achievement and assessment of goal-directed behaviour.
Observability
The extent to which the user can evaluate the internal state of the system from the representation on the user interface.
Recoverability
The extent to which the user can reach the intended goal after recognizing an error in the previous interaction.
Responsiveness
A measure of the rate of communication between the user and the system.
Task conformance
The extent to which the system services support all the tasks the user would wish to perform, and in the way the user would wish to perform them.
Observability is the gulf of evaluation solved. Recoverability is Shneiderman's "permit easy reversal of actions" and Nielsen's "user control and freedom". Task conformance is the usability goal good utility restated - does the right functionality exist at all, and in the right shape?
Robustness = O-R-R-T: Observability, Recoverability, Responsiveness, Task conformance. Two Rs in the middle: one is about errors, the other about speed.
Jakob Nielsen's 10 usability heuristics
The most quoted list in HCI. Each heuristic below carries the lecture's own wording, because that is what the exam marks against.
| # | Heuristic | What it requires |
|---|---|---|
| 1 | Visibility of system status | Always keep users informed about what is going on, through appropriate feedback within reasonable time. |
| 2 | Match between system and the real world | Speak the users' language with familiar words, phrases and concepts rather than system-oriented terms; follow real-world conventions so information appears in a natural and logical order. |
| 3 | User control and freedom | Users often choose functions by mistake and need a clearly marked emergency exit to leave the unwanted state without an extended dialogue. Support undo and redo. |
| 4 | Consistency and standards | Users should not have to wonder whether different words, situations or actions mean the same thing. Follow platform conventions. |
| 5 | Error prevention | Even better than good error messages is a careful design which prevents a problem from occurring in the first place. |
| 6 | Recognition rather than recall | Make objects, actions and options visible. The user should not have to remember information from one part of the dialogue to another; instructions should be visible or easily retrievable. |
| 7 | Flexibility and efficiency of use | Accelerators - unseen by the novice - speed up interaction for the expert, so the system caters to both. Allow users to tailor frequent actions. |
| 8 | Aesthetic and minimalist design | Dialogues should not contain irrelevant or rarely needed information. Every extra unit competes with the relevant units and diminishes their relative visibility. |
| 9 | Help users recognize, diagnose and recover from errors | Error messages in plain language, no codes, precisely indicating the problem and constructively suggesting a solution. |
| 10 | Help and documentation | Better if the system can be used without documentation, but where provided it should be easy to search, focused on the user's task, list concrete steps, and not be too large. |
Group the ten into four themes and the list becomes four items: Tell me (1 status, 9 errors, 10 help), Speak my language (2 real world, 4 consistency), Let me out (3 control, 5 prevention), Don't make me work (6 recognition, 7 flexibility, 8 minimalism).
Ben Shneiderman's 8 golden rules
Eight rules, several of which deliberately overlap Nielsen - which is itself an exam point.
| # | Golden rule | What it requires |
|---|---|---|
| 1 | Strive for consistency | In layout, terminology, command usage and so on. |
| 2 | Cater for universal usability | Recognize the requirements of diverse users and technology - add features for novices such as explanations, and support experts with shortcuts. |
| 3 | Offer informative feedback | For every user action, offer relevant feedback and information; keep the user appropriately informed. |
| 4 | Design dialogs to yield closure | Help the user know when they have completed a task. |
| 5 | Offer error prevention and simple error handling | Prevention plus clear and informative guidance to recovery - error management. |
| 6 | Permit easy reversal of actions | To relieve anxiety and encourage exploration, because the user knows they can always go back to previous states. |
| 7 | Support internal locus of control | Make the user feel that they are in control of the system, which responds to their instructions and commands. |
| 8 | Reduce short-term memory load | Make menus and UI elements visible and easily available or retrievable. |
Consistency, error prevention and memory load appear in both Nielsen and Shneiderman. What is unique to Shneiderman is design dialogs to yield closure and support internal locus of control. If a question asks which rule set a statement comes from, look for those two first.
C-U-F-C-E-R-L-M: Consistency, Universal usability, Feedback, Closure, Error handling, Reversal, Locus of control, Memory load. The two in the middle - Closure and Locus of control - are the Shneiderman fingerprints.
Donald Norman's 7 principles
The shortest list, and the one that ties directly back to Lectures 1 and 2.
- 1. Use both knowledge in the world and knowledge in the headDo not force everything into memory, and do not force everything onto the screen.
- 2. Simplify the structure of tasksReduce what the user must plan and hold in mind.
- 3. Make things visible: bridge the gulfs of execution and evaluationDirectly the Lecture 2 framework, restated as a design rule.
- 4. Get the mappings rightThe connector-and-icon example from Lecture 1.
- 5. Exploit the power of constraints, both natural and artificialPhysical shape and greyed-out options both prevent wrong actions.
- 6. Design for errorAssume errors will occur and make them recoverable.
- 7. When all else fails, standardizeIf no natural mapping exists, impose a convention and keep it.
Norman's principle 3 is the gulfs framework from Lecture 2, and principles 4 and 5 are mapping and constraints from Lecture 1. This deck is deliberately a consolidation, so questions can legitimately cross lecture boundaries.
Norman's seven end on a shrug - "when all else fails, standardize" - which makes number 7 the easiest to recall and a useful anchor for counting backwards to check you have all seven.
Mistakes students usually make
Each claim below is the wrong answer; the line beneath it is the correction, in the wording this course marks against.
Shortest correct answers
The night-before table: every term in this lecture with the smallest answer that still earns the mark.
| Concept | Shortest correct answer |
|---|---|
| Design rules | Rules a designer follows to increase usability; differ by abstraction/generality and authority. |
| Principles | Abstract, high generality, low authority, widely applicable and enduring. |
| Guidelines | Narrowly focused advice on how to achieve a principle; lower authority than standards. |
| Standards | Very specific and high in authority; set by bodies such as BSI and ISO (e.g. ISO 9241). |
| Learnability | Ease with which new users begin effective interaction and achieve maximal performance. |
| Learnability sub-principles | Predictability, synthesizability, familiarity, generalizability, consistency. |
| Flexibility | The multiplicity of ways the user and system exchange information. |
| Flexibility sub-principles | Dialogue initiative, multithreading, task migratability, substitutivity, customizability. |
| Robustness | Level of support in determining successful achievement and assessment of goal-directed behaviour. |
| Robustness sub-principles | Observability, recoverability, responsiveness, task conformance. |
| Adaptability vs adaptivity | User-initiated vs system-initiated interface modification. |
| Nielsen's 10 | Status, real-world match, control and freedom, consistency and standards, error prevention, recognition over recall, flexibility and efficiency, aesthetic and minimalist, help with errors, help and documentation. |
| Shneiderman's 8 | Consistency, universal usability, informative feedback, closure, error prevention and handling, easy reversal, internal locus of control, reduced short-term memory load. |
| Norman's 7 | Knowledge in world and head, simplify tasks, make things visible, get mappings right, exploit constraints, design for error, standardize. |
Exam-style application
Write your own answer first, then open the model answer. These are the longer-form questions this material generates.
Evaluate an online banking transfer screen against four of Nielsen's heuristics, naming a concrete failure and fix for each.
Take Dix's robustness and use its four sub-principles to specify requirements for a self-checkout machine.
A junior designer says "we follow Nielsen, so we don't need standards." Respond using this lecture's framework.
Check yourself
6 questions. Every option is explained after submitting, including why the wrong ones are wrong.