Human-Computer Interaction

Sachintha Dilshan
15 min readDec 27, 2020

--

Design rules for interactive systems

The most abstract design rules are general principles, which can be applied to the design of an interactive system in order to promote its usability.

The principles we present are first divided into three main categories:

  • Learnability — the ease with which new users can begin effective interaction and achieve maximal performance.
  • Flexibility — the multiplicity of ways in which the user and system exchange information.
  • Robustness — the level of support provided to the user in determining successful achievement and assessment of goals.

Learnability

Learnability concerns the features of the interactive system that allow novice users to understand how to use it initially and then how to attain a maximal level of performance.

Summary of principles affecting learnability,

  • Predictability — Support for the user to determine the effect of future action based on past interaction history.
  • Synthesizability — Support for the user to assess the effect of past operations on the current state.
  • 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 behavior arising from similar situations or similar task objectives.

Flexibility

Flexibility refers to the multiplicity of ways in which the end-user and the system exchange information. We identify several principles that contribute to the flexibility of interaction.

  • Dialog initiative — Allowing the user freedom from artificial constraints on the input dialog imposed by the system.
  • Multi-threading — Ability of the system to support user interaction pertaining to more than one task at a time.
  • Task MiG ratability — The ability to pass a control for the execution of a given task so that it becomes either internalized by the user or the system or shared between them.
  • Substitutivity — Allowing equivalent values of input and output to be arbitrarily substituted for each other.
  • Customizability — Modifiability of the user interface by the user or the system.

Robustness

In a work or task domain, a user is engaged with a computer in order to achieve some set of goals. The robustness of that interaction covers features that support the successful achievement and assessment of the goals. Here, we describe principles that support robustness.

  • Observability — Ability of the user to evaluate the internal state of the system from its perceivable representation.
  • Recoverability — Ability of the user to take corrective action once an error has been recognized.
  • Responsiveness — How the user perceives the rate of communication with the system.
  • Task conformance — The degree to which the system services support all of the tasks the user wishes to perform and, in the way, that the user understands them.

Standards and Guideline for Interactive systems

  • Standards

Standards for interactive system design are usually set by national or international bodies to ensure compliance with a set of design rules by a large community. Standards can apply specifically to either the hardware or the software used to build the interactive system. One component of the ISO standard 9241, pertaining to usability specification, applies equally to both hardware and software design. At the beginning of that document, the following definition of usability is given:

Usability — The effectiveness, efficiency, and satisfaction with which specified users achieve specified goals in particular environments.

Effectiveness — The accuracy and completeness with which specified users can achieve specified goals in particular environments.

Efficiency — The resources expended in relation to the accuracy and completeness of goals achieved.

Satisfaction — The comfort and acceptability of the work system to its users and other people affected by its use. The importance of such a definition in the standard is as a means of describing explicit measurements for usability. Such metrics can support usability engineering.

  • Guideline

We have observed that the incompleteness of theories underlying the design of interactive software makes it difficult to produce authoritative and specific standards. As a result, the majority of design rules for interactive systems are suggestive and more general guidelines. The guidelines can also be automated to some extent, providing a direct means for translating detailed design specifications into actual implementation.

Schneiderman’s 8 Golden Rules

Schneiderman’s eight golden rules provide a convenient and succinct summary of the key principles of interface design. They are intended to be used during design but can also be applied, like Nielsen’s heuristics, to the evaluation of systems. Notice how they relate to the abstract principles discussed earlier.

  1. Strive for consistency in action sequences, layout, terminology, command use, and so on.
  2. Enable frequent users to use shortcuts, such as abbreviations, special key sequences, and macros, to perform regular, familiar actions more quickly.
  3. Offer informative feedback for every user action, at a level appropriate to the magnitude of the action.
  4. Design dialogs to yield closure so that the user knows when they have completed a task.
  5. Offer error prevention and simple error handling so that, ideally, users are prevented from making mistakes and, if they do, they are offered clear and informative instructions to enable them to recover.
  6. Permit easy reversal of actions in order to relieve anxiety and encourage exploration, since the user knows that he can always return to the previous state.
  7. Support internal locus of control so that the user is in control of the system, which responded to his actions.
  8. Reduce short-term memory load by keeping displays simple, consolidating multiple-page displays, and providing time for learning action sequences. These rules provide a useful shorthand for the more detailed sets of principles described earlier. Like those principles, they are not applicable to every eventuality and need to be interpreted for each new situation. However, they are broadly useful, and their application will only help most design projects.

