The Keystroke-Level Model for User Performance Time with Interactive Systems

The Keystroke-Level Model for User Performance Time with Interactive Systems

Year
1980
image

The Keystroke-Level Model for User Performance Time with Interactive Systems

Stuart K. Card, Thomas P.Moran, Allen Newell. 1980. (View Paper → )

There are several aspects of user-computer performance that system designers should systematically consider. This article proposes a simple model, the Keystroke-Level Model, for predicting one aspect of performance: the time it takes an expert user to perform a given task on a given computer system.

The model is based on counting keystrokes and other low-level operations, including the user's mental preparations and the system's responses. Performance is coded in terms of these operations and operator times summed to give predictions. Heuristic rules are given for predicting where mental preparations occur.

This paper introduced the Keystroke-Level Model (KLM), one of the first quantitative, predictive models for estimating how long it would take an expert user to complete tasks on interactive computer systems. Before this, system designers had few analytical tools to evaluate user interface efficiency without conducting time-consuming user testing.

The KLM represented a major advancement because:

  1. It broke down user interactions into fundamental components (keystrokes, pointing, homing, drawing, mental preparation, and system response)
  2. It provided a simple mathematical model to predict task completion times with ~21% accuracy
  3. It was designed to be usable by engineers and designers without specialised knowledge
  4. It enabled comparison of different UI designs before implementation

This work laid the foundation for GOMS (Goals, Operators, Methods, and Selection rules) and other HCI models that continue to influence usability engineering. While modern interfaces have evolved beyond physical keyboards, the principles of breaking down user interactions into measurable components remains essential for creating efficient user experiences.