How Do People Really Use Text Editors?

John Whiteside, Norman Archer, Dennis Wixon, and Michael Good

Digital Equipment Corporation
Maynard, Massachusetts, USA

Originally published in Proceedings of the SIGOA Conference on Office Information Systems (Philadelphia, June 21-23, 1982), SIGOA Newsletter, 3 (1 & 2), June 1982, pp. 29-40. Included here with permission. Copyright © 1982 by ACM, Inc.

Abstract

Keystroke statistics were collected on editing systems while people performed their normal work. Knowledge workers used an experimental editor, and secretaries used a word processor. Results show a consistent picture of free use patterns in both settings. Of the total number of keystrokes, text entry accounted for approximately 1/2, cursor movement for about 1/4, deletion for about 1/8, and all other functions for the remaining 1/8. Analysis of keystroke transitions and editing states is also presented. Implications for past research, editor design, keyboard layout, and benchmark tests are discussed.

1. Introduction

Different approaches have been used to study usage of text editors. Several researchers have proposed models of user performance and then tested user behavior with respect to these models [1, 2, 3, 4, 5]. A second approach has been to compare editors by having subjects perform specific benchmark tasks [9]. A third approach has been to compare command transition matrices for various editors [6].

1.1. Ideal Models

Models of text editor performance have focused either on predicting the time which users would take to perform a particular task, or on the strategy which users would employ to accomplish a particular goal. Models which focus on time [1, 2, 3] treat the overall task time as the sum of the times which various subtasks take. These subtasks include operations such as typing, pointing, thinking, and waiting for system response. Models which focus on commands include the GOMS model [1]. Hammer’s constrained optimal model [5], and Embley and Nagy’s model based on file comparison [3].

All of these models share a common attribute of concentrating on idealized performance. For example, Card et al. ignore errors, give subjects practice problems, and instruct them with respect to how particular activities are to be performed. Alternatively, the performance of users is considered as a deviation from the model. Such deviation is interpreted as suggesting the need for user training [5] or has been tabulated and classified according to user experience [3]. Hammer found that an optimal model predicted user performance rather poorly. Constraining the model by taking into account only those commands which were actually used improved the fit considerably.

1.2. Benchmark Tasks

One of the most detailed analyses of editors was conducted by Roberts [9]. She developed methods for comparing editors on the basis of speed of use, ease of learning, range of functionality, and error-proneness. Speed analyses of editors involved the performance of benchmark tasks by experts on each system. She used these methods to compare the TECO, Wylbur, NLS. and Wang text editors. TECO and Wylbur were found to be significantly slower to use than the other two editors. TECO was also significantly harder to learn than the other three editors.

1.3. Transition Matrices

Hammer and Rouse [6] analyzed free keystroke records for both programmers and documenters using either SOS or TECO. Behavior within an editor was categorized into uniform editor primitives, such as type one line, alter one character, type many lines, and alter many characters. The matrices of transition probabilities between editor primitives were then compared to an overall transition matrix which represented the average of various editors. The results led Hammer and Rouse to conclude that the differences between editors could have been due to the fact that different people used them. In another analysis, Hammer and Rouse compared the same users editing programs and documents and found that about 75% of the subjects used similar techniques for each. All of these analyses were applied to editors which use hard copy terminals.

1.4. Present Approach

Instead of postulating an ideal editing model, we attempted to record and describe actual usage patterns. To this end keystroke-level data were collected while people performed their normal work on either an experimental editor or a word processing editor. Unlike previous research, this free-use logging was collected solely from screen editors and analyzed at several levels. Recommendations for editor design and evaluation procedures are based on actual editor usage.

2. Method

In the present experiment, users’ keystrokes were logged and time-stamped for two editors. The first editor was an experimental editor called the Editor Prototyping Tool (EPT) The second editor was Digital Equipment Corporation’s 200 Series commercial word processor (WPS). Both of these are character-oriented screen editors, but they differ in important ways.

2.1. EPT Description

EPT was designed specifically for research purposes. Thus, it contained a built-in keystroke-logging facility, designed not to influence software performance. EPT provided a simple set of editing functions including cursor movement anywhere on the screen, search, text relocation, and text deletion. Typing could be done in either insert or overstrike mode. These functions were activated by dedicated function keys: in most cases by a single keystroke. A short help facility was provided.

EPT contained few of the formatting functions present in a normal word processor; however it did perform automatic word wrapping.

2.2. WPS Description

The WPS word processor is a character-oriented, screen editor in which editing is done on the bottom line of the screen. The cursor may be moved within the boundaries of existing text. The keyboard has a variety of special keys for editing and cursor movement A special “gold” key on the keypad, when used in combination with other keypad keys and with keys on the regular keyboard, greatly expands the number of possible functions which may be selected directly. WPS has logical equivalents for all EPT functions, and has many more functions in addition, including sophisticated text formatting functions.

2.3. Subjects

Six subjects contributed to the EPT work sample. These subjects were knowledge workers creating and revising their own reports and memos. The logging of data was not begun until all subjects had at least three weeks experience with EPT, which was sufficient time to allow these subjects to learn the features of this simple editor.

The subjects using WPS were eight secretaries who were carrying out regular secretarial and administrative duties for a research and development department of Digital Equipment Corporation. The experience of the subjects varied widely, with three having had almost two years of experience with the system and the full set of three training courses. One had a year experience and one training course. The remaining four subjects had no training course but were self taught, with experience of one to six months on the system.

2.4. Keystroke Logging

As mentioned above. EPT had a built-in logging facility. A permanent record of every keystroke was made, together with time of occurrence. EPT ran under the VMS timesharing system on a VAX-11/780 computer, supporting DEC VTI00 terminals.

For the WPS word processing system, character streams and occurrence times from six VTI00W terminals were collected by a PDP 11/34 computer, in such a way that WPS system performance was not affected. The recording was done over a period of 11 days.

3. Results

3.1. General Characteristics of the Work Samples

Table 1 shows some summary characteristics of the work samples.

EPT WPS
Total person-hours
in sample
212 482
Hours taking breaks
(over 150 sec)
127 390
Hours active work 86 92
Total keystrokes 510,503 406,102

Table 1: Comparison of EPT and WPS Work Samples

The samples contain roughly equal numbers of keystrokes, about half a million each. Total person hours in the WPS sample were over twice as many as in the EPT sample; this discrepancy was due to the secretaries’ habit of turning on their machines in the morning and leaving them running for the entire day. EPT ran on a general timesharing system. so users were less likely to leave the editor running constantly. This difference can be seen by looking at the number of hours of inactivity (defined as the sum of all periods of greater than 150 seconds without a keystroke) which is much larger for the WPS sample. The remaining time, hours of active work, is comparable for both samples at somewhat under 100 hours.

3.2. Individual Keystroke-Level Analysis

Table 2 shows summary statistics for keystroke usage for the EPT editor. The left-hand column identifies the function. Each entry refers to an individual key, except for the case of “printing characters,” which includes all alphanumerics and symbols under a single heading. The keys are ordered by frequency of usage, in terms of percentage of total keystrokes recorded. This number is shown in the second column; the percentages are based on the total number of keystrokes in the work sample (510,503). The remaining two columns in Table 2 show data with respect to time. The percentage of use by time is shown in the third column, and the mean time per keystroke is shown in the fourth column. In computing these statistics, we assigned the time preceding each keystroke to the keystroke in question. Analogous computations based on the time following each keystroke give very similar results.

Keys Percent of
keystrokes
Percent
of time
Time per
keystroke
Printing characters 53.58 46.84 0.53
Left-Arrow 12.90 5 08 0.24
Right-Arrow 12.52 5.49 0.27
Delete 7.35 7.38 0.61
Down-Arrow 5.67 9.89 1.06
Up-Arrow 3.15 5.89 1.14
Return 1.38 4.38 1.93
Tab 1.01 1.66 0.99
Word 0.34 0.39 0.71
Insert/Overstrike 0.33 1.02 1.86
Do It 0.28 0.97 2.14
Backup 0.24 0.64 1.36
Next screen 0.22 2.34 6.38
Next Line 0.21 0.67 1.93
Advance 0.17 0.42 1.53
Exit 0.14 2.69 11.89
Last Screen 0.10 1.02 6.15
Erase 0.10 0.59 3.76
Search 0.07 0.66 6.17
Paragraph 0.05 0.17 2.23
Move 0.04 0.17 2.38
Cancel 0.03 0.28 5.92
Back Space 0.03 0.07 1.64
Copy 0.02 0.18 4.53
Goto Page 0.02 0.43 11.28
Sentence 0.02 0 43 12.80
Help 0.02 0.15 5.66
Command 0.01 0.13 7.74
Page 0.01 0.04 2.86
Totals 100.00 100.00 0.61

Table 2: EPT Keystroke Frequency Table

Table 2 shows that typing accounted for about one half of editor usage; both in terms of keystroke frequency and time. The keystroke-level editing functions showed a non-uniform distribution of usage frequencies; the most frequently used functions are over 1000 times more frequent than the least frequently used functions. The top five editing functions account for more editing time than all the other functions combined. Four of these functions are the up, down, left, and right cursor movement functions — collective use of these functions accounted for about one quarter of user editing time. Single character deletion was the next most frequently used function, accounting for about 7% of users’ time.

Table 3 shows summary statistics for the WPS work sample. The format of Table 3 is the same as that for Table 2. The table treats “gold” key editing functions as a single keystroke. Typing accounted for about one half of user time, as was the case with the EPT work sample. The distribution of times across functions is again highly non-uniform. The three most often used functions (Advance, Line, Backup) are all cursor movement functions, similar to the arrow function in EPT. These three functions account for just over 25% of total editing time. Single character deletion (Rub Character) was the next most frequent function.

Keys Percent of
keystrokes
Percent
of time
Time per
keystroke
Printing characters 54.81 47.48 0.71
Advance 15.48 11.91 0.63
Line 10.30 6.27 0.50
Backup 6.59 7.41 0.92
Rub Character 3.33 3.35 0.82
Return 2.83 8 08 2.33
Tab 1.52 1.79 0.96
Word 1.24 0.65 0.42
Delete Character 1.11 0.90 0.66
Paragraph 0.44 0.86 1.57
Rub Word 0.24 0.46 1.53
Menu 0.23 2.69 9.66
Page 0.21 0.97 3.71
Delete Word 0.19 0.19 0.83
Upper Case 0.17 0.11 0.51
File Document 0.12 1.61 10.50
Select 0.13 0.38 2.40
Ruler 0.12 0.60 4.18
Manual Pagination 0.08 0.78 8.24
Date & Time 0.07 0.20 2.46
New Page 0.06 0.34 4.30
Underline 0.06 0.11 1.40
Gold Key 0.05 0.02 0.25
< > 0.05 0.09 1.60
Halt 0.04 0.11 1.96
Cut 0.04 0.12 2.36
Tab Pos 0.04 0.13 2.55
Top of Document 0.04 0.53 11.45
Rub Line 0.03 0.03 0.80
Control characters 0.03 0.11 2.71
Lower Case 0.03 0.04 1.11
Swap 0.03 0.03 0.81
Sentence 0.02 0.06 1.89
Search 0.02 0.28 9.43
View 0.02 0.14 4.78
Gold Paste 0.02 0.05 1.69
Center 0.02 0.04 1.37
Paste 0.02 0.10 4.79
Get Document 0.01 0.17 9.56
Bottom of Document 0.01 0.40 22.95
Advance to End 0.01 0.12 7.74
Rub Sentence 0.01 0.02 1.11
Hyphen Push 0.01 0.01 1.08
Cont Search 0.01 0.02 2.13
Backup to End 0.01 0.13 17.78
Subscript 0.01 0.01 1.80
Paragraph Marker 0.00 0.01 1.62
Superscript 0.00 0.02 2.53
Command 0.00 0.00 3.75
Hyphen Pull 0.00 0.01 0.64
Bold 0.00 0.00 1.33
Remove Underline 0.00 0.01 0.48
Dead Key 0.00 0.02 3.34
User Defined Key 0.00 0.01 8.17
Page Marker 0.00 0.00 6.62
Cont Search & Sel 0.00 0.00 1.12
Gold Cut 0.00 0.00 1.16
Undelete Word 0.00 0.00 3.18
Replace 0.00 0.00 1.51
Library 0.00 0.00 2.34
Print Hyphen 0.00 0.00 0.00
Abbreviation 0.00 0.00 0.00
Remove Sold 0.00 0.00 0.00
Undelete Character 0.00 0.00 0.00
Totals 100.00 100.00 0.82

