1 rensselaer cognitive science keystroke-level model: intro the simplest of all goms models: om...

32
1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!! No explicit goals or selection rules O perators and M ethods (in a limited sense) only “Useful where it is possible to specify the user’s interaction sequence in detail” (CMN83, p. 259). Control structure: Flat Serial or Parallel: Serial Level of Analysis: Keystroke-level operators

Upload: audrey-osborne

Post on 29-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

1 RensselaerCognitiveScience

Keystroke-Level Model: Intro

The simplest of all GOMS models: OM only!!!

No explicit goals or selection rules

Operators and Methods (in a limited sense) only

“Useful where it is possible to specify the user’s interaction

sequence in detail” (CMN83, p. 259).

Control structure: Flat

Serial or Parallel: Serial

Level of Analysis: Keystroke-level operators

Page 2: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

2 RensselaerCognitiveScience

area code exchange line pin1 2 3 4 5 6 7 8 9 10 11 12 13 14

num 7 0 3 9 9 3 1 3 5 7 1 2 3 4

Keystroke-Level Model: Example

TAO example

Page 3: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

3 RensselaerCognitiveScience

Keystroke-Level Model: Overview

Step 1: Lay out assumptions

Step 2: Write out the basic action sequence (list the keystroke-

level physical operators involved in doing the task)

Step 3: Select the operators and durations that will be used

Step 4: List the times next to the physical operators for the task

Step 4a: If necessary, include system response time operators

for when the user must wait for the system to respond

Step 5: Next add the mental operators and their times

Step 6: Sum the times of the operators

Page 4: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

4 RensselaerCognitiveScience

Keystroke-level Model: Operators

K: Keystroke

T(n): Type a sequence of n characters on a keyboard

P: Point with mouse to a target on a display

B: Press or release mouse button

BB: Click mouse button

H: Home hands to keyboard or mouse

M: Mental act of routine thinking

W(t): Waiting time for system to respond

Page 5: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

5 RensselaerCognitiveScience

Card, Moran, and Newell on “Mentals”

“M operations represent acts of mental preparation for applying

physical operations. Their occurrence does not follow directly

from the physical encoding, but from the specific knowledge

and skill of the user” p. 267

“The rules for placing M’s embody psychological assumptions

about the user and are necessarily heuristic, especially given

the simplicity of the model” p. 267.

Page 6: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

6 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

•Pointing to a cell on a spreadsheet is pointing to an argument -- no M•Pointing to a word in a manuscript is pointing to an argument -- no M•Pointing to a icon on a toolbar is pointing to a command -- M•Pointing to the label of a drop-down menu is pointing to a command -- M

Page 7: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

7 RensselaerCognitiveScience

Heuristics for inserting mental operators

Rules 1-4 are heuristics (rules of thumb) for deleting

mentals “A single psychological principle lies behind all the deletion

heuristics . . . physical operations in methods are chunked into

submethods” p. 268

Page 8: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

8 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

RULE 1: If an operator following an M is fully anticipated1 in an operator just previous to M, then delete the M (e.g., PMK --> PK or PMBB --> PBB).

•That is, the “M” drops out because the “P” and “BB” belong together in a chunk -- mental unit.•The button press “BB” is fully anticipated as the cursor is being moved to the target.

Page 9: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

9 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

RULE 1: If an operator following an M is fully anticipated1 in an operator just previous to M, then delete the M (e.g., PMK --> PK or PMBB --> PBB).

RULE 2: If a string of MK’s or MB’s belongs to a cognitive unit (e.g., the name of a command), then delete all M’s but the first.

•Works with command names -- but what is a command name in a GUI interface?

•Physical actions: P(File)+ B + P(Save) + B•RULE 0: MP + MB + MP + MB•RULE 1: MPB + MPB•Does rule 2 apply to eliminate the middle mental? MPBPB ?

Page 10: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

10 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

RULE 1: If an operator following an M is fully anticipated1 in an operator just previous to M, then delete the M (e.g., PMK --> PK or PMBB --> PBB).

RULE 2: If a string of MK’s or MB’s belongs to a cognitive unit (e.g., the name of a command), then delete all M’s but the first

RULE 3: If a K is a redundant terminator (e.g., the terminator of a command immediately following the terminator of its argument), then delete the M in front of it.

•Applies to clicking OKAY in dialog buttons after you select a command; e.g., in Powerpoint, you have selected text, gone to the FORMAT:FONT palette, clicked on bold, and now point and click on OKAY -- pointing to and clicking on OKAY is PBB, not MPBB

Page 11: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

11 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

RULE 1: If an operator following an M is fully anticipated1 in an operator just previous to M, then delete the M (e.g., PMK --> PK or PMBB --> PBB).

RULE 2: If a string of MK’s or MB’s belongs to a cognitive unit (e.g., the name of a command), then delete all M’s but the first

RULE 3: If a K is a redundant terminator (e.g., the terminator of a command immediately following the terminator of its argument), then delete the M in front of it.

