Richard Griffiths - Lecture Notes


These notes have been abstracted from Card, Moran and Newell's 1983 book.  (Card)  An alternative introductiion is the section in Dix et al. (Dix p.231-5)

The GOMS model was developed by Card, Moran and Newell (Card)  as a way of quantitatively predicting the skilled and error free performance of users interacting with a text editor.  The method may be amended for use with other categories of software.

"For error-free behaviour, a GOMS model provides a complete dynamic description of behaviour, measured at the level of goals, methods, and operators.  Given a specific task (a specific instruction on a specific manuscript and a specific editor), this description can be instantiated into a sequence of operations (operator occurrences).  By associating times with each operator, such a model will make total time predictions.  If these times are given as distributions, it will make statistical predictions.  But, without augmentation, the model is not appropriate if errors occur."  (Card p.146)
Underlying the development of the model is a basic principle;

The Rationality Principle:

Users act rationally to attain their goals.

"To predict a user's behaviour we must analyze the task to determine the user's goals and operators and the constraints of the task."  (Card p.139)

Components of the Model

The model consists of;
  • a set of Goals
  • a set of Operators
  • a set of Methods for achieving the goals
  • a set of Selection rules for choosing among competing methods for goals
  • The model owes its ancestry to a production system/goal decomposition approach to cognitive modelling, exemplified by Newell and Simon's General Problem Solver.  (Newell)  However, the control structure has been considerably simplified by representing the model as a stack machine.  This does not allow it to adequately deal with interruptions and errors, but considerably simplifies it.  (Card p.147)   In addition, operators are assumed not to be concurrent, so only linear processes can be modelled.  (Card p.144)

    An Example Model

    This model (called F2) deals with manuscript editing with a line-oriented editor called POET.

    The user begins with the top level goal:

    The user segments the larger task into a sequence of small, discrete modifications such as 'delete a word' or 'insert a character'.  These are termed unit tasks.
    . GOAL: EDIT-UNIT-TASK repeat until no more unit tasks.
    To perform this sub-goal, the user must first acquire instructions from the manuscript and then carry them out.
    Each sub-goal will evoke appropriate methods.  In the case of acquiring a task:
    . GET-NEXT-PAGE if at end of manuscript page
    The operator GET-NEXT-PAGE is invoked only if there are no further editing instructions on the current page of the manuscript.  The main part of the work, consisting of looking at the manuscript, finding the next editing instruction, and interpreting it as an editing task, is done by the operator GET-NEXT-TASK.

    In POET, to accomplish a unit task needs two steps.

    To locate POET at a line, there is a choice between two methods:
    . [select: USE-LF-METHOD
    For the LF-METHOD, the LINEFEED key is pressed repeatedly.  To use the QS-METHOD (Quoted String), a string of characters is typed to identify the line.  Usually the LF-METHOD is selected when the text for the new unit task is within a few lines of the text for the current unit task and the QS-METHOD when the new unit task is further away.

    There is then a choice of how to modify the text:

    . [select: USE-S-COMMAND
    The Modify command allows the user to invoke a series of sub-commands for moving forwards and backwards and for making modifications within a line.  The VERIFY-EDIT operation checks that what occurred matched the users intentions.

    Thus the complete model so far is:

    . GOAL: EDIT-UNIT-TASK repeat until no more unit tasks
    . . . GET-NEXT-PAGE if at end of manuscript page
    . . . GET-NEXT-TASK
    . . . . [select: USE-LF-METHOD
    . . . GOAL: MODIFY-TEXT.
    . . . . [select: USE-S-COMMAND
    . . . . VERIFY-EDIT.
    The dots at the left of each line show the depth of the goal stack.  To complete the model, method Selection rules for determining the actual sub-method at the two occurrences of 'select', are required.

    The Components of the GOMS Model Defined


    A goal is a symbolic structure that defines a state of affairs to be achieved and determines a set of possible methods by which it may be accomplished.  ...  The dynamic function of a goal is to provide a memory point to which the system can return on failure or error and from which information can be obtained about what is desired, what methods are available, and what has been already tried.  (Card p.144)


    Operators are elementary perceptual, motor, or cognitive acts whose execution is necessary to change any aspect of the user's mental state or to affect the task environment. ... The behaviour of the user is ultimately recordable as a sequence of these operations. ... A GOMS model does not deal with any fine structure of concurrent operations.  Behaviour is assumed to consist of the serial execution of operators.  An operator is defined by a specific effect (output) and by a specific duration. ... For a specific model, the operators define a grain of analysis.  In general, they embody a mixture of basic psychological mechanisms and learned organized behaviour, the mixture depending on the level at which the model is cast.


    A Method describes a procedure for accomplishing a goal.  It is one of the ways in which a user stores his knowledge of a task.  The description of a method is cast in a GOMS model as a conditional sequence of goals and operators, with conditional tests on the contents of the user's immediate memory and on the state of the task environment.  ...  In the manuscript-editing task, the methods are sure of success, up to the possibility of having been mis-selected, the occurrence of errors implementation, and the reliability of the equipment. ... uncertainty is a prime contributor to the problem-solving character of a task; its absence is a characteristic of a cognitive skill.  Methods are learned procedures that the user already has at performance time; they are not plans that are created during a task performance.  They constitute one of the major ways in which familiarity (skill) expresses itself.  The particular methods that the user builds up from prior experience, analysis, and instruction reflect the detailed structure of the task environment.  In the manuscript-editing task, they reflect knowledge of the exact sequence of steps required by the editor to accomplish specific tasks.


    Method selection is handled by Selection rules.   Each is of the form of:
    "if such-and-such is true in the current task situation, then use method M."
    Selection rules for GOAL: LOCATE-LINE of the example model might read:
    if the number of lines to the next modification is less than 3, then use the LF-METHOD; else use the QS-METHOD.
    ... Selection rules represent the control structure in the model.  When a goal is attempted, there may be more than one method available to the user to accomplish the goal.  The selection of which method to be used need not be an extended decision process, for it may be that task environment features dictate that only one method is appropriate.  On the other hand, a genuine decision may be required.  The essence of skilled behaviour is that these selections are not problematical, that they proceed smoothly and quickly, without the eruption of puzzlement and search that characterizes problem-solving behaviour.

    The Development of Selection Rules

    This is accomplished by the examination of empirical data.  A task is given to a sample of skilled users, and their key-strokes, together with the system response are recorded for analysis.  For each user the proportion of use of particular methods may be calculated.  A sample analysis is given below.

    User /
    Terminal Type
    S1 (Comp.Sci.) TTY S4 (Secy.) TTY S4 (Secy.) DISP S22 (Secy.) DISP
    Methods for GOAL: LOCATE-LINE
    11 (16%) 14 (21%) 45 (68%) 25 (38%)
    44 (65%) 1 (2%) 0 40 (62%)
    2 (3%) 51 (77%) 20 (30%) 0
    11 (16%) 0 1 (2%) 0
    Methods for GOAL: MODIFY-TEXT
    48 (73%)
    57 (86%)
    18 (27%)
    9 (14%)
    Frequency of method selections for three subjects in Experiment 5A.  (Card p.150 Fig. 5.2) 


    The systematic relationship between the method selected and the task environment can also be brought out.  A sample analysis is given below.

                                                                    Distance from previous task
    User Method 1 2 3 4 5 6 7 8 9 10-14 15+
    S1 LF 8 3 |
    TTY QS 2 | 4 5 2 1 3 4 8 15
    +N 1 | 1
    AN | 1 2 1 1 3 3
    S4 LF 8 4 | 1 1
    TTY QS | 1
    +N 1 | 5 5 3 1 4 4 11 17
    AN |
    S4 LF 6 7 6 5 3 1 3 2 | 2 10
    TTY QS |
    +N 1 1 2 | 9 7
    AN | 1
    S22 LF 6 5 6 5 | 1 1 1
    TTY QS 1 1 | 2 4 4 10 18
    +N |
    AN |
    Total Frequency 8 6 6 5 4 0 1 4 4 11 19
    Frequency of GOAL: LOCATE-LINE methods in Experiment 5A as a function of the distance from the previous task.  (The vertical bars indicate the threshold where the LF-METHOD ceases being preferred.)  (Card p.151 Fig. 5.3) 
    "Averaging together the data for all users and attempting to write rules to describe the choices of the group would, therefore, produce inaccurate predictions, as well as be quite misleading.  Yet, despite the existence of significant individual differences in methods for accomplishing this goal, each user's behaviour taken individually was highly structured and amenable to a GOMS description."  (Card p.152)
    To complete prediction of which method each user employs for a particular goal, a set of candidate Selection rules is proposed through examination of the data.  These rules may be applied to the data, and the "Hits" (cases correctly predicted) and "Misses" (cases where the prediction was wrong) established, as the rule set accumulates.  An example is shown below.

    User Rule Gain Loss Hits Misses % Hits
    Rule 1:  Use the QS-METHOD unless another rule applies. 44 0 44 24 65%
    Rule 2:  If d<3, use the LF-METHOD. 11 2 53 15 78%
    Rule 3:  If the target line is the last line of the page, use the AN-METHOD (with $). 5 0 58 10 85%
    Rule 4:  If the current method is to use paragraph numbers for search strings and the target line is near a paragraph number, use the AN-METHOD. 2 0 60 8 88%
    Rule 1:  Use the +N-METHOD unless another rule applies. 51 0 51 15 77%
    Rule 2:  If d<3, use the LF-METHOD. 12 1 62 4 94%
    Rule 1:  Use the LF-METHOD unless another rule applies. 45 0 45 21 68%
    Rule 2:  If d>9, use the +N-METHOD. 16 12 49 17 74%
    Rule 3:  If the target line is on the next page of the manuscript, use the LF-METHOD. 56 10 56 10 85%
    Rule 1: Use the QS-METHOD unless another rule applies. 40 0 40 25 62%
    Rule 2: If d<5, use the LF-METHOD. 22 2 60 5 92%
    Selection rules for GOAL: LOCATE-LINE in Experiment 5A.  (Card p.153 Fig. 5.4) 


    Card, S. K., Moran, T. P., & Newell, A.,  1983  "The Psychology of Human-Computer Interaction" Lawrence Erlbaum Associates (Aldrich Library 004.019Car)

    Dix, A., Finlay, J., Abowd, G., Beale, R.  1998  “Human-Computer Interaction” (Second Edition).  Prentice Hall.

    Newell, A., & Simon, H.,  1972  "Human Problem Solving" Prentice-Hall.

    This page is maintained by Richard Griffiths and does not necessarily reflect the official position of the University of Brighton.

    Index  Previous  Next