You are on page 1of 36

GOMS and KLM

Human Computer Interaction


Group Members:

• Uzair Zia 17631556-037


• Ghulam Abbas 17631556-038
• Farzeen Shahzad 17631556-039
• Hamza 17631556-028
Today’s Outline

1) Cognitive Modeling
2) Keystroke-Level Model (KLM)
3) Other GOMS Variants
Cognitive Modeling

Use that model to predict how humans


would complete tasks using a particular UI
• Cognitive models claim to have some
representation of users as they interact
with an interface, that is they model some
aspects of the user’s:
understanding, knowledge, intentions or mental
processing.
Cognitive Models are…
Abstract
Quantitative
Approximate
Estimated from experiments
Based on a theory of cognition

Adapted from Rob Miller


Goal and task hierarchies
• Mental processing as divide-and-conquer
Example: sales report
produce report
gather data
. find book names
. . do keywords search of names database
. . . … further sub-goals
. . filter through names and abstracts by hand
. . . … further sub-goals
. search sales database - further sub-goals
layout tables and histograms - further sub-goals
write description - further sub-goals
Goals vs. Tasks

• Goals – intentions
• what you would like to be true.
• Goals can be divided into sub-goals.

• Tasks – actions
• how to achieve the goal or sub-goals.
• Task can also be divided into sub-task or smaller
tasks(task analysis)
Techniques (Models)

• Cognitive models are classified as below:


• Hierarchical models
• GOMS(Goals, Operators, Methods, Selection)
• Cognitive Complexity Theory (CCT)
• Linguistic and grammatical models
• BNF (Backus-Naur Form)
• Task-Action Grammar (TAG)
• Physical and device-level models
• Keystroke-Level Model
• Three State Model
GOMS
What is a GOMS model?
• A description of the knowledge that a user must
have in order to carry out tasks on a device or a
system
• A representation of the “how to do it”
knowledge that is required by a system in order to
get the intended tasks accomplished
Characteristics for GOMS

• Combines cognitive aspects with an analysis of a task


• Results in quantitative predictions of time
• Qualitatively
– GOMS can explain the predictions
– focus on methods to accomplish goals
When is GOMS analysis used?
• It applies to situations in which users will be expected
to perform tasks they have already mastered
• Routine work
– registration tasks
– when time is crucial
-- When analyzing existing designs.
GOMS
Goals - What the user wants to achieve; can be broken down
into sub-goals. Example “travel to Karachi from Jhelum City.”

Operators - An action performed in service of a goal

– Also uses action-object pair (e.g. press key, select menu, make
gesture, speak command...)

Methods Decomposition of goals into sub-goals/ operators

. Sequence of operators

Selection Rules – Means of choosing between completing


methods
Source: John and Kieras, “The GOMS Family of User Interface Analysis Techniques”
Example
GOMS analysis – the drag operation
– Method for goal: drag item to destination.
• Step 1. Locate icon for item on screen.
• Step 2. Move cursor to item icon location.
• Step 3. Hold mouse button down.
• Step 4. Locate destination icon on screen.
• Step 5. Move cursor to destination icon.
• Step 6. Verify the destination icon.
• Step 7. Release mouse button.
• Step 8. Return with goal accomplished. Adapted from Rob Miller
An example Problem:

• perform a GOMS analysis on the following task:

- using a word processor, move a piece of text from


one location to another in a document
Method 1

• Method for moving text

Step 1. Highlight text to move on screen


Step 2. press CTRL + X
Step 3. press CTRL + V
Step 3. verify correct text moved
Step 4. report goal accomplished
Method 2

Method for moving text

Step 1. Highlight text to be move


Step 2. Right click on mouse key
Step 3. Click on Cut.
Step 4. Move cursor to destination location.
Step 5. Right click on mouse key
Step 6. Click on Paste.
Step 7. Goal is accomplished.
Method 3

Method for moving text

Step 1. select text


Step 2. move mouse to a point within the text
Step 3. hold down mouse left button
Step 4. locate new position
Step 5. move mouse to new position
Step 6. release mouse button
Step 7. report goal accomplished
Selection Rule

• Now we need a selection rule to choose between the