RULE 4: If a K terminates a constant string (e.g., a command name), then delete the M in front of it; but if the K terminates a variable string (e.g., an argument string), then keep the M in front of it.

Page 12: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

12 RensselaerCognitiveScience

Heuristics for inserting mental operators

The four heuristics do NOT capture the notion of

method chunks precisely -- these are only

approximations

Ambiguities: Is something “fully anticipated” or is

something else a “cognitive unit”?

Much of this ambiguity stems from variations in

expertise of the users we are modeling

Page 13: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

13 RensselaerCognitiveScience

Heuristics for inserting mental operators

Basic psychological principle: physical operations in methods are chunked into submethods.

RULE 0: Insert M’s in front of all K’s or B’s that are not part of argument strings proper (e.g., text or numbers). Place M’s in front of all P’s that select commands (not arguments) or that begin a sequence of direct-manipulation operations belonging to a cognitive unit.

RULE 1: If an operator following an M is fully anticipated1 in an operator just previous to M, then delete the M (e.g., PMK --> PK or PMBB --> PBB).

RULE 2: If a string of MK’s or MB’s belongs to a cognitive unit (e.g., the name of a command), then delete all M’s but the first

RULE 3: If a K is a redundant terminator (e.g., the terminator of a command immediately following the terminator of its argument), then delete the M in front of it.

RULE 4: If a K terminates a constant string (e.g., a command name), then delete the M in front of it; but if the K terminates a variable string (e.g., an argument string), then keep the M in front of it.

Page 14: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

14 RensselaerCognitiveScience

KLM--mentals: example 1.

Example: SET COLUMN WIDTH 5<cr>

List the keystroke level physical operators involved in doing the task

KKKKKKKKKKKKKKKKKKK (19 K’s)

RULE 0

M+KKKK+M+KKKKKKK+M+KKKKKK+K+M+K or

M+4K(set_)+M+7K(column_)+M+6K(width_)+1K(5)+M+1K(<cr>)

RULE 1 no change in this example

RULE 2

M+17K(set_column_width_)+1K(5)+M+1K(<cr>)

RULE 3 No change in this example

Rule 4 No change in this example

Page 15: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

15 RensselaerCognitiveScience

KLM--mentals: example 2

Example: spellcheck “catelog”

List the keystroke level physical operators involved in doing the task P+BBBB+P+BB (where BB is a mousedown + mouseup, and BBBB is a

doubleclick)

RULE 0 P+M+BBBB+M+P+M+BB

RULE 1 P+BBBB+M+PBB

RULE 2 n/a (“catelog” + spellcheck do not form a cognitive unit)

RULE 3 n/a

RULE 4 n/a

Page 16: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

16 RensselaerCognitiveScience

KLM--mentals: example 3

Example: save a file on a Mac using menus

List the keystroke level physical operators involved in doing the

task P+B+P+B

RULE 0 M+P+M+B+M+P+M+B

RULE 1 M+P+B+M+P+B

RULE 2 n/a or M+P+B+P+B ???

Issue: Is this FILE-->SAVE menu selection a single cognitive unit

or two?

Page 17: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

17 RensselaerCognitiveScience

Keystroke-Level Model: m1 current

Step 1: Lay out your assumptions There are several fields on the display, first thing that any error

recovery method must do is to identify the field to be changed.

In this case the field is the calling-card field (CCN).

For purposes of this exercise, we assume the error is made in

the second number of the exchange.

TAO’s hands are on the keyboard

Step 2: Write out the basic action sequence (the

physical operators) ƒkey(ccn) + digit(14) + enterKey

Page 18: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

18 RensselaerCognitiveScience

operator abbrev durationmental M 1200mseckeystroke-<key> K 280msecmouseDown or Up B 100msecclick (mouseD & Up) BB 200msechoming H 400mecpointing w/mouse P 1100msecdoubleClick BBBB 400msec

Keystroke-Level Model: m1 current

Step 3: select the operators and durations that will be

used We will use the ones from Kieras (1993).

Page 19: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

19 RensselaerCognitiveScience

Method 1 of TAO task NUM op type timepress reset function keyfKEY(ccn) 1 K 0.28type digits digit 14 K 3.92outpulse new number to dbaseenter 1 K 0.28

total time 4.48

Keystroke-Level Model: m1 current

Step 4: List the times next to the physical operators

for the task.

Page 20: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

20 RensselaerCognitiveScience

Method 1 of TAO task NUM op type timeM before cmd 1 M 1.20press reset function key fCCN 1 K 0.28type digits digit 14 K 3.92M terminates argument string 1 M 1.20outpulse new number to dbase enter 1 K 0.28

total time 6.88

Keystroke-Level Model: m1 current

Step 5: Next add the mental operators and their times

Step 6: Sum the times of the operators Predicted time for current method is 6.88 sec

(note: this time is the same regardless of “where” the error is

made)

Page 21: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

21 RensselaerCognitiveScience

Keystroke-Level Model: m2 bs/delete

Step 1: Lay out your assumptions

s/a model 1 except;