Table 3: WPS Keystroke Frequency Table

3.3. Keystroke Transition Analysis

In addition to computing results at an individual keystroke level, we also examined transitions between keystrokes. Table 4 shows results of such analysis in the form of a keystroke transition matrix. The table shows keystroke transitions for the 10 most frequently used EPT functions. The function preceding the transition is shown along the left-hand margin. The function following the transition is shown along the top of the table. The entries in the matrix show the observed probability of transition from the row keystroke to the column keystroke. For example, the upper-left hand cell pertains to transitions between alphanumeric keys (printing characters). The transition probability of .92 indicates that if the user has just entered a printing character, the probability is .92 that the next keystroke will also be a printing character. The sum of all the probabilities in a row is always 1.0 (accounting for all transitions). Note that this is not true of the entries in Table 4; only the upper-left hand corner of the full 29 by 29 entry matrix is presented.

F
R
O
M TO –>
|
|
V
A/N Left Right Delete Down Up Return Tab Word Ins/Ovr
A/N .92 .00 .00 .03 .01 .00 .02 .00 .00 .00
Left .03 .93 01 .00 .01 .00 .00 .00 .00 .00
Right .03 .01 .92 .01 .00 .00 .00 .00 .00 .01
Delete .25 .00 .01 .70 .01 .00 .01 .01 .00 .00
Down .02 .08 .03 .01 .78 .03 .01 .01 .00 .00
Up .03 .04 .06 .00 .04 .78 .01 .00 .00 .00
Return .38 .00 .02 .02 .04 .07 .19 .24 .00 .00
Tab .52 .01 .01 .05 .03 .01 .00 .35 .00 .00
Word .00 .02 .01 .00 .00 .00 .00 .00 .86 .00
Ins/Ovr .42 .02 .06 .21 .06 .01 .02 .01 .00 .16

Table 4: EPT Keystroke Transition Probabilities (n = 1)

Table 5 shows a transition matrix similar to Table 4. except the upper entry in each cell shows the actual number of transitions of each type that took place. In addition to computing actual transitions, we also estimated how many transitions ought to occur, based on the assumption that the entries in the matrix are determined only by the marginal totals. The empirical matrices differ substantially from expectation, given such a hypothesis.

F
R
O
M TO–>
Key to entries:
observed number of transitions
expected number of transitions
|
|
V
A/N Left Right Delete Down Up Return Tab Word Ins/Ovr Totals
A/N 252543
146536
745
35279
1372
34231
9072
20100
2199
15506
708
8628
4487
3778
1153
2774
1
922
307
915
273504
Left 2156
35278
61052
8494
648
8241
298
4839
485
3733
310
2077
150
909
105
668
3
222
304
220
65846
Right 1971
34232
679
8242
58923
7997
774
4696
350
3622
254
2016
190
882
32
648
10
215
402
214
63893
Delete 9280
20100
155
4839
385
4695
26173
2757
536
2127
135
1184
288
518
214
381
1
126
153
125
37516
Down 464
15503
2347
3732
965
3622
311
2127
22722
1641
902
913
191
400
33
293
10
98
96
97
28936
Up 420
8629
659
2077
1003
2016
80
1184
703
913
12637
508
104
222
59
163
10
54
52
54
16105
Return 2664
3775
4
909
112
882
120
518
287
399
478
222
1371
97
1688
71
0
24
21
24
7045
Tab 2702
2774
41
668
55
648
253
380
174
294
41
163
22
72
1830
53
0
17
8
17
5177
Word 4
922
28
222
23
215
5
126
2
98
6
54
3
24
0
17
1482
6
1
6
1720
Ins/Ovr 711
915
32
220
102
214
358
125
104
97
17
54
29
24
12
17
0
6
279
6
1707
Totals 273513 65860 63894 37518 28943 16105 7051 5178 1721 1707 510503

Table 5: EPT Keystroke Transition Matrix, n = 1 (Totals from full matrix)

