Keystroke Level Model - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Keystroke Level Model

Description:

4/28/99. 9. Placement of M's ... rule 3: if K is redundant terminator, delete M. rule 4: if K terminates constant string (i.e. ... – PowerPoint PPT presentation

Number of Views:338
Avg rating:3.0/5.0
Slides: 21
Provided by: jamesa50
Category:

less

Transcript and Presenter's Notes

Title: Keystroke Level Model


1
Keystroke Level Model
  • Professor L. A. Rowe
  • April 28, 1999

2
Keystroke Level Model
  • Card, Moran, NewellCACM, July 1980
  • Outline
  • Problem statement
  • Model
  • Empirical validation
  • Applications

3
Problem Statement
  • Goal
  • Develop simple model to describe time to do task
    with a given method on an interactive system
  • Ttask Tacquire Texecutewhere Ttask total
    time to complete task Tacquire time to select
    method to complete task Texecute time to
    perform method
  • Model predicts Texecute
  • Assume expert users and no errors

4
Model
  • Texecute ?(time to execute primitive op)
  • Primitive operations
  • K key/button press
  • P point to target with mouse
  • H home hands to keyboard or mouse
  • D draw line with mouse
  • M mental preparation (pause)
  • R system response time

5
Model (cont.)
  • Times for primitive operations are predicated
    from experiments
  • Time to press key/button ranges between
  • 0.08 sec/char fast typist
  • 0.28 sec/char average typist
  • 1.2 sec/char slow typist

6
Actual Parameters
D distance S size .8, 1.5
nD segments lD total length
values derived from experiments
7
Encoding Method
  • Code method as sequence of primitive operations,
    sum up times
  • Example replace 5 letter word with another
  • Editor 1 keyboard based
  • next line MK(line feed)
  • substitute command MKs
  • enter new word 5Kxxxxx
  • terminate arg MK(return)
  • enter old word 5Kzzzzz
  • terminate arg MK(return)
  • terminate command K(return)
  • Texecute 4tM 15tK 8.4 sec

8
Encoding Method (cont.)
  • Editor 2 mouse based
  • grab mouse Hmouse
  • point to word Pword
  • select word Kyellow mouse button
  • home to keyboard Hkeyboard
  • replace command MKR
  • type new word 5Kzzzzz
  • terminate type in MK(esc)
  • Texecute 2tM 8tK 2tH tP 6.2 sec
  • Model Editor 2 is 2 secs (i.e. 25) than editor 1

9
Placement of Ms
  • rule 0 place M before all Ks not part of arg
    strings and before all Ps that select commands
  • for each M do

rule 1 if operator fully anticipated, delete
M(e.g. PMK ? PK) rule 2 if string of MKs
belongs to cognitive unit, delete all Ms but
first rule 3 if K is redundant terminator,
delete M rule 4 if K terminates constant string
(i.e. command), delete itif K terminates
variable string (i.e. arg), keep it
10
Placement of Ms
  • Example Mouse-based Editor 2 sequence
  • HmPwordKyHkKR5KK(esc)
  • ? HmPwordMKyHkMKR5KMK(esc)
  • ? HmPwordKyHkKR5KK(esc)

rule 0
rule 1
11
Placement of Ms
Example Keyboard-based Editor 1
sequence K(lf)Ks5KK(ret)5KK(ret)K(
ret) ? MK(lf)MKs5KMK(ret)5KMK(ret)
MK(ret) ? MK(lf)MKs5KMK(ret)5KMK
(ret)K(ret)
rule 0
rule 3
12
Empirical Validation
  • Conducted experiment on real systems to compare
    predictions to observations
  • 14 tasks on 3 types of systems
  • text editors
  • graphics systems
  • command executers
  • Users
  • practice using system
  • were tested to determine typing and drawing speed

13
Empirical Validation
  • Model predicts within 20 of average time to
    complete task
  • 0.5 secs ? Tacquisition ? 4 secs

Text editors
Graphics editors
Observed time
Predicted time
14
Why is KLM Useful?
  • Provides model to reason about keystrokes
    required to implement operation
  • Reminds us to think about timer required for
    basic interface actions
  • Mental processing (M) is significant

15
Applications
  • Benchmark existing systems
  • Develop sample tasks, compare editors
  • Results
  • POET SOS DISPED
  • predicted 100 84 45
  • actual 100 93 46

16
Parametric Analysis
  • Compare methods to accomplish task
  • Example
  • 2 methods to correct spelling error in word which
    is N words behind the current cursor position

17
Parametric Analysis
  • Method 1
  • erase back to word, correct it, retype text
  • next line MK(ctrl)
  • substitute command n((1/c)MKw)
  • enter new word 5.5K
  • terminate arg 5.5(n1)K
  • Texecute ? (1 n/c)tM (1 6.5)tK
  • 1.6 2.16n secs
  • Notes
  • 1. c is chars per chunk ? 4
  • 2. average letters per word ? 5.5

18
Parametric Analysis
  • Method 2
  • exit type-in mode, replace word, re-enter type-in
    mode
  • terminate type-in MK(esc)
  • point/select error word Hmouse Pword
    Kyellow button
  • invoke replace command Hkeyboard MKR
  • type new word 4.5K
  • terminate replace MK(esc)
  • point/select type-in Hmouse Pword Kyellow
    button
  • reenter type-in HkeyboardKI
  • Texecute ? 4tM 10.5)tK 4tH 2tP
  • 12.1 secs

19
Parametric Analysis
  • Method 3
  • Backskip/resume commands
  • set up backskip MK(ctrl)
  • execute n 1 backskips (n 1)(1/c)MKS
  • back word MKW
  • type new word 4.5K
  • execute resume M2K(ctrl-R)
  • Texecute ? 3 (n 1)/c)tM (n 7.5)tK
  • 5.8 0.62n secs

20
Parametric Analysis
  • Compare by plotting

15
Erase method (1)
Replace method (2)
10
Texecute (secs)
Backskip/resume method (3)
5
n (words)
Write a Comment
User Comments (0)
About PowerShow.com