1 of 31

Developed by Tim Bell

Department of Computer Science and Software Engineering

University of Canterbury

tim.bell@canterbury.ac.nz

Human Computer Interaction

An introduction to HCI Heuristics for NZQA achievement standard AS91371 (2.44)

Licensed under a Creative Commons Attribution-Noncommercial-ShareAlike 3.0 License

HCI for level 2 Computer Science

2 of 31

References

  • Usability Engineering (Jakob Nielson)

  • Designing with the mind in mind (Johnson)

HCI for level 2 Computer Science

3 of 31

HCI perspective on a system

User

Device

interface

System

HCI for level 2 Computer Science

4 of 31

Are users dummies?

HCI for level 2 Computer Science

5 of 31

Human-computer interaction, usability

HCI for level 2 Computer Science

6 of 31

Heuristics (Nielson)

HCI for level 2 Computer Science

7 of 31

Examples illustrating heuristics

HCI for level 2 Computer Science

8 of 31

Visibility of system status

  • The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.

HCI for level 2 Computer Science

9 of 31

Feedback – reasonable time

  • 1/10 second: instant
  • 1 second: interactive
  • 10 seconds: need an indicator

HCI for level 2 Computer Science

10 of 31

Match between system and 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.

HCI for level 2 Computer Science

11 of 31

Match between system and real world

HCI for level 2 Computer Science

12 of 31

Match between system and real world

HCI for level 2 Computer Science

13 of 31

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.

HCI for level 2 Computer Science

14 of 31

User control and freedom

HCI for level 2 Computer Science

15 of 31

User control and freedom

HCI for level 2 Computer Science

16 of 31

Consistency and standards

  • Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.

HCI for level 2 Computer Science

17 of 31

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.

HCI for level 2 Computer Science

18 of 31

Error prevention

HCI for level 2 Computer Science

19 of 31

Error prevention

HCI for level 2 Computer Science

20 of 31

Error prevention

HCI for level 2 Computer Science

21 of 31

Combinations of issues

  • Error prevention
  • Match between system and real world
  • Consistency

HCI for level 2 Computer Science

22 of 31

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.

HCI for level 2 Computer Science

23 of 31

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.

HCI for level 2 Computer Science

24 of 31

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

HCI for level 2 Computer Science

25 of 31

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.

HCI for level 2 Computer Science

26 of 31

Help users recognize, diagnose, and recover from errors

HCI for level 2 Computer Science

27 of 31

Help users recognize, diagnose, and recover from errors

HCI for level 2 Computer Science

28 of 31

Help users recognize, diagnose, and recover from errors

HCI for level 2 Computer Science

29 of 31

Help users recognize, diagnose, and recover from errors

HCI for level 2 Computer Science

30 of 31

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.

HCI for level 2 Computer Science

31 of 31

Help and documentation

HCI for level 2 Computer Science