HCI — Human Computer Interaction

  • Design rules for interactive systems
  • Evaluation techniques for interactive systems
  • Universal Design for Interactive Systems

Design rules for interactive systems

  1. Principles of Learnability
  2. Principles of Flexibility 
  3. Principles of Robustness 
  4. Standards and Guideline for Interactive systems 
  5. Schneiderman’s 8 Golden Rules 
  6. Norman’s 7 Principles

1. Principles of Learnability

  • Predictability — This interactive design principle requires a user’s knowledge of interaction to be sufficient to determine the outcome of present or future interaction with the system.
  • Synthesizability — Two aspects of synthesizability are immediate honesty and eventual honesty. In general, these principles relate to the ability of the interactive system to provide the user with an observable and informative notification about the operation state changes within the system.
  • Familiarity — The familiarity principle is concerned with the ability of an interactive system to allow a user to map prior experiences, either real world or gained from inter
  • Generalizability — This interactive design principle provides support for users to extend knowledge of specific interaction within, and across applications, to new, but similar situations.
  • Consistency — To support generalizability, consistency is essential and is probably one of the most widely applied design principle in user interface design. Consistency between application is always favorable, however consistency within an application is essential.

2. Principles of Flexibility 

  • Dialog initiative — When the system controls the dialog flow, the dialog is said to be system preemptive. Conversely, when the flow is controlled by the user, the dialog is said to be user preemptive. In general a user preemptive dialog is favored although some situations require a system preemptive dialog. In reality some line between these two extremes is usually the most satisfactory solution.
  • Multi-threading — Within a user interface a thread can be considered a part of dialog that allowing a task to be performed. Multi-threading within a interface provides support for multiple tasks to be performed at one time.
  • Task migratability — Task migratability means passing responsibility of execution of tasks between user and system. A computerized spell checker is a good example to this.
  • Substitutivity — Substitutivity offers a user alternative ways of specifying input or viewing output. Indeed the distinction between output and input can be blurred.
  • Customizability — The user interface should be able to support individual preferences. For example standard control bars in MS Word can be amended as required. The Customizability principle supports a user’s ability to adjust systems settings or features to a form that best suites the preferred way of usage.

3. Principles of Robustness

  • Observability — Observability should provide users with an ability to evaluate the internal state from its representation. If a user cannot understand the internal state of the system, there is a high likelihood that the user’s confidence will be very low
  • Recoverability — Users should be able to reach a desired goal after recognition of errors in previous interaction. Error recovery can be achieved in two ways, forward (negotiation) and backward (undo).
  • Responsiveness — Responsiveness is usually measured in terms of the rate of communication between the system and a user. Response time, indicating change of states within the system, is important. Short duration or instantaneous response time is more desirable.
  • Task conformance — There are two aspects of task conformance, task completeness, and task adequacy. Task completeness is concerned with whether a system is capable of supporting the entire task that a user wishes to perform. The task adequacy is concerned with addressing the user’s understanding of these tasks It is necessary that an interactive system should allow the user to perform the desired tasks as defined during the task analysis.

4. Standards and Guideline for Interactive systems

  1. Data Entry
  2. Data Display
  3. Sequence Control
  4. User Guidance
  5. Data Transmission
  6. Data Protection

5. Schneiderman’s 8 Golden Rules 

  • Strive for consistency — Consistent sequences of actions should be required in similar situations; identical terminology should be used in prompts, menus, and help screens; and consistent commands should be employed throughout.
  • Enable frequent users to use shortcuts — As the frequency of use increases, so do the user’s desires to reduce the number of interactions and to increase the pace of interaction. Abbreviations, function keys, hidden commands, and macro facilities are very helpful to an expert user.
  • Offer informative feedback — For every operator action, there should be some system feedback. For frequent and minor actions, the response can be modest, while for infrequent and major actions, the response should be more substantial.
  • Design dialog to yield closure — Sequences of actions should be organized into groups with a beginning, middle, and end. The informative feedback at the completion of a group of actions gives the operators the satisfaction of accomplishment, a sense of relief, the signal to drop contingency plans and options from their minds, and an indication that the way is clear to prepare for the next group of actions.
  • Offer simple error handling — As much as possible, design the system so the user cannot make a serious error. If an error is made, the system should be able to detect the error and offer simple, comprehensible mechanisms for handling the error.
  • Permit easy reversal of actions — This feature relieves anxiety, since the user knows that errors can be undone; it thus encourages exploration of unfamiliar options. The units of reversibility may be a single action, a data entry, or a complete group of actions.
  • Support internal locus of control — Experienced operators strongly desire the sense that they are in charge of the system and that the system responds to their actions. Design the system to make users the initiators of actions rather than the responders.
  • Reduce short-term memory load — The limitation of human information processing in short-term memory requires that displays be kept simple, multiple page displays be consolidated, window-motion frequency be reduced, and sufficient training time be allotted for codes, mnemonics, and sequences of actions.

6. Norman’s 7 Principles

  • Use both knowledge in world & knowledge in the head.
  • Simplify task structures.
  • Make things visible.
  • Get the mappings right.
  • Exploit the power of constraints, both natural and artificial.
  • Design for error.
  • When all else fails, standardize.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


Undergraduate student of Software engineering-University of Kelaniya.