Das Keystroke-Level Model (KLM) ist eine vereinfachte Variante des GOMS-Modells. GOMS steht für 'Goals', 'Operators', 'Methods' und 'Selection Rules'. Das GOMS-Modell kann verwendet werden um aufzuzeigen, welche Alternativen ein Nutzer bei einem bestimmten Interface hat um gewisse Aufgaben zu erledigen. Geeignet ist das Modell allerdings nur für kleine Aufgaben, die nicht viel kreatives Denken erfordern, wie z.B. das Verschieben eines Wortes in einem Text. Dazu muss zuerst das Ziel (Goal) definiert werden und anschließend die alternativen Lösungswege (Methods) aufgelistet werden. Diese wiederum müssen in Teilziele zerlegt werden (eventuell wieder mit mehreren Alternativen), bis die Aufgabe auf atomare Operationen (Operators) zurückgeführt ist. Zusätzlich gibt es noch Kriterien, nach denen der Nutzer einen Lösungsweg wählt (Selection Rules).
Folgende
Operatoren gibt es:
K
(Keystroke): Das Drücken einer Taste auf der Tastatur
P
(Point): Den Cursor mit der Maus an einen Punkt auf dem Bildschirm bewegen
B
(Button): Eine Maustaste drücken oder loslassen (ein Klick besteht aus zwei B)
H
(Home): Eine Hand von der Tastatur zur Maus bewegen bzw. von der Maus zur
Tastatur
M
(Mental): Denken/Überlegen was als nächstes zu tun ist
R
(Response): Auf eine Reaktion des Systems warten
D
(Draw): Zeichnen
Mit Hilfe des Keystroke-Level Models lassen sich anschließend Vorhersagen treffen, wie lange ein geübter Nutzer benötigen um einen Lösungsweg bis zum Ziel auszuführen, unter der Annahme, dass er keine Fehler macht. Dazu wird jedem Operator eine Dauer zugewiesen. Anschließend müssen die Zeiten lediglich addiert werden um eine Vorhersage für die Dauer zum Erreichen des Ziels zu erhalten.
Für die Zeiten, die den verschiedenen Operatoren zugewiesen werden, gibt es Tabellen mit empirisch bestimmten Werten. Ausnahmen sind die Operatoren R und D. Für diese Operatoren ist eine Generalisierung nicht möglich und die Werte müssen in den Anwendungsfällen gesondert bestimmt werden.
Üblich
sind folgende Werte:
K: 280ms
P: 1100 ms
B: 100 ms
H: 400 ms
M: 1200 ms
Ein etwas schwieriger Aspekt bei der Zerlegung eines Lösungsweges in Operatoren stellt das Setzen von M-Operatoren dar. Um diesen Aspekt zu erleichtern gibt es ein Verfahren, das mit Hilfe von Regeln angibt, wo ein M-Operator gesetzt werden muss und wo keiner nötig ist:
Als
Beispiel soll hier ein Lösungsweg für das Windows-NT Login mit dem Namen "MAX"
und dem Passwort "XAM" dienen:
1.
H: Hände an die Tastatur legen 0,4 s
2.
3*K: Strg-Alt-Entf drücken 3*
0,28 s
3.
3*K: M A X eingeben 3* 0,28 s
4.
K: TAB drücken 0,28 s
5.
3*K: X A M eingeben 3* 0,28 s
6.
H: Eine Hand an die Maus legen 0,4 s
7.
P: Cursor auf OK 1,1 s
8.
BB: Klick 0,2 s
Regel 0: M überall dort setzen, wo es nötig sein könnte:
Setze ein M vor jedes K oder B, das nicht Teil einer längeren Kette von Eingaben (z.B. eines Strings) ist. Setze ein M vor jedes P, das einen Befehl auswählt oder den Anfang einer Sequenz von direkten Manipulationsoperationen, die zu einer kognitiven Einheit gehören, darstellt.
Das
Beispiel von vorhin würde anschließend so aussehen:
1.
H: Hände an die Tastatur legen 0,4 s
2.
M 1,2 s
3.
3*K: Strg-Alt-Entf drücken 3*
0,28 s
4. M 1,2 s
5.
3*K: M A X eingeben 3* 0,28 s
6. M 1,2 s
7. K: TAB
drücken 0,28 s
8. M 1,2 s
9. 3*K: X
A M eingeben 3*
0,28 s
10.
H: Eine Hand an die Maus legen 0,4 s
11. M 1,2 s
12. P: Cursor
auf OK 1,1 s
13. M 1,2 s
14. BB: Klick 0,2 s
Regel 1: Löschen der Ms vor vollständig vorausgeahnten Operatoren:
Wenn
ein Operator hinter einem M bereits vollständig im Operator vor dem M
vorausgeahnt wird, dann lösche das M (z.B. PMK wird zu PK oder PMBB wird zu
PBB).
"Vollständig
vorausgeahnt" bedeutet, dass der Operator vor dem M ähnlich lange benötigt wie
das M selbst z.B. P benötigt 1100 ms und M benötigt 1200 ms. Man geht dann
davon aus, dass der Nutzer sich bereits während des P-Operators auf die nächste
Aktion vorbereitet.
Im
obigen Beispiel muss dieser Regel nach das M an der Stelle 13 gelöscht werden.
Regel 2: Löschen der Ms innerhalb kognitiver Einheiten:
Wenn
eine Kette von MKs und MBs zu einer kognitiven Einheit gehört, dann lösche
jedes M bis auf das erste. Dies ist z.B. der Fall, wenn der Nutzer eine Reihe
von Tastenkürzel als Einheit verwendet. Ein Beispiel wäre, wenn der Nutzer in
einer Textverarbeitung ein markiertes Wort duplizieren will und dazu STRG+C,
STRG+V, STRG+V drückt. Diese Kombination wird dann mit MKKK repräsentiert und
nicht mit MKMKMK, da diese 3 Tastenkürzel eine kognitive Einheit bilden.
Diese
Regel lässt sich im obigen Beispiel an den Stellen 6 und 8 anwenden, da das
Eingeben von Name und Passwort zusammen mit dem TAB dazwischen eine kognitive
Einheit bildet.
Regel 3: Löschen der Ms vor aufeinanderfolgenden Terminatoren:
Wenn
ein K ein redundanter Terminator ist (z.B. das Ende eines Befehls direkt hinter
dem Ende seiner Argumente), dann lösche das M davor.
Im
obigen Beispiel lässt sich argumentieren, dass diese Regel auf das M an Stelle
11 zutrifft. An dieser Stelle ist die Eingabe der Argumente (Name und Passwort)
bereits abgeschlossen und das Klicken auf OK stellt einen redundanten
Terminator dar, der den Befehl abschließt.
Regel 4: Löschen der Ms, die einen Befehl abschließen:
Wenn
ein K das Ende eines konstanten Strings ist (z.B. eines Befehls) dann lösche
das M davor. Wenn das K jedoch einen variablen String beendet, (z.B. ein
Argument) dann muss das M davor stehen bleiben.
Diese
Regel findet im obigen Beispiel keine Anwendung.
Regel 5: Löschen überlappender Ms:
Wenn
ein M direkt neben einem R liegt, kann es entfallen.
Da
im obigen Beispiel kein R vorkommt, kann diese Regel natürlich nicht angewendet
werden.
Das
Ergebnis ist demnach:
1.
H: Hände an die Tastatur legen 0,4 s
2.
M 1,2 s
3.
3*K: Strg-Alt-Entf drücken 3*
0,28 s
4. M 1,2 s
5.
3*K: M A X eingeben 3* 0,28 s
6.
K: TAB drücken 0,28 s
7.
3*K: X A M eingeben 3* 0,28 s
8.
H: Eine Hand an die Maus legen 0,4 s
9. P: Cursor
auf OK 1,1 s
10.
BB: Klick 0,2 s
-------------------------------------------------------------
Ergebnis: 7,3 s
In der Praxis sind diese Regeln nicht vollkommen ausreichend um eindeutig festzulegen, wo ein M gesetzt werden muss. Diese Regeln können auch nur als Leitfaden dienen. Darum eignet sich das KLM eher um verschiedene Interfaces relativ zueinander zu vergleichen als dazu, absolute Bearbeitungsdauern zu bestimmen. Dies gilt natürlich auch nur unter der Annahme, dass der Vergleich von einer Person durchgeführt wird und diese Person konsistente Entscheidungen zum Setzen der Ms trifft.