Constants and Rules for performing a GOMS Keystroke Analysis

Adapted from The Humane Interface by Jef Raskin. The GOMS model originates from The Psychology of Human-Computer Interaction by Stuart K. Card, Thomas P. Moran and Allen Newell.

Constants for primitive operations

Steps for performing an analysis

  1. Fully list the K, P, H and R operations needed to complete the task.
  2. Insert an M operation before every K operation.
  3. Insert an M operation before every P operation unless that P operation specifies additional information to a command. For example, inserting a column break using MS Word requires the user to select the Break item from the Insert menu and then point to and click on the Column break option in the dialog box. The operation of pointing to the Column break option does not require an M operation because it specifies what type of Break should be inserted.
  4. Delete an M if it precedes an anticipated operation. For example, the keying (clicking) operation of a "point and click" process is an anticipated operation.
  5. If a string of MKs form a cognitive unit (e.g. a word, number, name or command), delete all of the Ms except the first one.
  6. For sequences of terminators to cognitive units (e.g. a sequence of return keys or closing multiple dialog boxes), delete all Ms except the M that starts the sequence.
  7. For a terminator to a command, delete the preceding M.
  8. Delete an M that overlaps with an R. However, do not delete the M if the next operation depends on the outcome from R.

It is often difficult to interpret the rules for when to delete an M. In general, the M should be deleted when the user can automatically perform the next operation without any deliberation.