Javatpoint Logo
Javatpoint Logo

GOMS family of models (KLM and CMN-GOMS)

GOMS stands for Goals, Operators, Methods, and Selection Rules

In cognitive psychology and human-computer interaction, the GOMS (Goals, Operators, Methods, and Selection rules) family of models provides a framework for describing and analyzing the cognitive processes involved in carrying out a task. In the 1980s, Card, Moran, and Newell developed the first version of the GOMS model. The GOMS family of models was developed as a result of proposed modifications and additions to the first GOMS model over time.

A GOMS model gives the designer a representation of how a user would behave when carrying out common tasks.


The desired results of users are known as goals. Low-level objectives like removing a word can be broken down into subgoals and sub-subgoals from high-level goals like publishing a research paper. Consequently, there is a hierarchy of aims.


The user's activities are known as operators. These could be muscular activities like waving a hand, perceptual actions like checking a setting, or cognitive acts like remembering a menu item. Operators in GOMS are atomic elements that cannot be further subdivided.

An operator's execution time is the amount of time needed for the user to finish it. A probability distribution, a function of a few parameters, or a constant is used to estimate it. For instance, Fitts' law, a function of target size and distance, or a constant like 1.1 s could be used to approximate a pointer movement.


A user's procedures for accomplishing a goal are called methods. To accomplish a goal or subgoal, they outline the series of actions the user must take. You may use the backspace key or double-click on a word to erase it.

Selection Rules:

When there are several ways to accomplish a goal, a selection rule chooses which approach to take. To erase a word, for instance, use the backspace key if the cursor is at the end of the word; if not, double-click the word and select erase.

GOMS consists of 2 models:

  1. Keystroke Level Model (KLM)

1. Keystroke Level Model (KLM)

A condensed variation of GOMS, the Keystroke Level Model focuses on estimating task execution times by decomposing tasks into fundamental processes or keystrokes.

It gives distinct periods to many kinds of operations, including clicking a button, dragging the mouse, or thinking.

A predictive model called the Keystroke Level Model (KLM) is used in human-computer interaction to determine how long a given task will take to complete. It was created as a member of the GOMS (Goals, Operators, Methods, and Selection rules) family of models by Stuart Card, Thomas Moran, and Allen Newell. By segmenting jobs into fundamental operations or keystrokes and allocating distinct time values to each action, KLM streamlines the modeling process. Because of this, it's a useful tool for project completion time estimation early in the design phase.

Purpose of KLM model:

KLM is mostly used to estimate the amount of time needed to complete particular tasks. To provide a quantitative estimate of the anticipated time for job completion, it divides tasks into discrete operations or keystrokes and assigns a time value to each operation.

By estimating the amount of time needed for users to complete tasks in each scenario, KLM enables designers to compare various design solutions. The most effective and user-friendly design can be selected with the aid of this comparative analysis.

KLM estimates offer preliminary information about the probable time requirements of various features or tasks, which can help with resource allocation and project planning. Making educated choices regarding the scheduling of projects and the distribution of resources can benefit from this information.

Operators in KLM model:

The Keystroke Level Model (KLM) uses the term "operators" to describe the fundamental motor or cognitive functions that a user uses to complete a task. Every operator has a time value assigned to it, which indicates how long it typically takes a user to complete that specific action. KLM uses a set of standardized and somewhat basic operators that make it easy to simulate task completion times quickly.

K (Keystroke):

The time it takes a user to push a key on the keyboard is represented by this operator. This operator normally takes 0.2 seconds on average to complete.

P (Pointing Device):

The pointing device operator shows how long it takes a user to use a pointing device, like a mouse, to move the pointer to a particular area. This operator's normal execution duration is 1.1 seconds on average.

H (Home Hand from Mouse):

After finishing a pointing task, this operator indicates how long it takes the user to move their hand from the mouse to the keyboard. This operator normally takes 0.4 seconds on average to complete.

M (Mental Operator):

The amount of time it takes the user to mentally plan or prepare for the next action is represented by the mental operator. The operator takes cognitive processing time into consideration. The difficulty of the mental work determines how long this operator takes on average.

B (Pressing the Button):

This operator represents the time it takes for a user to press a mouse button. This operator normally takes 0.1 seconds on average to complete.

R (System Response):

R stands for "System Response," and it indicates how long it takes a computer system to react to a user action. The system's responsiveness determines the average time for this operator.

To simulate the system reaction time (i.e., the interval between pressing a key and seeing the matching character on the screen), KLM first defined an operator R. R was important when the model was originally put forth in 1980. Nevertheless, it is no longer in usage because we are used to nearly instantaneous system response unless the system in question is networked, and network latency could be a problem.

The order in which a user completes a task is modeled by these operators, and the aggregate of the times assigned to each operator determines the overall time required to complete the work. KLM is especially useful for jobs that can be divided into a sequence of straightforward, discrete actions because it presumes that these operators are performed sequentially.


As a systematic approach to comprehending and evaluating user interactions with computer systems, CMN-GOMS has had a significant impact on the fields of cognitive psychology and human-computer interaction. Within the larger GOMS family, it has now been expanded upon and modified to create a number of models, including the Keystroke Level Model (KLM), NGOMSL (Natural GOMS Language), and others. These models aid researchers and designers in forecasting and assessing the effectiveness and usability of user interfaces.

Four constructs-goals, operators, methods, and selection rules-allow us to model the task and user behaviors in CMN-GOMS.

Goals: Indicates the user's higher order of cognitive objectives. It is possible to model cognitive processes hierarchically thanks to this cognitively based task organization.

Operators: These are simple actions that alter the task environment or the user's mental (cognitive) state. The idea here is broader even though it resembles the operators found in the Keystroke Level Model (KLM).

Methods: Groups of goal-operator steps intended to achieve a sub-target. A method is an organized approach to arrange a series of actions to accomplish particular goals within the larger activity.

Selection rules: They are applicable when there are multiple ways to achieve a particular objective. These guidelines offer a way to choose between many approaches in a certain interaction setting, enabling task execution flexibility.

Within the fields of cognitive psychology and human-computer interaction, this framework-which comprises four constructs-offers a systematic approach to analyzing and modeling user interactions, thereby advancing our understanding of the cognitive processes involved in task execution.

GOMS family of models (KLM and CMN-GOMS)

Operators in CMN-GOMS:

Operators in KLM and (CMN) GOMS share conceptual similarities.

The primary distinction is in the fact that KLM defines a mere seven operators. The concept of operators in (CMN) GOMS is not limited to those seven.

Any 'elementary' cognitive operation can be defined by the modeler and used as an operator.

At a higher level, an operator can be defined as the whole cognitive process that goes into "closing a file by selecting the close menu option."

The ability to define operators at any level of cognition is provided by (CMN) GOMS, and operators at different levels can be defined for separate regions of the model.

Due to its versatility, (CMN) GOMS may model a wide range of cognitive operations beyond the set of operators predefined in KLM, enabling a more nuanced and detailed description of user cognitive processes.

Unlike the linear thought process of KLM, a hierarchical cognitive (thought) process is assumed in (CMN) GOMS. A perfectly 'logical' and error-free behavior is assumed in both models. A hierarchical structure is incorporated into the modeling technique in (CMN) GOMS, enabling a more intricate and multi-layered depiction of tasks and cognitive processes. As a result, objectives may be divided into subgoals; methods may consist of a series of subgoals and operators, and the model may represent a nested structure. Because it is more versatile and adaptive, this hierarchical representation can better convey the varied and interrelated nature of cognitive processes involved in task execution.

Youtube For Videos Join Our Youtube Channel: Join Now


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA