§8-GOMS + Fitts’ Law + Hick's Law Flashcards
Rule based evaluation in the waterfall model
evaluating and refining requirements
list three techniques for rule based evaluation
GOMS with KLM
Fitts’ law
Hicks law
Describe GOMS
- Describe user behaviour in terms of goals, operators, methods, selection rules
- Goals: high level task that user is trying to accomplish
- Operators: elementary perceptual, motor or cognitive acts,
- Methods: any procedure which combines operators into a sequence to achieve one of the goals
- Selection rules: used to decide on a particular method when multiple methods are available for accomplishing a particular goal.
Examples of GOMS
Editing a text:
- G - editing a manuscript, or, locating a line
- O – keystrokes, mouse clicks
- Methods – control F, enter search query, press next, click on line
- Selection rules (skim read text if very short, use Find and Replace if document is very large or unfamiliar)
Purpose of GOMS analysis
- To check that frequent goals can be achieved quickly
- Imposing a hierarchy on operators
- confirm that UI contains all needed functions
- that similar tasks are performed similarly
=> coverage, consistency
- determine operator sequencing – the order in which individual operations are done
issues with GOMS analysis:
Explain how interacting with a GUI can be considered in terms of GOMS
Involves:
- establishing a goal ~ editing a text
- forming an intention/sub-goal (~ deleting a phrase)
- specifying a sequence of actions (= a method)
- executing the actions
- perceiving the state of the system
- interpreting/inferring from the state of the system
- evaluating the state of the system with respect to the goals and intentions
Steps needed to perform GOMS analysis
- Generate the task description by
- picking a high level user Goal
- write Methods for reaching the goal which may invoke sub-goals
- write Methods for sub-goals
- decomposition into sub-goals is recursive and stops when Operators are reached - evaluate your description of the task (KLM calculations, Hicks/Fitts)
- Apply the results to the user interface (decide among alternative methods)
(4. Iterate)
Draw a diagram reducing the goal of editing a text to subgoals, operators and methods (LABELLING)
cf with p9 of §8
issues related to GOMS models in general
- lowest level operators should have constant execution time for a particular user
- predict time taken for a user/computer to perform the task – sum the serial operators that the task comprises
- GOMS allows ``prediction” of time taken for a user to perform a particular task when using a GIVEN GUI DESIGN (… comparison, assumption shouldn’t change …)
issues about GOMS KLM (keystroke level model) + what is it
- Operators are said to be `keystroke-level’ if they are at a level of actions like pressing keys, moving mouse, pressing buttons.
- a standard set of operators whose (relative) execution times have been estimated from experimental data
What are the standard set of five operators in the GOMS KLM?
KP, H, M, R Keying Pointing Homing Mentally preparing Responding (computer, that is)
Keying
The time it takes to tap a key on the keyboard or click a mouse button
Not independent of what is being typed
Pointing
Time it takes user to point to a position on a display
excludes button press
Depends on accuracy, target distance
Homing
Time taken for user’s hand to move from keyboard to mouse or vice versa
Targets are large, movement is well practiced,
Mentally preparing
time taken for user to prepare for next step
depends on cognitive processes involved
e. g.
- remembering a filename
- finding something on the screen
Responding
the time that a user must wait for a computer to respond to input
- if response seems to have occurred then the user is likely to become uneasy – therefore important for interfaces to provide feedback if delays are unavoidable (e.g. progress bar that accurately reflects time remaining else unease again)
Things to remember when doing KLM calculations in the exam
- spell out assumptions e.g. “assume focus is on the dialog box, so typing on the keyboard will enter text in the text field directly”
- one K for each keypress
- H when switching from keyboard/mouse and back
- use consistent rules for deciding when to insert Ms
- spell out assumptions about the initial state (e.g. hand is on the keyboard, current state of the system)
- Be consistent in the assumptions used – the whole point of rule based evaluation is for COMPARISONS of alternative designs – limited in use for predictions
- ** choose the design which requires the shortest time under the same set of assumptions
Examples of KLM calculations (***********DO THE ONES ON THE SLIDES and compare your answers)
- UI in correct state, just need to enter the keystrokes
- hand on keyboard, wrong button selected
- presenting partial result as it is typed
- textual prompt
- ignore time to read and understand what needs to be done – ask user “are you ready to perform the task” before we start timing.
List of six activities that require an M
listing the gestures is unambiguous given precise statement of the initial conditions (K, L, M = gestures)
Examples of activities that take an M:
- initiating a task
- making a strategy decision
- retrieving a chunk from memory
- finding something on the screen
- thinking of a task parameter
- verifying that an action is correct
6 heuristics for placing mental preparation operations
Follow in sequence:
0 – initial insertion of candidate Ms
1 – deletion of anticipated Ms
2 – deletion of Ms within cognitive units
3 – deletion of Ms before consecutive terminators
4 – deletion of Ms that are terminators of a command
5 – deletion of overlapped Ms
rule0: initial insertion of candidate Ms
- Insert M in front of all Ks
- Place Ms in front of any P that selects a command
- do not place Ms in front of any Ps that point to arguments of those commands
P -> MP
K -> MP
unless P selects args for command rather than command itself
rule1: deletion of anticipated Ms
- delete M if the operator after is fully anticipated by the operator before
e.g. move mouse with intent of tapping button when reach the target
MPMK –> MPK
MAMB -> MAB
if B is fully anticipated by A
rule2: deletion of Ms within cognitive units
if a string of Ms belongs to the same cognitive unit then delete all but the first
MKMKMK -> MKKK
if the three keystrokes are part of the same cognitive unit
a cognitive unit is a contiguous sequence of typed characters that form a command name, or that is required as an argument to a command
rule3: deletion of Ms before consecutive terminators
Delete Ms that occur before a redundant delimiter of a cognitive unit
or if there are multiple keys in the delimiter (ctrl alt del, then delete Ms between the keystrokes in the delimiter)
(…) = delimiter
M(KMKMKMK) -> M(KKKK)
rule4: deletion of Ms that are terminators of a command
If K is a delimiter following a constant string (e.g. command name) then delete M in front of it
delete M before K for enter after a command
**but keep M before K if the string was not well known / an argument – we think for a bit before committing an argument
** but delete if the string was not an argument or was a constant (we don’t think after typing ls -la before pressing enter)
rule5: deletion of overlapped Ms
delete any Ms that overlap an R – a delay with the user waiting for a response from the computer
What can GOMS model
- helps in comparing different UI designs
- task must be goal directed, can’t model creative activities
- task must be a routine cognitive skill rather than problem solving; good for machine operators
Pros of GOMS
- qualitative measures (comparison, identifying subgoals, …) and quantitative measures (time predictions and comparisons)
- less work than in-lab user observation – no users
- easy to modify when the UI is revisited (since underlying timings/KLM operators are the same)
Cons of GOMS
- rule based evaluation is more complex than heuristic evaluation
- time/effort
- only works for goal directed tasks
- assumes tasks with expert performance, ignores role of error
- does not address many UI issues – readability, ease of memorising icons, commands.
- does not model learning/increasing proficiency over time/changes in workflows
Define Fitts’ Law
- empirical model of estimated movement time to select a target on a computer display
- define D, S, a, b, MT
- a, b are empirically derived constants
- D is distance to target centre
- S is size of target
ID = lg(D/S + 1), index of difficulty, independent of user.
MT = a + b ID
MT increases with smaller S, larger D
smaller ID -> “easier”
coefficients a, b in Fitts law are mainly determined by the pointing device and is fairly uniform across users
Define Hicks Law
- empirically models the time to make a selection decision
- the more choices of a given kind you have, the longer it takes you to come to a decision
DT = a + b lg(n+1)
where n = # choices
coefficients a, b in Hick’s law are user dependent – how the choices are presented, and how habituated to the system the user has become
choices presented in a confusing manner? -> both a and b increase
habituation decreases b (dependence upon number of choices) ~~ for a given number of choices, time decreases over time; marginal increase in decision time arising from new choices decreases over time.
Applicability of Fitts law
- assumes rapid, aimed movement (not drawing, writing)
- movement time is a function of the distance moved and precision demanded by the size of the target
- precision is measured by the target’s index of difficulty
- only applies to motions that are small relative to human body size and that are uninterrupted (i.e. can be made in one continuous motion) – usually reasonable for most GUIs
- assists in estimating operator execution time, choice of object sizes
- may also be used to evaluate input devices
Apply Fitts law to larger icons on MS toolbar
- larger icons -> lower time
- recall -> recognition
- … is one reason why labelled tools can be accessed faster
Implications of Hick’s law for design
- more stimuli/choices faced -> longer it takes for users to make a decision