jackmyers.info

One way to model performance is to utilize the well-understood human-motor system. In 1980, Stuart Card, Thomas Moran and Allen Newell published the Keystroke-level model (KLM) to predict time of task execution. KLM is low-level GOMS model where the method is specified.

The GOMS Model

GOMS is a specialized human information processor model for human-computer interaction observation that describes a user's cognitive structure on four components. A GOMS model allows a developer to model and predict human behavior while performing well-known tasks. Card, Moran and Newell, introduce:

  • a set of Goals
  • a set of Operators
  • a set of Methods for achieving the goals
  • a set of Selections rules for choosing among competing methods for goals.

GOMS models can predict the time it will take for the user to carry out a goal allowing a designer to profile an application to locate bottlenecks, as well as compare different UI designs to determine which one allows users to execute tasks more quickly.1

Breakdown of GOMS1

Goals
Goals are what the user is trying to accomplish. These can be defined at various levels of abstraction, from very high-level goals (e.g. WRITE-RESEARCH-PAPER) to low-level goals (e.g. DELETE-WORD). Higher-level goals are decomposable into subgoals, and are arranged hierarchically.
Operators
Operators are the elementary perceptual, motor or cognitive actions that are used to accomplish the goals (e.g. DOUBLE-CLICK-MOUSE, PRESS-INSERT-KEY). Operators are not decomposable: they are atomic elements in the GOMS model. Furthermore, it is generally assumed that each operator requires a fixed amount of time for the user to execute, and that this time interval is independent of context (e.g. CLICK-MOUSE button takes 0.20 seconds to execute).
Methods
Methods are the procedures that describe how to accomplish goals. A method is essentially an algorithm that the user has internalized that determines the sequence of subgoals and operators necessary to achieve the desired goal. For example, one method to accomplish the goal DELETE-WORD in the Emacs text editor would be to MOVE-MOUSE to the beginning of the word, and PRESS-ALT-D-KEY-COMBINATION (the use-mouse-delete-word method). Another method to accomplish the same goal could involve using the arrow keys to reach the beginning of the word (the use-arrows-delete-word method).
Selection rules
Selection rules specify which method should be used to satisfy a given goal, based on the context. Since there may be several different ways of achieving the same goal, selection rules represent the user's knowledge of which method must be applied to achieve the desired goal. Selection rules generally take the form of a conditional statement, such as "if the word to be deleted is less than 3 lines away from the current cursor location, then use the use-arrows-delete-word-method, else use the use-mouse-delete-word method".

References

1. Lorin Hochstein, University of Maryland lecture notes