Norman’s 7 Principles

  1. Use both pieces of knowledge in the world and knowledge in the head. People work better when the knowledge they need to do a task is available externally — either explicitly or through the constraints imposed by the environment. But experts also need to be able to internalize regular tasks to increase their efficiency. So, systems should provide the necessary knowledge within the environment and their operation should be transparent to support the user in building an appropriate mental model of what is going on.
  2. Simplify the structure of tasks. Tasks need to be simple in order to avoid complex problem solving and excessive memory load. There are a number of ways to simplify the structure of tasks. One is to provide mental aids to help the user keep track of stages in a more complex task. Another is to use technology to provide the user with more information about the task and better feedback. A third approach is to automate the task or part of it, as long as this does not detract from the user’s experience. The final approach to simplification is to change the nature of the task so that it becomes something simpler. In all of this, it is important not to take control away from the user.
  3. Make things visible: bridge the gulfs of execution and evaluation. The interface should make clear what the system can do and how this is achieved and should enable the user to see clearly the effect of their actions on the system.
  4. Get the mappings right. User intentions should map clearly onto system controls. User actions should map clearly onto system events. So, it should be clear what does what and by how much. Controls, sliders, and dials should reflect the task — so a small movement has a small effect and a large movement a large effect.
  5. Exploit the power of constraints, both natural and artificial. Constraints are things in the world that make it impossible to do anything but the correct action in the correct way. A simple example is a jigsaw puzzle, where the pieces only fit together in one way. Here the physical constraints of the design guide the user to complete the task.
  6. Design for error. To err is human, so anticipate the errors the user could make and design recovery into the system.
  7. When all else fails, standardize. If there are no natural mappings, then arbitrary mappings should be standardized so that users only have to learn them once. It is this standardization principle that enables drivers to get into a new car and drive it with very little difficulty — key controls are standardized. Occasionally one might switch on the indicator lights instead of the windscreen wipers, but the critical controls (accelerator, brake, clutch, steering) are always the same.

Norman’s seven principles provide a useful summary of his user-centered design philosophy, but the reader is encouraged to read the complete text of The Design of Everyday Things to gain the full picture.

Evaluation techniques for interactive systems

What is the evaluation?

Evaluation should not be thought of as a single phase in the design process. Ideally, evaluation should occur throughout the design life cycle, with the results of the evaluation feeding back into modifications to the design. Clearly, it is not usually possible to perform extensive experimental testing continuously throughout the design, but analytic and informal techniques can and should be used.

Goals of evaluation

  • Assess the extent of system functionality

The design of the system should enable users to perform their intended tasks more easily.

This includes not only making the appropriate functionality available within the system but making it clearly reachable by the user in terms of the actions that the user needs to take to perform the task.

Involves matching the use of the system to the user’s expectations of the task.

  • Assess the effect of interface on the user

Important to assess the user’s experience of the interaction and its impact upon the user.

Includes considering aspects such as how easy the system is to learn, its usability, and the user’s satisfaction with it.

May also include his enjoyment and emotional response, particularly in the case of systems that are aimed at leisure or entertainment.

  • Identify specific problems

May be aspects of the design which, when used in their intended context, cause unexpected results, or confusion amongst users.

Related to both the functionality and usability of the design.

Evaluation through expert analysis

evaluation should occur throughout the design process. In particular, the first evaluation of a system should ideally be performed before any implementation work has started. If the design itself can be evaluated, expensive mistakes can be avoided, since the design can be altered prior to any major resource commitments.

  • Cognitive walkthrough

The cognitive walkthrough was originally proposed and later revised by Polson and colleagues as an attempt to introduce psychological theory into the informal and subjective walkthrough technique. The origin of the cognitive walkthrough approach to evaluation is the code walkthrough familiar in software engineering. Walkthroughs require a detailed review of a sequence of actions.

  • Heuristic evaluation

A heuristic is a guideline or general principle or rule of thumb that can guide a design decision or be used to critique a decision that has already been made. Heuristic evaluation, developed by Jakob Nielsen and Rolf Molich, is a method for structuring the critique of a system using a set of relatively simple and general heuristics. Heuristic evaluation can be performed on a design specification, so it is useful for evaluating early design. But it can also be used on prototypes, storyboards and fully functioning systems. It is therefore a flexible, relatively cheap approach. Hence it is often considered a discount usability technique.

  • Model-based evaluation