two methods defined:
• Selection rule for move considered text
1. If user has no mouse then use method 1
2. If user does not know text can be dragged then use
method 2
3. If user prefers using keyboard then use method 1
4. If no other rule applies then use method 3
5. If user prefers using Mouse then use method 2
Goals vs. Operators

• The difference between goals and operators is:

• Goal is something the user wishes to achieve,

• while the , Operator is just something the user executes

Operator
Goal

move-left cursor press-key ←


Limitations of GOMS

• It does not consider user errors

• It considers only sequential tasks

• It can be inadequate for distributed applications


(such as web-based applications) Task Analysis

Conclusion: GOMS is an interesting theoretical


model, but is hardly ever used in practice
GOMS Variants/Types
KLM - Simplest version (Card, Moran, Newell 1983)

CMN-GOMS - Original formulation; includes methods


and selection rules (Card, Moran, Newell 1983)

NGOMSL - GOMS using natural language; also can


model memory usage and learning times (Kieras
1988)

CPM-GOMS - Models parallel processing by cognitive,


perceptual and motor systems (John 1990)
Source: John and Kieras, “The GOMS Family of User Interface Analysis Techniques”
Applications of GOMS

• The primary application of the GOMS model is to text


editing tasks

• GOMS allows computer designers to test user


interface designs
Advantages of GOMS

• Model Explains the results.


• Less work then user study.
• Easy to modify when UI is revised.
Disadvantages of GOMS

• Is difficult to use and complex compared to other


task analysis methods.
• Does not consider context.
• Not for the novice user
• Is time consuming.
• Requires significant training.
Keystroke-Level Model
(KLM)
KLM Operators

K Press a key or button


P Point to a target on the display
H Home hands on input device
D Draw a line segment
M Mentally prepare for an action
R (system response time)
Example: Replacing a Word

Adapted from Lorin Hochstein


KLM Analysis

Walk through a task, listing the operators


needed to complete it
Use heuristics to insert M operators (for
example, place M’s in front of all P’s that
select a command)
– These can be different for different UI styles
Based on estimates for each operator,
calculate the amount of time required to
complete the task

Adapted from Rob Miller


Operator Estimates

Keystroke determined by typing speed


0.28s for average typist (40 wpm), 0.08 for fast
typist (155 wpm), 1.20s for worst typist
Pointing determined by Fitts’ Law (or
general approximation)
T = a + b log (d/s +1) OR
T = 1.1s
Drawing determined by Steering Law
T = a + b (d/s)

Adapted from Rob Miller


Operator Estimates

Homing estimated by measurement


T = 0.36s (between keyboard and mouse)
Mental prep estimated by measurement
T = 1.35s
(estimated by taking the total task time,
subtracting physical operator time, and dividing
by the number of “chunks” of activity)

Adapted from Rob Miller


Example: Deleting a Word
Using Shift-Click Using Delete
M M
P [start of word] P [start of word]
K [click] K [click]
M H
P [end of word]
M
K [shift]
K [Del] x n [length of word]
K [click]
H [to keyboard]
M
K [Del]

Total: 3M + 2P + 4K Total: 2M + P + H + (n+1) K


= 7.37 sec = 4.44 + 0.28n sec

Adapted from Rob Miller


Using KLM
KLM can help evaluate UI designs, interaction
methods and trade-offs, if needed using
parametric analysis

T Del n times
Shift-click

n
If common tasks take too long or consist of too
many statements, can provide shortcuts

Adapted from Rob Miller


Limitations of KLM
Only applies to expert users doing routine (well-learned) tasks

Only predicts efficiency - not error rate, memorizability,


learnability, etc.

Impractical for all but the simplest tasks

Ignores
– Parallel processing

– Goal interleaving

– Mental workload (working memory limits, fatigue)

– Planning and problem-solving (how to select a method?)

Adapted from Rob Miller


In-class Exercise

Generate a KLM model for deleting a file from


your desktop
Estimate the time it would take using the
provided operator times
Compare the predicted time with the actual
time
In-class Exercise

Generate GOMS model for deleting a file from


your desktop using different methods

Compare the models for deciding which should


be used, and in which contexts

You might also like