We were interested in describing the degree of organization. or degree of non-randomness, inherent in the users’ keystroke patterns. Suppose, as an example, that keystroke sequences are entirely random. We would then expect the empirical transition frequencies to be very close to those that we would predict on the basis of the marginal frequencies. Clearly, this is not the case for the empirical data shown in Table 5. A comparison of obtained with expected frequencies shows the extent to which the actual keystroke behavior deviates from random expectation. We can compute a chi-square statistic using the expected and obtained frequencies. This shows the two matrices to be significantly different at the .001 level (chi square = 2,249,886; df = 273). Another way of expressing the same idea is with an index of predictive association [7, p. 747]. This is an index varying from 0.0 to 1.0, which shows the extent to which knowing the initial state improves the accuracy of prediction of a subsequent state. The index of predictive association for the data in Table 5 is 0.73 (with a 95% confidence limit of less than .01). For a transition matrix based on random key sequences, the index would approach 0.0.

We were also interested in attempting to describe the degree to which keystroke behavior is organized over longer sequences. Table 5 shows transitions between keystroke n and keystroke n + 1, for all n in our sample. We also computed transition matrices for transitions between keystrokes n and n + m for m between 1 and 25. Table 6 shows such a matrix, in this case for m = 12. That is, the column keystrokes are those that follow the row keystrokes with a delay of 11 intervening strokes. The intent of this analysis is to see how far ahead in a sequence of strokes we can make good predictions, based on knowledge of the stroke at the start of the sequence.

F
R
O
M TO–>
Key to entries:
observed number of transitions
expected number of transitions
|
|
V
A/N Left Right Delete Down Up Return Tab Word Ins/Ovr Totals
A/N 211716
146238
11597
35322
7323
33721
21920
20093
4312
13774
3086
8412
4599
3668
3394
2771
87
860
306
868
270025
Left 11385
35179
37604
8497
6316
8112
1885
4834
3518
3314
1947
2024
357
882
368
667
171
207
380
209
64958
Right 10686
33961
6115
8203
36242
7831
2864
4666
3118
3199
1568
1954
404
852
221
644
106
200
374
202
62708
Delete 22174
19994
1520
4829
2090
4610
8354
2747
972
1883
508
1150
452
502
425
379
19
118
79
119
36918
Down 3423
14872
4920
3592
5133
3429
684
2043
8500
1401
3198
855
257
373
125
282
109
87
129
88
27460
Up 1980
8479
2470
2048
3123
1955
318
1165
2960
799
3866
488
125
213
77
161
110
50
94
50
15657
Return 4613
3651
112
882
479
842
433
502
188
344
344
210
379
92
97
69
14
21
12
22
6742
Tab 3506
2763
264
667
172
637
487
380
64
260
81
159
96
69
370
52
1
16
13
16
5102
Word 74
887
139
214
104
205
22
122
149
84
96
51
10
22
4
17
702
5
7
5
1638
Ins/Ovr 455
878
239
212
339
203
103
121
176
83
83
51
9
22
12
17
2
5
158
5
1622
Totals 271408 65556 62584 37292 25564 15612 6808 5143 1596 1611 501150

Table 6: EPT Keystroke Transition Matrix, n = 12 (Totals from full matrix)

We have generated expected numbers of keystrokes for the n to n + 12 transitions; these are also shown in Table 6. Notice that the actual frequencies still deviate substantially from the random predictions, but that the deviations are smaller than those in Table 5 (n to n + 1) predictions. This result is also expressed in the value of the index of predictive association which is 0.30 for the data in Table 6.

Figure 1 plots the index of predictive association as a function of the number of transitions between keystroke n and n + m for m = 1 to 25. For EPT this function is plotted by circles. Notice the smooth decay of the the value of the function, indicating that it becomes progressively harder to predict the longer range one’s prediction is.

Predictability of Future Keystrokes as a Function of Lookahead LengthFigure 1: Predictability of Future Keystrokes as a Function of Lookahead Length

The transition analysis described above was also performed for the WPS work sample. Table 7 shows the transition probabilities for the 10 most frequently used functions. The overall picture of editing that emerges from these data is very similar to that for EPT; the most frequent transitions are generally along the diagonal. On Figure 1 the predictive association for the WPS sample is depicted as triangles. The general shape of the curve is very close to that for the EPT work sample; it starts at a slightly lower level, crosses over, and appears to level off at a somewhat higher level, but the overall shape of the curve is almost identical.