A third expert-based approach is the use of models. Certain cognitive and design models provide a means of combining design specification and evaluation into the same framework. For example, the GOMS (goals, operators, methods, and selection) model predicts user performance with a particular interface and can be used to filter particular design options. Similarly, lower-level modeling techniques such as the keystroke-level model provide predictions of the time users will take to perform low-level physical tasks. Design methodologies, such as design rationale, also have a role to play in evaluation at the design stage. Design rationale provides a framework in which design options can be evaluated. By examining the criteria that are associated with each option in the design, and the evidence that is provided to support these criteria, informed judgments can be made in the design.

Evaluation through user participation

User participation in evaluation tends to occur in the later stages of development when there is at least a working prototype of the system in place. This may range from a simulation of the system’s interactive capabilities, without its underlying functionality.

  • Styles of evaluation

Before we consider some of the techniques that are available for evaluation with users, we will distinguish between two distinct evaluation styles: those performed under laboratory conditions and those conducted in the work environment or ‘in the field’.

Laboratory studies — In the first type of evaluation studies, users are taken out of their normal work environment to take part in controlled tests, often in a specialist usability laboratory. (although the ‘lab’ may simply be a quiet room). This approach has a number of benefits and disadvantages.

Field studies — The second type of evaluation takes the designer or evaluator out into the user’s work environment in order to observe the system in action. Again, this approach has its pros and cons.

  • Empirical methods: experimental evaluation

One of the most powerful methods of evaluating a design or an aspect of a design is to use a controlled experiment. This provides empirical evidence to support a particular claim or hypothesis. It can be used to study a wide range of different issues at different levels of detail. Any experiment has the same basic form. The evaluator chooses a hypothesis to test, which can be determined by measuring some attribute of participant behavior. A number of experimental conditions are considered which differ only in the values of certain controlled variables. Any changes in the behavioral measures are attributed to the different conditions.

  • Observational techniques

A popular way to gather information about the actual use of a system is to observe users interacting with it. Usually, they are asked to complete a set of predetermined tasks, although, if the observation is being carried out in their place of work, they may be observed going about their normal duties. The evaluator watches and records the users’ actions (using a variety of techniques — see below). Simple observation is seldom sufficient to determine how well the system meets the users’ requirements since it does not always give insight into their decision processes or attitude.

  • Query techniques

Another set of evaluation technique relies on asking the user about the interface directly. Query techniques can be useful in eliciting detail of the user’s view of a system. They embody the philosophy that states that the best way to find out how a system meets user requirements is to ‘ask the user’. They can be used in the evaluation and more widely to collect information about user requirements and tasks. The advantage of such methods is that they get the user’s viewpoint directly and may reveal issues that have not been considered by the designer. In addition, they are relatively simple and cheap to administer. However, the information gained is necessarily subjective and maybe a ‘rationalized’ account of events rather than a wholly accurate one.

Evaluation through monitoring physiological responses

One of the problems with most evaluation techniques is that we are reliant on observation and the users telling us what they are doing and how they are feeling. What if we were able to measure these things directly? Interest has grown recently in the use of what is sometimes called objective usability testing, ways of monitoring physiological aspects of computer use. Potentially this will allow us not only to see more clearly exactly what users do when they interact with computers but also to measure how they feel. The two areas receiving the most attention to date are eye-tracking and physiological measurement.

Universal Design for Interactive Systems

Universal design is the process of designing products so that they can be used by as many people as possible in as many situations as possible. In this case, this means particularly designing interactive systems that are usable by anyone, with any range of abilities, using any technology platform. This can be achieved by designing systems either to have built-in redundancy or to be compatible with assistive technologies. An example of the former might be an interface that has both visual and audio access to commands; an example of the latter, a website that provides text alternatives for graphics, so that it can be read using a screen reader.

Universal Design Principles

We have defined universal design as ‘the process of designing products so that they can be used by as many people as possible in as many situations as possible’.

In the late 1990s, a group at North Carolina State University in the USA proposed seven general principles of universal design. These were intended to cover all areas of design and are equally applicable to the design of interactive systems. These principles give us a framework in which to develop universal designs.

Principle one is equitable use: the design is useful to people with a range of abilities and appealing to all. No user is excluded or stigmatized.

Principle two is flexibility in use: the design allows for a range of ability and preference, through the choice of methods of use and adaptivity to the user’s pace, precision, and custom.

