Back to Start | Back to Start of Section ("Systematic Approach to UI Design...") | Bibliography

Principles of User Interface Design

Designing modern user interfaces requires an in-depth understanding of various cognitive and mental models. One of the most widely used cognitive task analysis models in the area of user interface design is the GOMS (Goals, Operators, Methods, and Selection Rules) model [5]. It states that users employ certain established methods or procedures to achieve a pre-defined set of goals using operators and selection rules. The KLM (Keystroke-Level Model) attempts to predict time measures for error-free performance of tasks based on the sum of time taken for keystroking, pointing, homing, drawing, thinking, and waiting for the system to respond [21]. Both these models deal with error-free operation and do not address uncharted anomalies of operations when there are multiple goals and constraints [10].

The GOMS model and KLM models are suitable for tasks with well-defined structure such as text-editing or other linear tasks. However, they are not suitable for tasks with high cognitive variability such as navigating through a hypertext network. Hence, alternative models or approaches are required to develop user interfaces for hypertext systems. A first step in this direction is to develop a good user interface in order to reduce disorientation and cognitive overhead. This requires an understanding of the organizational setting, the targeted task domain, the typical user population, and the desired outcomes of hypertext navigation.

Various user interface design techniques and usability principles have been proposed by researchers and practitioners [ 1, 15, 18, 19, 21, 26 ]. We have chosen the following set of guidelines [27] to be applied to the hypertext framework since they were found to be more systematic and comprehensive than other similar guidelines:

  1. Identify the metaphor.
  2. Identify all objects that make up the system.
  3. Identify all actions/functions that can be performed on these objects. Separate them into generic actions, explicit actions, and control functions.
  4. Identify modifiers/filters that select subsets of objects.
  5. Identify strategic choices which allow the user to accomplish a specific task.
  6. Identify lateral classifications - objects and actions that relate to each other.
  7. Identify the formats of objects, parts of objects, menus etc.
  8. Identify lists of objects.
  9. Identify reactive choices that can be performed on a list or a set of objects.
  10. Identify processes or functions that share information.
  11. Identify all user interaction states.
  12. Identify necessary help throughout the system.
  13. Identify all error conditions.
  14. Identify the screen layout - workspace, control area, status area, message area etc.

Hypermedia structures and systems assignment by Mark de Haas (0481832)