delete key backs up and deletes each digit

Step 2: Write out the basic action sequence (the physical

operators)

ƒkey(ccn) + delKey(10) + digit(10) + enterKey

Step 3: Same operators as for model 1.

Page 22: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

22 RensselaerCognitiveScience

Keystroke-Level Model: m2 bs/delete

Step 4: List the times next to the physical operators for the task.

Method 2: bs/delete NUM op type timepress reset function key fCCN 1 K 0.28bs/delete to digit delKey 10 K 2.80digits to retype digit 10 K 2.80outpulse new num to dbaseenter 1 K 0.28total time 6.16

Page 23: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

23 RensselaerCognitiveScience

Keystroke-Level Model: m2 bs/delete

Step 5: Next add the mental operators and their times

Step 6: Sum the times of the operators

Method 2: bs/delete NUM op type timeM before cmd 1 M 1.20press reset function key fCCN 1 K 0.28bs/delete to digit delKey 10 K 2.80digits to retype digit 10 K 2.80verify done 1 M 1.20outpulse new num to dbase enter 1 K 0.28total time 8.56

Page 24: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

24 RensselaerCognitiveScience

Keystroke-Level Model:m3 bkup/delete

Step 1: Lay out your assumptions

s/a model 1 except;

backup key backs up without deleting. Delete key backs up and

deletes

Step 2: Write out the basic action sequence (the physical

operators)

ƒkey(ccn) + bkupKey(9) + delKey(1) + digit(1) + enterKey

Step 3: Same operators as for model 1.

Page 25: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

25 RensselaerCognitiveScience

Keystroke-Level Model: m3 bkup/delete

Step 4: List the times next to the physical operators for the task.

Method 3: bkup-delete NUM op type timepress reset function key fCCN 1 K 0.28backup to digit bkup 9 K 2.52delete digit del 1 K 0.28digits to retype digit 1 K 0.28outpulse new num to dbase enter 1 K 0.28total time 3.64

Page 26: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

26 RensselaerCognitiveScience

Keystroke-Level Model: m3 bkup/delete

Step 5: Next add the mental operators and their times (Your turn!!!

Our answer are on the next page, no peeking!!!)

Method 3: bkup-delete NUM op type time

press reset function key fCCN 1 K 0.28

backup to digit bkup 9 K 2.52

delete digit del 1 K 0.28

digits to retype digit 1 K 0.28

outpulse new num to dbase enter 1 K 0.28

total time

Page 27: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

27 RensselaerCognitiveScience

Keystroke-Level Model: m3 bkup/delete

Step 5: KLM w/mentals.

Method 3: bkup-delete NUM op type timeset up workstation to retype number 1 M 1.20press reset function key fCCN 1 K 0.28backup to digit bkup 9 K 2.52delete digit del 1 K 0.28digits to retype digit 1 K 0.28verify done 1 M 1.20outpulse new num to dbase enter 1 K 0.28total time 6.04

Page 28: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

28 RensselaerCognitiveScience

Keystroke-Level Model: m4 zap-gp

Step 1: Lay out your assumptions

s/a model 1 except;

Four separate function keys, zaps (deletes) either area code,

exchange, line, or pin number. Retyping need only retype the

zapped numbers.

Step 2: Write out the basic action sequence (the physical

operators)

ƒkey(ccn) + zapExch(1) + digit(3) + enterKey

Step 3: Same operators as for model 1.

Page 29: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

29 RensselaerCognitiveScience

Keystroke-Level Model: m4 zap-gp

Step 4: List the times next to the physical operators for the task.

Your turn!! (Our answer are on the next page, no peeking!!!)

Method 4: zap-gp NUM op type time

total time

Page 30: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

30 RensselaerCognitiveScience

Keystroke-Level Model: m4 zap-gp

Step 5: Next add the mental operators and their times (Your

turn!!! Our answer are on the next page, no peeking!!!)

Method 4: zap-gp NUM op type time

press reset function key fCCN 1 K 0.28

zap-group zap 1 K 0.28

digits to retype digit 3 K 0.84

outpulse new num to dbase enter 1 K 0.28total time

Page 31: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

31 RensselaerCognitiveScience

Keystroke-Level Model: m4 zap-gp

Step 5: KLM model w/mentals

Method 4: zap-gp NUM op type timeset up workstation to retype number 1 M 1.20press reset function key fCCN 1 K 0.28zap-group zap 1 K 0.28digits to retype digit 3 K 0.84verify done 1 M 1.20outpulse new num to dbase enter 1 K 0.28total time 4.08

Page 32: 1 Rensselaer Cognitive Science Keystroke-Level Model: Intro The simplest of all GOMS models: OM only!!!  No explicit goals or selection rules  Operators

32 RensselaerCognitiveScience

Keystroke-Level Model:

Summary

Of the three new methods, only one seems likely to be fast enough to justify expense of redesign

predicted timeMethod 1: Current 6.88Method 2: bs/delete 8.56Method 3: bkup-delete 6.04Method 4: zap-gp 4.08