Testování uživatelského rozhraní systému IPCorder 2.0 Beta 3 KNR-090 Test bez uživatele
České vysoké učení technické Fakulta elektrotechnická
Vypracoval Radim Tobolka, 22. 3. 2011
Obsah Představení předmětu testu....................................................................................................................2 Motivace................................................................................................................................................2 Cílová skupina.......................................................................................................................................3 Příklad užití: Přidání kamery do systému..............................................................................................3 Motivace...........................................................................................................................................3 Kognitivní průchod...........................................................................................................................3 Shrnutí..............................................................................................................................................5 Příklad užití: Nastavení nahrávacího režimu.........................................................................................5 Motivace...........................................................................................................................................5 Kognitivní průchod...........................................................................................................................5 Shrnutí..............................................................................................................................................8 Příklad užití: Sledování obrazového výstupu kamery...........................................................................8 Motivace...........................................................................................................................................8 Heuristická evaluace.........................................................................................................................9 Shrnutí.............................................................................................................................................11 Závěr....................................................................................................................................................11
Představení předmětu testu IPCorder je produkt firmy Koukaam se. Jedná se o Network Video Recorder aplikaci distribuovanou na vlastní hardwarové platformě. Vybraná verze dokáže zpracovat obraz ze čtyř IP kamer (platforma KNR-090). Typicky se používá v zabezpečovacích systémech a systémech dohledu provozů. Verze produktu 2.0 Beta 3 je jedním z posledních testovacích vydání před uvedením na trh. Hlavní novinkou je přepracované uživatelské rozhraní. Přistupuje se k němu přes internetový prohlížeč a skládá se ze dvou komponent. Java applet „Minerál“ zobrazuje výstup kamer, statistiky a umožňuje prohlížení záznamů. Prostřednictvím „Webu 2.0“ uživatel celou aplikaci nastavuje a spravuje.
Motivace Cílem této práce je: • získat zápočet z předmětu Y39TUR • procvičit si metody používané při testování bez uživatele • zjistit vhodnost těchto metod pro tento produkt (atypické gui, atypická aplikace) • identifikovat kazy v návrhu uživatelského rozhraní • poskytnout doporučení k nápravě těchto kazů • odpovědět na následující otázky: IPCorder oplývá množstvím funkcí. Rozhodnul jsem se vybrat k průzkumu tři z nich podle vlastních zkušeností s aplikací. Doufám, že tím dostatečně zmapuji koncept uživatelského rozhraní a zároveň podchytím nejvažnější problémy. Funkce budu zkoumat v těchto příkladech užití: přidání kamery do systému, nastavení režimu nahrávání a prohlížení obrazu z kamery. Budu na nich také zkoumat následující otázky: • Je produkt skutečně vhodný pro cílovou skupinu uživatelů? • Je možné aplikaci používat na zobrazovacím zařízení s jediným tlačítkem myši? (Mac, touchscreen) • Je uživatelské rozhraní intuitivní a srozumitelně popsané?
Cílová skupina Předpokládaným trhem pro IPCorder na platformě KNR-090 jsou domácnosti, rekreační objekty a malé prodejny a provozy. Očekává se, že uživatelé jsou počítačově gramotní a mají částečné technické vzdělání v oblasti sítí.
Příklad užití: Přidání kamery do systému Motivace Většina funkcí IPCorderu se týká IP kamer. Přidání kamery do systému je proto základní operace, kterou provede i nováček, který se zařízením nemá jiné zkušenosti. Z toho důvodu je žádoucí, aby byl celý postup srozumitelný a intuitivní. Scénář bude zkoumán kognitivním průchodem, neboť se jedná o sekvenci navazujících dílčích kroků.
Kognitivní průchod O0: Čeho chce uživatel dosáhnout? Přidat kameru do systému. Uživatel chce přidat kameru do aplikace pro pozdější použití. Jedná se o model Vivotek IP7160 s MAC adresou 00:02:d1:09:4e:e6, IP adresu kamera dostala z DHCP serveru a uživatel ji nezná. Předpokládáme, že je uživatel přihlášen a že kamera je zapojena ve stejné síti jako IPCorder. Následuje postup složený z dílčích kroků vedoucích k cíli spolu s diskusí otázek O1-O3 kognitivního průchodu. Zobrazení stránky s nastavením O1: Je uživateli jasné co udělat? Ne. Na stránce je příliš mnoho informací na to, aby se zorientoval. Tlačítko aktivující kartu Settings je jedním z mnoha prvků uživatelského rozhraní. Je nevýrazné. Není zřejmé, že cesta k přidání kamery vede přes něj. Doporučení: Zvýraznit okraj okna a rozšířít ho tak, aby v něm bylo zahrnuto tlačítko Settings respektive Live. O2: Rozpozná uživatel na základě popisek funkcí, která z nich vede k jeho cíli? Ano za předpokladu, že uživatel identifikoval horní panel jako možnost přepnout mezi záložkou Live a Settings. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano, dojde ke změně obsahu celého okna - přepnutí karty. Vyžádání přidání nového zařízení. O1: Je uživateli jasné, co má dělat? Ano. Karta s přehledem kamer je při prvním načtení otevřená, tlačítko "Add New" je výrazné a blízko předchozí pozice myši. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano. Popsika Add New je dostatečně výmluvná. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Po stisknutí hlavního tlačítka myši nad ním se otevře kontextové menu obsahující položku "Discover."
Spuštění automatického nalezení kamery (discoveru) O1: Je uživateli jasné, co má dělat? Ano. Jasná volba z kontextové nabídky. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano. Popiska je dostatečně výmluvná. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ne. Není zřejmé co se stalo. Po klepnutí na discover z nabídky je původní okno nahrazeno novým. Záhlaví, tlačítka, veškerý kontext posledních kroků zmizí. Tato změna však nesymbolizuje probíhající discover, nýbrž se jedná o další výzvu k jeho spuštění. Viz. další krok.
Ilustrace 1: Discover Poslední pokus o spuštění discoveru O1: Je uživateli jasné, co má dělat? Ne. Aplikace očekává stisknutí tlačítka Start Discover. To však změnilo oproti původní nabídce pozici. Přesunulo se doprava nahoru mimo oblast pozornosti uživatele. Spolu s celkovou výměnou obsahu okna vede ke zmatení. Uživatel očekává, že po stisknutí tlačítka dojde k zahájení procesu vyhledávání. Ve skutečnosti aplikace nahradila přehled zařízení novým prázdným oknem. Místo původního záhlaví a tlačítka Add New se nově zobrazilo "Start discover". To však změnilo pozici oproti Add New směrem doprava nahoru a je celkem nevýrazné (mimo oblast pozornosti uživatele). Spolu s celkovou změnou obsahu středního panelu proto unikne pozornosti uživatele.
Doporučení: a) spustit discover rovnou po vybrání položky z menu b) nebo po vybrání možnosti Discover z nabídky zaměnit tlačítka Add New a Delete Selected tlačítkem Start Discover, přehled zařízení nahradit výstupem discoveru tak, aby zůstal jasný kontext operace. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano, popiska Start Discover je samovysvětlující. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Okno se zablokuje a zobrazí se běžně užívaný symbol provádění operace spolu s popisem. Výběr kamery O1: Je uživateli jasné, co má dělat? Ano. Seznam zařízení vyzývá k výběru z nalezených kamer. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano. Výzva Add Selected Devices spolu se zaškrtávacími tlačítky v seznamu jsou dostatečně výmluvné. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Modální okno informuje o probíhající operaci, po skončení se automaticky zobrazí stránka s přehledem a s novou kamerou. Sloupeček Status obsahuje rozumný popis. Identifikace možných problémů na straně uživatele Uživatel může změnit názor a chtít zkusit jinou funkci aplikace. Design rozhraní nabízí velkou svobodu při ovládání. Proto je možno celý postup kdykoliv přerušit a věnovat se jiné práci. Při výběru kamery může uživatel změnit svoje rozhodnutí. Celý proces Discoveru lze zrušit tlačítkem Cancel. Pokud už kameru přidal, je možné ji bez dalších následků ze systému odebrat.
Shrnutí Při kognitivním průchodu jsem našel několik kazů, které jistě překvapí a zmatou nováčka. Na druhou stranu při opakovaném použití již člověk tápat nebude, protože to jsou spíše drobnosti ve smyslu umístění kontrolních prvků. Vytyčený cíl je dosažitelný se znalostmi očekávanými u cílové skupiny uživatelů bez použití sekundárního tlačítka myši. Popisky jsou vyhovující. Intuitivnost použití kazí výše zmíněné nálezy.
Příklad užití: Nastavení nahrávacího režimu Motivace Nahrávání je fundamentální funkcí NVR zařízení. Nastavení samotné se neprovádí často. V modelovém případě jen jednou pro každou kameru. Tím víc záleží na správnosti. Skládá se ze sekvence několika navazujících kroků. Z toho důvodu bude použit kognitivní průchod.
Kognitivní průchod O0: Čeho chce uživatel dosáhnout?
Nastavit nahrávání IPCorderu. Uživatel chce trvale nahrávat video z kamery z předchozího testu. Výchozí podmínky předpokládáme stejné, jako v prvním příkladě použití, navíc očekáváme úspěšně přidanou kamery v systému. Následují dílčí kroky nutné k dosažení cíle spolu s diskusí otázek O1-O3 kognitivního průchodu. Zpřístupnění nastavení Viz. předchozí scénář. Vybrání kamery v přehledu zařízení O1: Je uživateli jasné, co má dělat? Ne. Není jasná vazba mezi nadpisem Status a nastavením nahrávání. Doporučení: Overview by byl lepší název pro doličnou kartu.
Ilustrace 2: Přehled zařízení Ne. Není zřejmé, že po označení kamery se objeví její nastavení. Ne. V záhlaví okna je na výběr karta Recording, která slouží k jinému účelu. Nezjistil jsme k jakému. Doporučení: Odstranit kartu Recording nebo ji lépe příhodněji přejmenovat. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ne. Popiska či symbol pro otevření nastavení kamery neexistuje. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Objeví se nové okno, které se dá podle obsahu identifikovat jako karta nastavení kamery. Otevření záložky Video v nastavení kamery O1: Je uživateli jasné, co má dělat? Ano. Nalézt kartu s nahráváním. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ne. Záložka s nastavením nahrávání je nevhodně popsána. Uživatel se k nastavení dostane sekvenčním prohledáváním všech karet. Popiska Video je zbytečně obšírná vzhledem k obsahu karty. Doporučení: Pojmenovat záložku Recording. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Dojde k přepnutí karty.
Přidání nahrávacího režimu O1: Je uživateli jasné, co má dělat? Ano. Klepnout na tlačítko Add Recording Mode. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano, popiska na tlačítku je dostatečně výmluvná. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano. Dojde k přidání nahrávacího režimu. Vybrat nahrávací režim O1: Je uživateli jasné, co má dělat? Ne. Není zřejmé, že je potřeba nastavit pole Recording type na hodnotu Permanent. V rámečku je příliš mnoho informací. Jeho nadpis a také text v poli When to record obsahují hodnotu Always, což vzbuzuje dojem, že je nahrávání nastaveno. V lepším si uživatel všimne hodnoty Off rozbalovacího seznamu Recording type a bude zmaten. V horším případě špatné nastavení uloží. Doporučení: Prozkoumat situaci heuristickou evaluací která pojmenuje problémy návrhu tohoto dialogu.
Ilustrace 3: Nastavení nahrávání O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ne, viz. diskuse O1. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ano, změní se položka rozbalovacího seznamu. Potvrzení změny O1: Je uživateli jasné, co má dělat? Ano, nabídka s více možnostmi obvykle obsahuje výzvu k uložení změn. O2: Dojde uživateli na základě popisek funkcí, která z nich vede k jeho cíli? Ano, popiska Apply je dostatečně výmluvná. O3: Má uživatel rozumnou zpětnou vazbu po vykonání dotyčné funkce? Ne. Problikne modální okno s přehledem operace a stav kamery se změní na "initializing". Poté se však stav změní na ok, což se shoduje se stavem, kdy kamera neměla nastavené žádné nahrávání. Doporučení: Změnit stav z "ok" na "recording."
Identifikace komplikací na straně uživatele Zmatení při nastavení nahrávacího módu. Aplikace naštěstí nabízí možnost odstranit modifikace provedené v dialogu.
Shrnutí Kognitivní průchod nalezl jeden závažný kaz, v důsledku kterého může dojít ke špatnému nastavení nahrávání. To je vzhledem k plánovanému použití v zabezpečovacích systémech zásadní, neboť chyba se zpravidla zjistí až v okamžiku škodné události. Průchod ukázal, že by bylo vhodné související dialog prozkoumat heuristickou evaluací. Dále se během průchodu objevilo několik kosmetických kazů týkajících se nadpisů tlačítek a karet, které brání intuitivnímu splnění úkolu novým nebo nezkušeným uživatelem.
Příklad užití: Sledování obrazového výstupu kamery Motivace IPCorder umožňuje skrze applet Minerál zobrazit sdruženě obraz z kamer a různé související statistiky. Očekává se, že touto funkcí aplikace nahradí různé monitorovací systémy. Předpokládá se, že po úvodním nastavení se aplikace přepne do Live režimu a v něm poběží na monitorovací stanici. K průzkumu bude použita heuristická evaluace, která se hodí lépe pro úkoly s více způsoby řešení a širším zadáním, než kognitivní průchod. Použije se sada Nielsenových heuristik, jež pro referenci přikládám: 1. Visibility of system status The system should always keep users informed about what is going on, through appropriate feedback within reasonable time. 2. Match between system and the real world The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order. 3. User control and freedom Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo. 4. Consistency and standards Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions. 5. Error prevention Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action. 6. Recognition rather than recall Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate. 7. Flexibility and efficiency of use Accelerators -- unseen by the novice user -- may often speed up the interaction for the expert
user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions. 8. Aesthetic and minimalist design Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility. 9. Help users recognize, diagnose, and recover from errors Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution. 10. Help and documentation Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
Heuristická evaluace Uživatel si chce prohlédnout obraz z kamery. Předpokládá se, že kamera je již v systému přidána (první scénář). Vzhledem k složitosti aplikace jsem se rozhodnul použít otisk obrazovky s popiskami jako rozcestník.
Ilustrace 4: Rozcestník
První nález (označeno 1 na obrázku) porušuje čtvrtou Nielsenovu heuristiku týkající se konzistence a standartů. Je zvykem, že ve skupině kulatých tlačítek (radio button) je vždy alespoň jedno vybráno. Dále tato tlačítka se obvykle používají ve formulářích různých nastavení, jejichž obsah se potom najednou uloží. Použití k přepínání obsahu okna je atypické. Navíc pokud v pohledu není žádná kamera, tlačítka nic nedělají. Doporučení: Zaměnit kulatá tlačítka za panel záložek (TABů) s přirozeně vybranou kartou Live. Další nález (označeno 2) porušuje šestou heuristiku týkající se srozumitelnosti a nároků na paměť uživatele. Není zřejmé, jak zobrazit pohled z kamery, ačkoliv je způsobů hned několik. Doporučení: Zobrazit v prázdném poli nápovědu, která po přidání pohledu kamery zmizí. Nabízí se například text "Double-click camera thumbnail to view" nebo "Drag&drop camera thumbnail here to view." Nález označený 3 porušuje opět heuristiku týkající se konvencí. Zažitým symbolem pro editování jakéhokoliv textu je ikona obsahující karetu (textový kurzor) a písmena abc. Doporučení: Přidat do ikony symbol karety. Nález označený 4 porušuje čtvrtou heuristiku. Tlačítko save vedle své zřejmé funkce obvykle signalizuje, zda byl asociovaný dokument změněn. Při prvním načtení dokumentu bývá zakázané (šedé). Stejně tak po uložení dokumentu. V případě úprav se povolí. Doporučení: Svázat zašedění se stavem okna pohledů. Po kliknutí na tlačítko Save view se objeví dialog vyzývající k přejmenování pohledu (5 na obrázku). Porušuje čtvrtou heuristiku v tom smyslu, že je obvyklé předvyplnit stávající hodnotu pro pohodlí uživatele. Dále porušuje šestou heuristiku, neboť pokud uživatel chce upravit název pohledu, musí jej stejně celý napsat (z paměti nebo opsat). Doporučení: Předvyplnit stávající jméno pohledu. Šestý nález - ikona otazníku v zeleném poli - porušuje čtvrtou heuristiku. Evokuje nabídku nápovědy, ale je neaktivní, nedá se na ni kliknout. Doporučení: Ikonu odstranit nebo nahradit vhodnějším symbolem. Sedmý nález se týká vzájemného postavení dialogu a hlavního okna aplikace. Celý dialog je modální v tom smyslu, že odřízne zbytek aplikace od uživatelského vstupu, na druhou stranu je možné ho zakrýt oknem prohlížeče, jak je vidět z obrázku. Tím je porušena čtvrtá heuristika - modální dialog se standartně zobrazuje nad přidruženým oknem. V tu chvíli se aplikace nedá ovládat a není zřejmé proč (k zakrytí oken mohlo dojít omylem). Tím je porušena první Nielsenova heuristika týkající stavu systému (není zřejmé, co se děje) a též pátá heuristika, týkající se zamezení vzniku chybových stavů vhodným designem. Uživatel může v tuto chvíli vypnout celý prohlížeč a potenciálně přijít o rozdělanou práci či změněná nastavení. Doporučení: Svázat viditelnost dialogu s viditelností aplikace.
Shrnutí Nejčastěji byla porušena čtvrtá heuristika týkající se dodržování standartů a konvencí. Nabízí se, že sedmý nález je chyba implementace spíš než chyba designu. Za vážný považuji druhý nález (přidání kamery do pohledu), který de facto brání splnění scénáře.
Závěr Test nalezl jednu závažnou chybu a množství kosmetických vad. Uživatel může dojít k závěru, že nastavil nahrávání, ačkoliv se tak nestalo. Zjištění přesné příčiny je mimo rozlišovací možnosti použité metody. Doporučuji situaci prozkoumat heuristickou evaluací. Podrobnosti v druhém příkladě užití. Ostatní kazy se převážně týkaly dodržování zažitých standartů. Obvykle nejsou fatální, ale znepříjemňují práci s aplikací. Je pravděpodobné, že uživatelé z cílové skupiny mají zkušnosti s ruzným jiným software, a že se tím tedy nenechají odradit. Přiřazuji jim proto nízkou prioritu. Doporučuji ujasnit si referenční standart, aplikaci systematicky projít a opravit. Heuristická evaluace byla provedena se sadou Nielsenových otázek. Jako referenční platformu pro stanovení standartů uživatelského rozhraní jsem použil majoritní MS Windows a Linux/Gnome, jež jsou si podobné. Ačkoliv je aplikace originální a atypická, využívá tradiční prvky uživatelského rozhraní a proto ji lze zkoumat z tohoto hlediska. Nebylo možné použít desátou otázku z testovací sady týkající se nápovědy a dokumentace, neboť aplikace je v beta verzi a zatím neobsahuje uživatelský manuál. Nálezy pořízené touto metodou jsou informativního charakteru, neboť jsou podloženy jedinou evaluací. Při skutečném použití by došlo k průzkumu více experty. Výsledná zpráva by pak obsahovala syntézu jejich prací. Celý test byl proveden na 32-bitovém Ubutnu Linuxu 10.04. s prohlížečem Firefox 3.6.13 a javou 1.6.0_24 od společnosti SUN. Nemám podezření, že by byl některý z nálezů způsoben konfigurací testovací stanice. Při testování příkladů užití nebylo potřeba sekundární tlačítko myši. Požadované znalosti cílové skupiny stačily s ohledem na fakt, že je aplikace v beta verzi a tudíž neobsahuje lokalizané texty. Webová část je s výhradami přehledná a srozumitelně popsaná. Zobrazovací applet obsahuje srozumitelnou symboliku. Nedokáži odpovědět na otázku intuitivnosti použití, protože znám předchozí verze produktu.