Part of the GOMS family of predictive models, the Keystroke-Level Model GOMS (KLM-GOMS) is a quantitative modeling tool for predicting how long it will take expert users to complete a specific task with no errors.

KLM-GOMS predicts task times based on a simple set of physical and mental operators including keystrokes, button clicks, pointer movement, keyboard to mouse movement, and thinking time. Each KLM operator is assigned a time based on empirical research. To obtain the predicted time for a task, you add the times for individual operators.

Detailed Description

With a KLM-GOMS analysis, a given flow through a user interface (a task) is broken down into atomic pieces (keystrokes, mouse clicks, moving hands back and forth between the keyboard and mouse, etc.) A lookup table like the one below is then used to retrieve the interaction time for each atomic action, and then total task time is calculated by adding all the actions together.

The KLM-GOMS technique can be used to compare predicted performance across different variations on a user interface. The method does not require users or a working prototype - only a description of the path through which the software is needed. KLM can also predict task times for different approaches to the same task. For example, you could use KLM to compare the time it takes to to change attributes using keyboard shortcuts versus mouse and toolbar options.

KLM-GOMS is only valid for well practiced (repetitive) tasks, and does NOT take into account any learning required for the user to work through the task for the first time. There is an “M” operator in the KLM-GOMS approach that is used to indicate mental preparation for a step in a task. For example, an expert might have to make a decision during a task and the decision time would be represented by an “M” (mental operator).

The quality of the KLM analysis depends highly on the assumptions of the modeler. Some assumptions that might be considered in the creation of a KLM are:

KLM-GOMS does not address the quality of the work produced by a task, the quality of the output of a task, or the effects of context of use attributes like fatigue, group influence, the readibility or layout of the user interface, or interruptions.

Some sample action times (Kieras, 2001)