User-centred design principles elaborated
The following principles are more general than the previous ten (10), and apply more widely to all kinds of interactive system (e.g. software applications or touch-screen systems) not just websites.
- Anticipation - a system should attempt to anticipate the user's wants and needs
- Autonomy - a system should be experienced by the user as unbounded but finite, allowing them to feel neither confined nor exposed.
- Use status mechanisms to keep users aware and informed
- Keep status information up to date and within easy view
- Colour blindness - a system should not rely wholly on colour (change) to convey information
- Consistency - a system should (above all else) be consistent with user expectation, i.e. the mental model that the user has in the mind about how the system works (see conceptual modelling)
- Defaults - a system should allow its default settings to be changed
- Efficiency of the user - the efficiency of a person using a system is more important than the efficiency of the system itself. Keep the user occupied. Let the machine do the hard, boring grunt work
- Explorable interfaces - a system should mimic the safety, smoothness, and consistency of the natural landscape. Don't trap users into a single path through a service, but do offer them a line of least resistance.
- Offer users stable perceptual cues for a sense of "home"
- Be forgiving of mistakes
- Make actions reversible
- Always allow "undo"
- Always allow a way out
- However, make it easier to stay in
- Fitts' Law - the interface of a system should be designed so as to be sensitive to the implications of Fitts' Law
- Human interface objects - the interface of a system should be constructed from "human" objects that are understandable, self-consistent, stable and can be readily perceived
- Latency reduction - a system should be designed so as to reduce a user's experience of latency (i.e. the delay between initiating an action and seeing a result) at all times
- Learnability - a system should be designed so that its learning curve is as flat and shallow as possible for all categories of user
- Metaphors - a system should be designed so that metaphors will enable users to instantly grasp the details of the designer's conceptual model
- Protect users' work - a system should be designed so that users never lose work as a result of error on their part, the vagaries of Internet transmission, or any other reason other than the completely unavoidable, such as sudden loss of power to the client computer
- Readability - a system should be designed so that contrast and size contribute positively to legibility
- Track state - a system should be designed such that it has a memory of where and what a user was doing at any given time
- Visible navigation - a system should be designed to maximise a user's confidence in their ability to move naturally and easily about the system
|