- Politechnika Wrocławska
Transkrypt
- Politechnika Wrocławska
Szacowanie wydajno ci interfejsu człowiek-komputer metod Keystroke-Level Model Kuli ski Marcin1 W artykule opisano szczegółowo metod Keystroke-Level Model, słu c do oceny efektywno ci interakcji człowieka z komputerem. Omówiono podstawowe problemy zwi zane z jej stosowaniem, wraz z sugerowanymi rozwi zaniami. Zamieszczono przykład, ilustruj cy sposób praktycznej implementacji metody. 1. Wprowadzenie Keystroke-Level Model jest jedn z metod szacowania wydajno ci systemu człowiekkomputer, opracowanych na gruncie psychologii in ynieryjnej. Zostala ona zaproponowana przez Carda, Morana i Newella w roku 1980. Jej idea polega na dekompozycji zadania na najprostsze podzadania - akcje typu naci ni cie klawisza, przemieszczenie kursora czy aktywacja przycisku graficznego, które z kolei znajduj odzwierciedlenie w zbiorze stosowanych w metodzie operatorów. Do poszczególnych operatorów przypisane s rednie czasy wykonania, uzyskane z danych eksperymentalnych; zsumowanie tych czasów cz stkowych daje w wyniku szacunkowy redni czas potrzebny na wykonanie zadania. Do głównych zalet Keystroke-Level Model nale y zaliczy prostot oblicze zwi zanych z estymacj oraz mo liwo oceny interfejsu, który nie został jeszcze zaimplementowany. Obliczenia sprowadzaj si do sumowania czasów cz stkowych i je li tylko zadanie zostanie zdekomponowane w sposób prawidłowy, to mo na oczekiwa miarodajnych wyników (bł d pomi dzy 5% a 20% [2]) Mo liwo oceny interfejsu, który nie posiada implementacji czy nawet modelu wynika z faktu, ze w opisywanej metodzie wymagane jest jedynie jego sprecyzowanie do takiego stopnia, by kolejno akcji potrzebnych do wykonania danego zadania była jednoznaczna [1]. 2. Opis metody Nazwa metody bierze swe ródło w sposobie rozpatrywania zadania: otó rozbija si je na podzadania do momentu, gdy zostanie osi gni ty poziom "keystroke-level", czyli czynno ci porównywalnych do pojedynczego uderzenia w klawisz. Tego typu podzadaniem jest np. naci ni cie klawisza Enter czy aktywacja gad etu 1 Kuli ski Marcin mgr in . Politechnika Wrocławska 1 minimalizuj cego okno. Tak wi c kryterium zaliczenia czynno ci do klasy "keystrokelevel" jest poziom abstrakcji jej opisu. Nie b d do niej nale e czynno ci opisane nast puj co: "uruchom komputer", "zaloguj si do sieci", "skasuj ten plik". St d te wynika jedno z zało e tej metody: zadanie musi da si zdekomponowa do okre lonego poziomu szczegółowo ci. 2.1. Standardowe operatory metody Zadanie wyspecyfikowane do poziomu "keystroke-level" musi nast pnie zosta "przetłumaczone" przy u yciu tzw. standardowego zestawu operatorów metody. Ka dy operator opisuje pewn klas czynno ci-podzada i posiada przypisany redni czas wykonania, pozyskany na drodze empirycznej. Ka de wyspecyfikowane podzadanie musi znale swoje odbicie w odpowiadaj cym mu operatorze. Podstawowy zestaw operatorów w metodzie Keystroke-Level Model wygl da nast puj co: • • • • • • • K - pojedyncze uderzenie w klawisz P - wskazanie kursorem myszki celu na ekranie B - wci ni cie b d uwolnienie przycisku myszki BB - klikni cie przyciskiem myszki H - uło enie r k na klawiaturze lub myszce M - mentalny akt rutynowego my lenia lub percepcji W - oczekiwanie na odpowied systemu Przypisane czasy oraz uwagi: • K 0.12 do 1.2 sekundy, 0.28 zalecane dla wi kszo ci u ytkowników Operator ten opisuje naci ni cie przycisku lub klawisza na klawiaturze. Przy kombinacjach klawiszy (np. podczas wprowadzania du ych liter, znaków narodowych czy skrótów klawiszowych, gdzie wykorzystuje si takie klawisze jak CTRL i SHIFT) ka dy klawisz liczony jest osobno. Poziom do wiadczenia u ytkownika ma zasadniczy wpływ na czas przypisany temu operatorowi. Dla profesjonalnej maszynistki (90 słów/min) b dzie to 0.12 sekundy, dla osoby nieobeznanej z klawiatur komputera 1.2 sekundy. • P 0.8 do 1.5 sekundy, rednio 1.1 Reprezentacja akcji przesuwania myszki w celu naprowadzenia wska nika na okre lony obszar ekranu. Jej czas ci le zale y od amplitudy ruchu i wielko ci obszaru docelowego [3], przy dokładniejszej predykcji mo na go wyznaczy z pomoc prawa Fittsa. • B 2 0.1 sekundy • BB 0.2 sekundy Wci ni cie i uwolnienie przycisku myszki, liczone jak dwa operatory B. • H 0.4 sekundy Poniewa zarówno w przypadku myszki, jak i klawiatury cel jest stosunkowo du y, a ruch nale y do bardzo cz sto wykonywanych, takie przemieszczanie r k jest czynno ci stosunkowo szybk . • M 0.6 do 1.35 sekundy, zalecane 1.2 Operator ten reprezentuje czas potrzebny na przeprowadzenie akcji o charakterze umysłowym. Jest on bardzo zró nicowany, zarówno w odniesieniu do osób, jak i sytuacji i zale y od tego, jakie procesy kognitywne zaanga owano w jego przeprowadzenie [1]. Istnienie tego operatora umotywowane jest nast puj cym faktem: kiedy umiarkowanie do wiadczeni u ytkownicy zaj ci s rutynow czynno ci wykonywan z u yciem komputera, obserwuje si u nich krótkie, trwaj ce około sekundy przerwy, podczas których nie wykonuj oni adnych czynno ci o charakterze fizycznym. Zwi zane jest to z mentalnymi operacjami takimi jak przypominanie sobie nazwy pliku lub odnajdywanie okre lonego obiektu na ekranie. Operator M ma za zadanie reprezentowa wła nie takie rutynowe my lenie, w odró nieniu od bardziej zło onego procesu umysłowego - kreatywnego, rozwi zuj cego problemy, drobiazgowego i wyczerpuj cego. • W czas zale y od konkretnego systemu komputerowego Odzwierciedlenie czasu, jaki u ytkownik musi sp dzi bezczynnie czekaj c na system, zanim b dzie mógł kontynuowa zadanie. Nale y zauwa y , e nie jest on to samy z czasem potrzebnym systemowi na przetworzenie danych dostarczonych przez u ytkownika. Nowoczesne systemy oferuj mo liwo pracy wielow tkowej i odseparowanie procesów odpowiedzialnych za pozyskiwanie informacji od u ytkownika od procesów zajmuj cych si obliczeniami czy przetwarzaniem danych. Dla przykładu: dobre programy do tworzenia grafiki 3D oferuj u ytkownikowi tak zwany rendering asynchroniczny - podczas gdy jeden proces zaj ty jest generowaniem grafiki na podstawie ostatnio wprowadzonych parametrów, interfejs pozostaje odblokowany i pozwala na wprowadzanie kolejnych poprawek do obiektów czy całej sceny. Tak wi c w wielu przypadkach czas oczekiwania jest nieistotny i pomijalny; w 3 innych, zwi zanych np. z przetwarzaniem du ych baz danych, mo e wprowadza istotne opó nienia w obsłudze systemu. W pewnych przypadkach mo na pomin ten operator z innego jeszcze powodu. Je li posiada on t sam sumaryczn warto we wszystkich porównywanych alternatywnych projektach interfejsu, to wpływa jedynie na absolutny, a nie relatywny czas wykonania zadania - staj c si stał , któr mo na wył czy z oblicze . W literaturze dotycz cej tego tematu mo na spotka si z pewnymi modyfikacjami przedstawionego powy ej zestawu operatorów. Na przykład w [4] nie wyst puj operatory B i BB - ich rol przejmuje operator K z odpowiednim atrybutem (np. "click", "press" lub "release"), pojawia si natomiast operator D, odwzorowuj cy akcj przemieszczania wska nika myszki po linii łamanej (np. podczas obrysowywania obiektu graficznego). 2.2. Algorytm post powania W celu zastosowania metody Keystroke-Level Model i uzyskania miarodajnych wyników nale y wykona nast puj c list czynno ci: a) Wybra jeden lub wi cej scenariuszy zadania, które maj podlega ocenie. b) Wyspecyfikowa styl interakcji dla ka dego scenariusza do poziomu "keystrokelevel". c) Dla ka dego scenariusza znale najlepszy sposób przeprowadzenia zadania, ewentualnie sposób, w jaki przypuszczalnie wykonaliby je u ytkownicy, a nast pnie opisa go akcjami "keystroke-level". d) Przypisa akcjom odpowiadaj ce im operatory fizyczne, zaanga owane w realizacj zadania. e) Je li istnieje taka potrzeba - doł czy operatory W dla sytuacji, gdy u ytkownik musi czeka na reakcj systemu, by móc kontynuowa prac . f) Wstawi operatory M dla sytuacji, gdy u ytkownik musi zatrzyma si i pomy le lub zlokalizowa jaki obiekt. g) Ka demu u ytemu w zadaniu operatorowi przypisa wykonania. odpowiadaj cy mu czas h) Zsumowa czasy wykonania dla wszystkich wyst puj cych w zadaniu operatorów. 4 Uzyskana suma jest poszukiwanym szacowanym czasem wykonania całego zadania według zało onego scenariusza i przy u yciu wybranego rodzaju komunikacji z komputerem. 2.3. System notacji zadania Przejrzysty system notacji zaprezentowano w [4]. Jest on rozszerzeniem sposobu stosowanego w Command Language Grammar, autorstwa T. Morana [5]. Po symbolu operatora podaje si (w nawiasach kwadratowych) odpowiadaj cy akcji parametr, np. naci ni ty klawisz lub nazw przycisku graficznego. Pozwala to na czytelne opisanie przebiegu zadania w zwi złej formie. Przykładowe zadanie 1 Wylistowa zawarto katalogu foo przy u yciu shella w systemie unixowym. Aby to zrealizowa , nale y wprowadzi polecenie ls, nast pnie spacj i nazw katalogu, po czym cało zaakceptowa klawiszem Enter. W opisywanej notacji b dzie to wygl da nast puj co: MK[l]K[s]K[ ]MK[f]K[o]K[o]K[Enter] Przykładowe zadanie 2 Zamkn zminimalizowany do belki program TVBox poprzez przywrócenie jego okna i naci ni cie gad etu zamykania; zakładamy, e zadanie odbywa si w rodowisku Windows, a pocz tkowa pozycja wska nika to rodek ekranu. Aby wykona to zadanie, nale y przemie ci wska nik na doln belk , klikn przycisk reprezentuj cy program, przemie ci wska nik do gad etu zamykania i klikn go. MP[przycisk TVBox]BB[lewy]MP[gad et zamykania]BB[lewy] 2.4. Ograniczenia, problemy, przypadki szczególne Nale y pami ta o tym, e omawiana metoda zakłada przeprowadzenie zadania w sposób bezbł dny lub bez poprawiania potencjalnie popełnionych bł dów [2]. W przypadkach skomplikowanych, wieloetapowych zada czy interfejsów "ułatwiaj cych" popełnienie pomyłki, wyniki uzyskane z jej pomoc nie s wiarygodne. Podobnie na wiarygodno wyników wpływa poziom zaawansowania u ytkowników, którzy mieliby pracowa na rzeczywistym systemie. Im jest on ni szy, tym trudniej przewidzie reakcje u ytkownika, przez co czasy uzyskiwane na kolejnych etapach zadania mog dalece odbiega od rednich przypisanych operatorom metody. Dlatego zakłada si , e obsług b d zajmowa si co najmniej redniozaawansowani u ytkownicy. Rozwi zanie kwestii ilo ci i miejsca wyst powania operatorów mentalnych M w konkretnym zadaniu jest najtrudniejsz cz ci metody Keystroke-Level Model. Przede 5 wszystkim nale y ci le przestrzega konsekwencji w umieszczaniu operatorów M we wszystkich alternatywnych scenariuszach, co zapewni mo liwie wysok obiektywno porównania i wyników. Zawsze (oczywi cie w obr bie zadania) nale y stosowa te same reguły, zasady czy filozofi przypisywania operatorów mentalnych. Je li dokładne wskazanie miejsc ich wyst powania jest zbyt trudne czy czasochłonne, nale y skoncentrowa si na jak najdokładniejszym wyznaczeniu liczby wyst puj cych M. Odkrycie wszystkich potencjalnych sposobów podej cia u ytkowników do zadania pomaga w jej okre leniu: je li w kolejnych podej ciach liczba operatorów M nie ró ni si lub waha si tylko nieznacznie, mo na by bardziej pewnym zgodno ci predykcji z rzeczywisto ci . Je li w badanym zadaniu istnieje du a i wyra na przewaga operatorów fizycznych nad mentalnymi, mo na zastanowi si nad mo liwo ci pomini cia tych ostatnich, gdy ich wpływ na czas wykonania zadania b dzie relatywnie niewielki. Warto zapami ta kilka podstawowych klas akcji, które powinny zosta wyra one operatorem M przy opisie zadania. S to: • inicjowanie zadania U ytkownik decyduje, jak rozumie postawione przed nim zadanie oraz jak je przeprowadzi . Z tego powodu cz sto przed rozpocz ciem ci gu akcji nast puje krótka pauza. • podejmowanie decyzji Je li istnieje wi cej ni jeden mo liwy sposób kontynuacji zadania, a decyzja nie jest oczywista lub wystarczaj co cz sto wykonywana, a jednocze nie wa na, u ytkownik musi zatrzyma si i pomy le . • odczytywanie chunków z pami ci Chunk jest jednostk typu nazwa pliku, polecenie lub skrót, a wi c reprezentuje pewn mnemoniczn cało . Generalnie odczytanie pojedynczego chunku odpowiada jednemu operatorowi M, jednak sytuacja komplikuje si przy zró nicowaniu poziomu do wiadczenia u ytkowników. • odnajdywanie nowych elementów na ekranie U ytkownik musi przerwa wykonywanie zadania i przejrze ekran w celu odnalezienia obiektu nieznanego wcze niej lub poło onego w nieznanym miejscu ekranu. • weryfikacja działania Zanim u ytkownik wci nie klawisz Enter lub przycisk OK, sprawdza zazwyczaj wprowadzone przez siebie dane lub informacje prezentowane przez system. Podobna weryfikacja ma miejsce wtedy, gdy system sygnalizuje wprowadzone zmiany w odpowiedzi na akcj u ytkownika, np. w przypadku pojawienia si okna z informacj . Wraz ze wzrostem stopnia zaawansowania u ytkownicy coraz rzadziej weryfikuj swoje działania, potrafi tak e przechowywa wi cej danych w pojedynczym chunku. Przykładowo: je li po kilka razy dziennie u ytkownik dokonuje kasowania plików w 6 katalogu tymczasowym, czynno ta staje si rutynowa - po wpisaniu polecenia delete temp/*.* nie nast puje weryfikacja jego poprawno ci. Tak e samo polecenie jest wprowadzane jednym ci giem, bez rozró niania na komend i jej parametr, gdy stanowi teraz jeden chunk. Dodatkowo wysoce zaawansowani u ytkownicy s w stanie skraca czas trwania operatora M poprzez wykonywanie czynno ci mentalnej równolegle z czynno ci o charakterze fizycznym. Przykładem tego mo e by próba zlokalizowania ikony programu oraz jednoczesne przeniesienie r ki z klawiatury na myszk i rozpocz cie ruchu wska nika w stron tej ikony. Interfejs wymagaj cy od u ytkownika mniejszego zaanga owania umysłowego, a tym samym wprowadzaj cy mniej operatorów mentalnych, mo e by szybszy w obsłudze od rozwi zania alternatywnego nawet wtedy, gdy zawiera stosunkowo du o akcji o charakterze fizycznym. Tak sytuacj mo na zaobserwowa np. w przypadku pocz tkuj cych u ytkowników, którzy potrafi szybciej wykona zadanie posługuj c si interfejsem graficznym, ni interpreterem komend typu shell. Ten pierwszy wymaga wprawdzie wi kszej aktywno ci ruchowej, zwi zanej z manipulowaniem myszk , lecz w zamian nie obci a pami ci dzi ki zastosowaniu menu oraz znacz cych ikon. 3. Przykład zastosowania metody Zadanie polega na przekopiowaniu pliku swinka.jpg z nap du dyskietek A: do katalogu C:\animals. Zostanie przeprowadzone na komputerze klasy PC przez redniozaawansowanego u ytkownika. Na dyskietce znajduje si tylko kilka plików. Pocz tkowo r ce znajduj si na klawiaturze. Zakładamy, e opó nienia wprowadzane przez system s pomijalnie małe. a) Wybrane zostały dwa scenariusze: Skorzystanie z Eksploratora Windows oraz z procesora komend w sesji DOS. b) Praca z Eksploratorem Windows polega na klikaniu w pola opisuj ce pliki i katalogi oraz w gad ety słu ce do rozwijania i zwijania zawarto ci podkatalogów. Operacje na plikach przeprowadza si dokonuj c bezpo redniej manipulacji - zaznaczaj c i przeci gaj c je w odpowiednie miejsca. Wykorzystuje si równie suwaki do przegl dania zawarto ci paneli: wci ni cie i przytrzymanie lewego klawisza myszki pozwala na przesuwanie suwaka zgodnie z ruchem myszki. Procesor komend DOS wymaga wprowadzenia przy pomocy klawiatury polecenia oraz parametrów, z którymi nale y je wykona . Akcje potwierdza si klawiszem Enter. c) Skorzystanie z Eksploratora Windows wymaga jego uruchomienia poprzez dwuklik w ikon skrótu, znajduj c si na pulpicie. Nast pnie nale y wskaza w lewym panelu pozycj Dyskietka 3,5 (A:), co spowoduje zaprezentowanie zawarto ci dyskietki w 7 panelu prawym. Nale y zidentyfikowa poszukiwany plik swinka.jpg, wskaza go myszk i wcisn jej lewy przycisk. Nast pnie, nie puszczaj c przycisku, zlokalizowa pozycj animals na dysku C: w lewym panelu i przeci gn nad ni wska nik myszki. Po zwolnieniu przycisku nast pi przekopiowanie pliku. Aby u y procesora komend DOS, nale y uruchomi go poprzez podwójne klikni cie na ikonie skrótu. W dalszej kolejno ci nale y wpisa polecenie copy, a po spacji symbol nap du A: i nazw pliku, rozdzielone znakiem backslash \. Po kolejnej spacji podawana jest nowa lokalizacja pliku: dysk C:, katalog animals. Cało polecenia zatwierdzana jest klawiszem Enter. d) + f) Eksplorator Windows: MH[myszka] - zastanowienie si nad wykonaniem zadania i przeniesienie prawej r ki na myszk MP[ikona skrótu]BB[lewy]BB[lewy] - zlokalizowanie ikony, przemieszczenie wska nika i dwuklik MP[Dyskietka A:]BB[lewy] - zlokalizowanie nap du A: i klikni cie MP[swinka.jpg]B[lewy] - zlokalizowanie pliku, wskazanie i wci ni cie przycisku myszki MP[animals]B[lewy] - zlokalizowanie katalogu, przemieszczenie wska nika i zwolnienie przycisku Procesor komend DOS: MH[myszka] - zastanowienie si nad wykonaniem zadania i przeniesienie prawej r ki na myszk MP[ikona skrótu]BB[lewy]BB[lewy] - zlokalizowanie ikony, przemieszczenie wska nika i dwuklik MHK[c]K[o]K[p]K[y]K[ ] - przywołanie nazwy komendy z pami ci, przeniesienie r ki nad klawiatur i wpisanie komendy MK[a]K[:]K[\]K[s]K[w]K[i]K[n]K[k]K[a]K[.]K[j]K[p]K[g]K[ ] - przywołanie lokalizacji i nazwy pliku oraz ich wpisanie MK[c]K[:]K[\]K[a]K[n]K[i]K[m]K[a]K[l]K[s] - przywołanie lokalizacji docelowej i jej wpisanie MK[Enter] - weryfikacja poprawno ci i zaakceptowanie klawiszem Enter g) + h) Eksplorator Windows: 5*M=5*1.2=6.0 4*P=4*1.1=4.4 8*B=8*0.1=0.8 1*H=1*0.4=0.4 suma: 11.6 sekundy 8 Procesor komend DOS: 6*M=6*1.2=7.2 1*P=1*1.1=1.1 4*B=4*0.1=0.4 30*K=30*0.28=8.4 1*H=1*0.4=0.4 suma: 17.5 sekundy Literatura: [1] Kieras D.: Using the Keystroke-Level Model to estimate execution times. ftp://ftp.eecs.umich.edu/people/Kieras/GOMS/KLM.pdf [2] Ritter F.E.: Bishop M.A., The effect of abbreviation on time and errors: Even novices can profit from aliases. http://www.psyc.nott.ac.uk/staff/Frank.Ritter/papers/soar-alias-study/soaralias10.html [3] Clayton L., Rieman J.: Task-centered user interface design. A practical introduction. http://www.itlabs.umn.edu/classes/Winter-1999/csci5110/Book/contents.v1.html [4] Beck R.: Human-computer interaction course. User/system interface design. http://www.csc.vill.edu/faculty/beck/html/csc8570/hci.html [5] Moran T. P.: The command language grammar: a representation for the user interface of interactive computer systems. International Journal of Man-Machine Studies, 15(1981) Evaluating performance of human-computer interface using KeystrokeLevel Model The paper gives a detailed description of Keystroke-Level Model, used to estimating performance of human-computer interaction. Basic problems related to the method's usage and their solutions are shown. An example illustrating the manner of practical implementation of Keystroke-Level Model is included. 9