F
R
O
M TO–>
|
|
V
A/N Advance Line Backup Rub Chr Return Tab Word Del Chr Para
A/N .92 .02 .00 .01 .02 .02 .01 .00 .00 .00
Advance .03 .78 .10 .03 .01 .00 .00 .02 .00 .00
Line .01 .09 .76 .08 .01 .01 .01 .00 .00 .00
Backup .06 .03 .12 .68 .02 .01 .01 .03 .01 .00
Rub Chr .30 .07 .00 .02 .57 .01 .01 .00 .00 .00
Return .29 .08 .01 .03 .01 .38 .09 .00 .00 .00
Tab .49 .09 .01 .03 .05 .01 .29 .00 .01 .00
Word .08 .08 .00 .06 .08 .00 .02 .58 .01 .00
Del Chr .07 .12 .01 .03 .01 .00 .01 .00 .74 .00
Para .00 .08 .03 .07 .00 .00 .00 .00 .00 .73

Table 7: WPS Keystroke Transition Probabilities (n = 1)

3.4. State Analysis

In addition to analyzing our data at the level of individual keystrokes, we can define sequences of keystrokes as editing states and analyze the data at that level. This gives a more global picture of user behavior. A state consists of a sequence of keystrokes relating to only one editing function. For example, Type state is defined as an uninterrupted string of text. Cursor state is defined as any uninterrupted string of cursor positioning operations. Erase state involves any string of keystrokes concerned with deleting text. Edit state is eclectic but includes any continuous string of keystrokes concerned with altering or moving text. Start state is automatically entered when the editor is turned on; Finish is always the last state in an editing session. Pause state is entered after 150 seconds of user inactivity and ends with the next keystroke. Finally, Help state involves asking for on-line documentation. By definition no state may follow itself and no state may be nested within another state.

Table 8 shows the state analysis for EPT, including the number of occurrences of each state, the percent of keystrokes in each state and the mean number of keystrokes per state. The 739 Start states mean that there were 739 editing sessions in the work sample. On average, users in Type state tended to generate strings of 16.5 characters (this average is somewhat misleading, the frequency distribution is highly skewed with a mode of 1 character and a very long tail — the longest recorded string was 512 characters). Erase state consisted overwhelmingly of single-character-delete strokes so the 3.6 keystroke average is very close to the mean number of characters deleted per state.

State Number of
states
Percent of
keystrokes
Mean keystrokes
per state
Type 17298 55.97 16.53
Cursor 9446 34.39 18.60
Erase 11729 8.27 3.60
Edit 253 1.20 24.12
Finish 739 0.14 1.00
Help 56 0.02 2.27
Start 739 0.00 0.01
Pause 204 0.00 0.00

Table 8: EPT State Summary Table

We are not able to present an identical analysis for WPS as of this writing because it has a much more complex command syntax. However, the mean length of uninterrupted character strings was 17.2, very close to the 16.5 figure for the EPT sample. Table 9 shows the percentage of keystrokes for the WPS sample falling into some of the states defined for EPT. Even this incomplete comparison reveals a striking similarity of usage patterns.

State Percent of
total keystrokes
Type 59.16
Cursor 34.45
Erase 4.44
Other
(includes Edit)
1.95

Table 9: WPS State Summary Table

3.5. Transitions Between States

We earlier discussed transitions between keystrokes. A similar analysis is possible at the state level. Table 10 shows a transition matrix for the EPT states. This matrix shows transitions between state n and state n + 1 for all states in the work sample. Notice that all the diagonal entries are zero; this follows from the definitions of the states themselves. For each cell in the matrix there are three entries. The first shows the row transition probability. The second entry shows the observed number of transitions and the third entry shows the number of transitions to be expected on the basis of the marginal totals (random expectation). Thus, from Type state there is a .57 probability of entering Erase state next and a .41 probability of entering Cursor state. For the most part, there is fairly close agreement between the obtained and expected transition frequencies.

