GOMS (Goals, Operators, Methods, and Selection rules) is a kind of specialized human information processor model for human-computer interaction observation. Developed in 1983 by Stuart Card, Thomas P. Moran and Allen Newell, it was explained in their book The Psychology of Human Computer Interaction. Following these initial steps, additional models for analysis evolved and are heavily used in the engineering-oriented usability community.
GOMS reduces a user's interaction with a computer to its elementary actions (these actions can be physical, cognitive or perceptual). Using these elementary actions as a framework, an interface can be studied. There are several different GOMS variations which allow for different aspects of an interface to be accurately studied and predicted.
For all of the variants, the definitions of the major concepts are the same. Goals are what the user intends to accomplish. Operators are actions that are performed to reach the goal. Methods are sequences of operators that accomplish a goal. There can be more than one method available to accomplish a single goal; if this is the case, then selection rules are used to describe when a user would select a certain method over the others. Selection rules are often ignored in typical GOMS analyses. There is some flexibility for the designer's/analyst's definition of all of these entities. For instance, an operator in one method may be a goal in a different method. The level of granularity is adjusted to capture what the particular evaluator is examining.
Advantages of GOMS Overall 
The GOMS method is not necessarily the most accurate of human-computer interface interaction measurement methods, but it certainly has its advantages. A GOMS estimate of a particular interaction can be calculated with little effort, at little cost, and in a short amount of time if the average Methods-Time Measurement data for each specific task has been previously measured experimentally to a high degree of accuracy. With a careful investigation into all of the detailed steps necessary for a user to successfully interact with an interface, the time measurement of how long it will take a user to interact with that interface is a simple calculation. Summing the times necessary to complete the detailed steps provides an estimate for how long it will take a user to successfully complete the desired task.
Weaknesses of GOMS Overall 
All of the GOMS techniques provide valuable information, but they all also have certain drawbacks. None of the techniques address user unpredictability - such as user behaviour being affected by fatigue, social surroundings, or organizational factors. The techniques are very explicit about basic movement operations, but are generally less rigid with basic cognitive actions. It is a fact that slips cannot be prevented, but none of the GOMS models allow for any type of error. Further, all of the techniques work under the assumption that a user will know what to do at any given point - so they apply only to expert users, not novices.
Functionality of the system is not considered, only the usability. If functionality were considered, the evaluation could make recommendations as to which functions should be performed by the system (i.e. mouse snap). User personalities, habits or physical restrictions (for example disabilities) are not accounted for in any of the GOMS models. All users are assumed to be exactly the same. Recently some extensions of GOMS were developed, that allow to formulate GOMS models describing the interaction behavior of disabled users .
Except for KLM (Keystroke Level Modeling), the evaluators are required to have a fairly deep understanding of the theoretical foundations of GOMS, CCT (Cognitive Complexity Theory), or MHP (Model Human Processor). This limits the effective use of GOMS to large entities with the financial power to hire a dedicated human computer interaction (HCI) specialist or contract with a consultant with such expertise.
The plain, or "vanilla flavored" GOMS first introduced by Card, Moran and Newell is now referred to as CMN-GOMS. Keystroke Level Modeling (KLM) is the next GOMS technique and was also introduced by Card, Moran and Newell in their 1983 book. This technique makes several simplifying assumptions that make it really just a restricted version of GOMS. The third major variant on the GOMS technique is the ‘Natural GOMS Language’ or NGOMSL. This technique gives a very strict, but natural, language for building GOMS models. The final variation of GOMS is CPM-GOMS. This technique is based on the Model Human Processor. The main advantage of CPM-GOMS is that it allows for the modeling of parallel information processing by the user, however it is also the most difficult GOMS technique to implement.
Summary of CMN-GOMS Application 
The CMN-GOMS method assumes that information is comprehended by a user in the following manner:
- Eyes/ears perceive information
- Information enters perceptual processor
- Information enters the visual/auditory image store
- Information is stored in the working memory and long term memory
- Information is analyzed in the cognitive processor and a desired reaction (motor function) is chosen
- Desired motor function is activated in the motor processor
- Desired motor function is applied by user’s body
All measurements are provided in the following form: middleman[fastman, slowman]. The “middleman” term is the most typical time it would take to complete the action, or the time that is most representative of the average user (not the mean, average, or median, but the mode: the time that is most often measured). The fastman is a “best case” scenario. It is the reasonably best possible statistic. Note that, despite the name, it is not necessarily always the fastest time. It is instead the time that is expected to be the best a user could possibly do. The slowman time is, contrarily, a “worst case scenario.”
In CMN-GOMS, the following Methods-Time Measurement data should be used:
- Eye fixation = 230[70, 700] milliseconds
- Eye movement = 30 milliseconds
- Perceptual Processor = 100[50, 200] milliseconds
- Cognitive Processor = 70[25, 170] milliseconds
- Motor Processor = 70[30, 100] milliseconds
Also important in CMN-GOMS is the time it takes to apply the motor function once it is processed. For this, a user can apply Fitt's Law.
Summary of KLM Application 
The Keystroke Level Model is a less accurate, but faster application than CMN-GOMS. It is especially useful when determining time it takes to type a phrase, correct a realized error, or select something with a mouse. It uses the following average times as measured by Card, Moran and Newell:
- Press a key or button
- Best typist = .08 seconds
- Good typist = .12 seconds
- Average skilled typist = .20 seconds
- Average non-secretary = .28 seconds
- Typing random letters = .50 seconds
- Typing complex codes = .75 seconds
- Worst typist = 1.2 seconds
- Point with a mouse (excluding click) = 1.1 seconds
- Move hands to keyboard from mouse (or vice-versa) = .4 seconds
- Mentally prepare = 1.35 seconds
Typing a word, assuming a subject’s hands are already on the keyboard, would therefore be calculated by multiplying the number of letters in the word by the value given above to “press a key or button.” Note that categorizing the subject into an accurate typing skill level impacts the estimated measurement greatly.
Importance of Assumptions in GOMS Analysis 
Accurate assumptions are vital in GOMS analysis. Before applying the average times for detailed functions, it is very important that an experimenter make sure he or she has accounted for as many variables as possible by using assumptions. Experimenters should design their GOMS analysis for the users who will most likely be using the system which is being analyzed. Consider, for example, an experimenter wishes to determine how long it will take an F22 Raptor pilot to interact with an interface he or she has used for years. It can probably be assumed that the pilot has outstanding vision and is in good physical health. In addition, it can be assumed that the pilot can interact with the interface quickly because of the vast hours of simulation and previous use he or she has endured. All things considered, it is fair to use fastman times in this situation. Contrarily, consider an 80-year-old person with no flight experience attempting to interact with the same F22 Raptor interface. It is fair to say that the two people would have much different skill sets and those skill sets should be accounted for subjectively.
Accounting for Errors 
The only way to account for errors in GOMS analysis is to predict where the errors are most likely to occur and measure the time it would take to correct the predicted errors. For example, assume an experimenter thought that in typing the word “the” it was likely that a subject would instead incorrectly type “teh.” The experimenter would calculate the time it takes to type the incorrect word, the time it takes to recognize that a mistake has been made, and the time it takes to correct the recognized error.
An experimenter should not, however, assume that an error will occur every time a subject does an action. James Reason calculated probabilities that an error will occur. According to Reason, a skill error is defined as an unconscious, automatic action resulting in an error (for example a mistyped key, a key hit the wrong number of times, a skipped key, etc.). A skill error will occur with a probability of .006 for young users and .011 for old users. A rule error, contrarily, is defined as following a series of steps and either making a mistake applying good rules incorrectly or applying bad rules at wrong times. Simple rule errors occur with a probability of .036 for young users and .024 for old users. Complex rule errors occur with a probability of .156 for young users and .324 for old users.
A concrete application of this idea is a GOMS model for keyboard navigation in Web pages. This model contains a probability for a focus loss during navigation inside the page using the TAB key.
Successful Applications of GOMS 
A successful implementation of CPM-GOMS was in Project Ernestine held by New England Telephone. New ergonomically designed workstations were compared to old workstations in terms of improvement in telephone operators' performance. CPM-GOMS analysis estimated a 3% decrease in productivity. Over the four-month trial 78,240 calls were analysed and it was concluded that the new workstations produced an actual 4% decrease in productivity. As the proposed workstation required less keystrokes than the original it was not clear from the time trials why the decrease occurred. However CPM-GOMS analysis made it apparent that the problem was that the new workstations did not utilize the workers' slack time. Not only did CPM-GOMS give a close estimate, but it provided more information of the situation.
Software Tools 
There exist various tools for the creation and analysis of Goms-Models. A selection is listed in the following:
See also 
- This text is largely a derivative work of GOMS Analysis Techniques - Final Essay (see ). Original references follow.
- Kieras, D., John, B., The GOMS Family of Analysis Techniques: Tools for Design and Evaluation, CMU-HCII-94-106, 1994
- Kieras, D., John, B., Using GOMS for User Interface Design and Evaluation: Which Technique?, June-1996
- Kieras, D., John, B., The GOMS Family of User Interface Analysis Techniques: Comparison and Contrast
- Lecture Notes, CS5724, Virginia Tech, Fall 1996
- Judith Reitman Olson, Gary M. Olson: The Growth of Cognitive Modeling in Human-Computer Interaction Since GOMS, in: R. M. Baecker, J. Grudin, W. A. S. Buxton, S. Greenberg: Readings in Human-Computer Interaction: Towards the Year 2000. 1995, San Francisco, CA: Morgan Kaufmann.
- Card, S.K.; Moran, T.P.; Newell, A. (1983), The Psychology of Human-Computer Interaction, London: Lawrence Erlbaum Associates, ISBN 0-89859-243-7
- Lecture Notes, Green, P., University of Michigan, Winter 2009
- Card, Moran, Newell (1980). The Keystroke-Level Model for User Performance Time With Interactive Systems, Communications of the ACM, July, 23(7), 396-410.
- Card, Stuart; Thomas P. Moran and Allen Newell (1983). The Psychology of Human Computer Interaction. Lawrence Erlbaum Associates. ISBN 0-89859-859-1.
- Rogers, Yvonne; Helen Sharp and Jenny Preece (2002). Interaction Design. United States of America: John Wiley & Sons. p. 454. ISBN 0-471-49278-7.
- Tonn-Eichstädt, H. (2005). Measuring website usability for visually impaired people – A modified GOMS analysis. In: ACM SIGACCESS Conference on Assistive Technology. New York: ACM Press. pp. 55–62.
- Schrepp, M. (2006). On the efficiency of keyboard navigation in web sites. Universal Access in the Information Society, Vol. 5, No. 2, pp. 180-188.
- Schrepp, M.; Fischer, P. (2007). "GOMS models to evaluate the efficiency of keyboard navigation in web units". Eminds-International Journal of Human Computer Interaction, Vol. I, No. 2, 33-46.
- Gray, Wayne D.; John,Bonnie E. & Atwood, Michael E. (1992). "The Precis of Project Ernestine or an overview of a validation of GOMS". Proceedings of the SIGCHI conference on Human factors in computing systems. doi:10.1145/142750.142821. ISBN 0897915135.