Principle three is that the system is simple and intuitive to use, regardless of the knowledge, experience, language, or level of concentration of the user. The design needs to support the user’s expectations and accommodate different language and literacy skills.

Principle four is perceptible information: the design should provide effective communication of information regardless of the environmental conditions or the user’s abilities. The redundancy of presentation is important: information should be represented in different forms or modes (e.g. graphic, verbal, text, touch).

Principle five is tolerance for error: minimizing the impact and damage caused by mistakes or unintended behavior. Potentially dangerous situations should be removed or made it hard to reach. Potential hazards should be shielded by warnings.

Principle six is low physical effort: systems should be designed to be comfortable to use, minimizing physical effort and fatigue. The physical design of the system should allow the user to maintain a natural posture with reasonable operating effort. Repetitive or sustained actions should be avoided.

Principle seven requires size and space for approach and use: the placement of the system should be such that it can be reached and used by any user regardless of body size, posture, or mobility. Important elements should be on the line of sight for both seated and standing users.

These seven principles give us a good starting point in considering universal design. They are not all equally applicable to all situations, of course.

Multi-modal interaction

Providing access to information through more than one mode of interaction is an important principle of universal design. Such design relies on multi-modal interaction.

  • Sound in interface

Sound is an important contributor to usability. There is experimental evidence to suggest that the addition of audio confirmation of modes, in the form of changes in keyclicks, reduces errors. Sound can convey transient information and does not take up screen space, making it potentially useful for mobile applications.

However, in spite of this, the auditory channel is comparatively little used in standard interfaces, and where it is used it is often peripheral to the interaction. Information provision is predominantly visual. There is a danger that this will overload the visual channel, demanding that the user attend to too many things at once and select appropriate information from a mass of detail in the display.

  • Touch in the interface

Touch is the only sense that can be used to both send and receive information. Although it is not yet widely used in interacting with computers, there is a significant research effort in this area and commercial applications are becoming available.

The use of touch in the interface is known as haptic interaction. Haptics is a generic term relating to touch, but it can be roughly divided into two areas: cutaneous perception, which is concerned with tactile sensations through the skin; and kinesthetics, which is the perception of movement and position. Both are useful in interaction, but they require different technologies.

  • Handwriting recognition

Like speech, we consider handwriting to be a very natural form of communication. The idea of being able to interpret handwritten input is very appealing, and handwriting appears to offer both textual and graphical input using the same tools. There are problems associated with the use of handwriting as an input medium, however, and in this section, we shall consider these. We will first look at the mechanisms for capturing handwritten information and then look at the problems of interpreting it.

  • Gesture recognition

The gesture is a component of human-computer interaction that has become the subject of attention in multi-modal systems. Being able to control the computer with certain movements of the hand would be advantageous in many situations where there is no possibility of typing, or when other senses are fully occupied. It could also support communication for people who have hearing loss if signing could be ‘translated’ into speech or vice versa.

The Media Room at MIT uses a different approach in order to incorporate gestures into the interaction. The Media Room has one wall that acts as a large screen, with smaller touchscreens on either side of the user, who sits in a central chair. The user can navigate through information using the touchscreens, or joystick, or voice. Gestures are incorporated by using a position-sensing cube attached to a wristband worn by the user.

Designing Interfaces for diversity

Interfaces are usually designed to cater to the ‘average’ user, but unfortunately, this may exclude people who are not ‘average’. people are diverse and there are many factors that must be taken into account if we are to come close to universal design.

  • Designing for users with disabilities It is estimated that at least 10% of the population of every country has a disability that will affect interaction with computers. Employers and manufacturers of computing equipment have not only a moral responsibility to provide accessible products, but often also a legal responsibility. In many countries, legislation now demands that the workplace must be designed to be accessible or at least adaptable to all — the design of software and hardware should not unnecessarily restrict the job prospects of people with disabilities.
  • Designing for different age groups There are other areas of diversity that impact the way we design interfaces. One of these is age. In particular, older people and children have specific needs when it comes to interactive technology.
  • Designing for cultural differences The final area of diversity we will consider is cultural differences. Cultural difference is often used synonymously with national differences, but this is too simplistic. Whilst there are clearly important national cultural differences. Clearly, while all of these contribute to a person’s cultural identity, they will not all always be relevant in the design of a given system. However, we can draw out some key factors that we need to consider carefully if we are to practice universal design. These include language, cultural symbols, gestures, and the use of color.

--

--