F
R
O
M TO –>
Key to entries:
transition probabilities
observed number of transitions
expected number of transitions
|
|
V
Type Erase Cursor Start Finish Edit Pause Help Totals
Type .00
0
0
.57
9800
9355
.41
7032
7129
.00
0
0
.02
336
476
.00
13
163
.00
89
132
.00
22
36
17292
Erase .86
10056
9365
.00
0
0
.13
1551
2133
.00
0
0
.01
87
142
.00
9
49
.00
20
39
.00
6
11
11729
Cursor .74
7024
7130
.20
1847
2133
.00
0
0
.00
0
0
.02
239
108
.02
224
37
.01
95
30
.00
17
8
9446
Start .15
112
476
.06
46
142
.73
537
108
.00
0
0
.04
31
7
.01
6
2
.00
0
2
.01
7
1
739
Finish .00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
0
Edit .11
28
163
.06
15
49
.80
203
37
.00
0
0
.02
5
2
.00
0
0
.00
0
1
.01
2
0
253
Pause .31
63
132
.09
18
39
.41
83
30
.00
0
0
.19
38
2
.00
0
1
.00
0
0
.01
2
0
204
Help .16
9
36
.05
3
11
.71
40
8
.00
0
0
.05
3
1
.02
1
0
.00
0
0
.00
0
0
56
Totals 17292 11729 9446 0 739 253 204 56 39719

Table 10: EPT Editing State Transition Matrix (n = 1)

From the transition frequencies we can compute the index of predictive association, as we did for the keystroke transitions. Further, we can compute this index for transitions n to n + m, as before. Figure 2 shows the index for up to 25 states ahead. The index falls off slowly as a function of number of states ahead and the values appear to form an alternating series with even-numbered lookaheads consistently higher than adjacent odd-numbered lookaheads. Table 11 helps explain this pattern. It shows a transition matrix for transitions between states n and n + 2. Notice the high transition probabilities along the diagonal and the corresponding high discrepancy between the observed and expected values along the diagonal. This same pattern is evident in the other even-numbered transition matrices. It means that when users leave a state, they tend to return directly to it after they have entered a single intervening state.

Predictability of Future States as a Function of Lookahead LengthFigure 2: Predictability of Future States as a Function of Lookahead Length

F
R
O
M TO–>
Key to entries:
transition probabilities
observed number of transitions
expected number of transitions
|
|
V
Type Erase Cursor Start Finish Edit Pause Help Totals
Type .88
14936
7473
.07
1117
5082
.03
514
3875
.00
0
0
.01
214
308
.01
100
107
.00
61
89
.00
14
21
16956
Erase .07
837
5131
.73
8539
3489
.17
1934
2661
.00
0
0
.02
219
211
.00
38
74
.00
62
61
.00
13
15
11642
Cursor .09
788
4058
.19
790
2760
.69
6329
2104
.00
0
0
.02
229
167
.00
11
58
.00
42
48
.00
18
12
9207
Start .62
440
312
.19
137
212
.10
68
162
.00
0
0
.04
28
13
.02
13
4
.03
21
4
.00
1
1
708
Finish .00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
.00
0
0
0
Edit .37
91
109
.14
36
74
.13
32
57
.00
0
0
.02
4
5
.32
80
2
.01
3
1
.01
2
0
248
Pause .40
67
73
.28
46
50
.16
26
38
.00
0
0
.08
14
3
.00
0
1
.08
13
1
.00
0
0
166
Help .40
21
23
.34
18
16
.11
6
12
.00
0
0
.00
0
1
.09
5
0
.04
2
0
.02
1
0
53
Totals 17180 11683 8909 0 708 247 204 49 38980

Table 11: EPT Editing State Transition Matrix (n = 2)

4. Discussion

4.1. General Conclusions

A number of general conclusions about screen-oriented text editing are suggested by the results. The distribution of use across editing functions is grossly non-uniform. Certain functions are used constantly, others almost never. A rough rule of thumb that emerges from our data is that free usage text editing consists of about 1/2 typing. about 1/4 cursor movement, about 1/8 deletion, and 1/8 all other functions put together. This rule has been shown to apply in two different situations: knowledge workers creating documents with an experimental text editor, and secretaries transcribing and updating documents on a commercial word processing system. Considering the differences in the editors, the workers, and the tasks, the correspondence between the work samples is striking. It implies that it may be possible to optimize a single editor for a variety of users.

Another finding to emerge from the state analysis is that users tend to alternate editing subtasks; they tend to return to the state they left one state before. For example, if a user is typing, he tends to leave that state to do one other thing (perhaps deleting) and then immediately returns to typing.

4.2. Extending the State Analysis

The set of states presented here was sufficient for analyzing EPT, but not for analyzing more powerful editors. Two new states, Format and Manage, can handle these more sophisticated functions. Format includes formatting commands that alter the outward appearance of a document. Manage includes commands for managing multiple files and windows while within an editor.

Since EPT was a simple editor, it was easy to build the necessary state analysis programs. State analysis is much more difficult than keystroke analysis for any large production editor due to the extensive parsing that must be done. This problem is alleviated in situations where the analysis can be done using the code from the editor’s parser.

4.3. Relation to Past Research

The analysis gives us a picture of editing based on actual usage data, rather than on some abstract model. As such, the data presented here provide a good test of the relevance of these abstract models and can be seen as a complement to them.

4.4. Implications for Editor Design

Data such as these can be used to drive the software architecture of text editors. Raw frequency-of-use data indicates which aspects of editor design should be optimized. For instance, cursor placement is the single most time consuming editing function next to typing itself. Thus, the mechanics of cursor positioning deserve considerable engineering attention and optimization. In addition, the transition data might be used to tune editor software to the behavior patterns of users. For example, faster performance could be obtained by reordering the alternatives within a parser, and by improving the locality of reference within the editor.

4.5. Implications for Keyboard Design

Beyond its implications for editor design. this data provides a sound empirical basis for the application of McCormick’s [8] principles of keyboard design. In order to place keys in terms of either their overall usage frequency or the frequency of transitions between keystrokes one must have data of the type provided here.

4.6. Implications for Benchmark Tests

Benchmarking is an appropriate testing method for text editors when there is an interest in making comparisons among existing editors, or improving the performance of an editor which may be under development. The best way one can develop a realistic set of benchmark tasks for a text editor is on the basis of actual usage statistics. Roberts has made the first attempt at developing such benchmark tasks. These tasks include a test of speed of use for experts, developed on the basis of an informal study.

In order to evaluate the representativeness of Roberts’ benchmarks two EPT experts performed Roberts’ expert tasks. Their data was then compared to real EPT behavior in Table 12. Table 12 shows that users spent much more time in the Edit and Cursor states when performing Roberts’ tasks than they did in free use.

State Actual Usage Roberts’ Task
Type 53% 14%
Cursor 32% 49%
Erase 10% 11%
Finish 3% 1%
Edit 2% 26%
Help 0% 0%
Start 0% 0%

Table 12: EPT State Usage as Percentage of Working Time

An increased knowledge of actual user behavior should enable researchers to develop benchmarks which more closely reflect actual behavior. In addition, given the similarities in user behavior, newly developed benchmarks should be widely applicable.

Footnote

VAX, VMS, VT100, DEC, and PDP are trademarks of Digital Equipment Corporation.

References

  1. Card, Stuart K., Moran, Thomas P.. and Newell, Allen. Computer text-editing: an information processing analysis of a routine cognitive skill. Cognitive Psychology 12 (1980), 32-74.
  2. Card. Stuart K.. Moran, Thomas P., and Newell, Allen. The keystroke-level model for user performance with interactive systems. Comm. ACM 23 (1980), 396-410.
  3. Embley, David W. and Nagy, George. Empirical and formal models for the study of computer editors. In Computing Skills and the User Interface, M. Coombs and J. L. Alty, Eds., Academic Press, London, 1981.
  4. Embley. David W. and Nagy, George. Behavioral aspects of text editors. Comput. Surv. 13 (1981), 33-70.
  5. Hammer, John M. The human as a constrained optimal text editor. Ph.D. Th., University of Illinois, June, 1981.
  6. Hammer, John M. and Rouse, W. B. Analysis and modeling of freeform text editing behavior. Proc. 1979 Internat. Conf. Cybernetics and Society, Oct., 1979, pp. 659-663.
  7. Hays, William L. Statistics for the Social Sciences. Holt Rinehart Winston, New York, 1973. Second Edition.
  8. McCormick, Ernest J. Human Factors in Engineering and Design. McGraw-Hill, New York, 1976. Fourth Edition.
  9. Roberts, Teresa L. Evaluation of computer text editors. Report SSL-79-9, Xerox PARC, Nov., 1979. Stanford Ph.D. dissertation.

Copyright © 1982 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or permissions@acm.org.

This is a digitized copy derived from an ACM copyrighted work. ACM did not prepare this copy and does not guarantee that is it an accurate copy of the author’s original work.