Testování mobilní aplikace Jízdenky společnosti RegioJet a.s. Úloha: A2 Autor práce: Daniel Sklář Vedoucí práce: Ing. Adam Sporka, Ph.D. Předmět: A4B39TUR Univerzita: ČVUT - Fakulta elektrotechniky 1
1 Obsah 1 Obsah 2 Úvod 3 O aplikaci 4 Verze a data 5 Cílová skupina 6 Použité metodiky 6.1 Kognitivní průchod 6.2 Heuristická analýza 7 Testované případy užití 7.1 A. Rezervace jízdenky bez registrace 7.1.1 Výběr trasy jízdy 7.1.2 Výběr data jízdy 7.1.3 Výběr typu jízdenky 7.1.4 Výběr času jízdy 7.1.5 Výběru místa sezení 7.1.6 Konečná rezervace 7.2 B. Nákup jízdenky bez registrace 7.2.1 S vytvořením registrace 7.2.2 S přihlášením 7.3 C. Rezervace a nákup jízdenky s platnou registrací a přihlášením 7.3.1 Výběr trasy, data a typu jízdenky 7.3.2 Výběr času jízdy a sedadlo jízdenky 7.3.3 Rezervace jízdenky 7.3.4 Následný nákup jízdenky 7.4. D. Změna jízdenky 7.4.1 Stornování první jízdenky 7.4.2 Zaplacení druhé jízdenky 7.4.4 Přehled nálezů Nálezy jsou seřazeny podle priority sestupně. 8 Závěr 9 Literatura 2
2 Úvod K aplikaci, jejíž uživatelské rozhraní testuji, jsem se dostal pří mé obvyklé činnosti nákupy jízdenek, nicméně až na novém zařízení. Obvykle jsem místo této mobilní aplikaci, používal aplikaci webovou. Vzhledem ke komplikacím s mým novým zařízením, Iphone 6s plus, jsem byl nucen začít používat tuto aplikaci. Iphone si nepamatoval přihlašovací údaje do webové aplikace a jelikož jsem nechtěl zadávat vždy 10 místné číslo z hlavy a ručně, musel jsem činit. A testovat zrovna tuto aplikaci jsem se rozhodnul proto, že pro mě, pokročilého uživatele, byla velmi stresující. Nicméně od doby, kdy jsem ji používal poprvé, se mírně zlepšila. Testování aplikace bude prováděno pomocí kognitivního průchodu a heuristické analýzy, které jsou podrobněji vysvětleny v metodické části. Každý případ užití je testován kognitivním průchodem a výsledky jsou v části přehled nálezů podrobeny heuristické analýze, aby vzniklé problémy použitelnosti byly správně kategorizovány. 3 O aplikaci Aplikace Jízdenky od společnosti RegioJet a.s. slouží pro nákup a rezervaci vlakových i autobusových jízdenek, které výše zmiňovaná firma nabízí. Aplikace Jízdenky vyvinutá společností Student Agency, s.r.o. je dostupná pro operační systém ios a Android. 4 Verze a data Aplikace Jízdenky 1.5.2 bude testována na zařízení Iphone 6s plus s verzí operačního systému ios 9.2.1 (13D15). Snímky obrazovky ukazující průchod aplikací byly pořízeny v březnu roku 2016. 5 Cílová skupina Cílová skupina lidí, jsou lidé ve věku od 18 do 64 let, kteří jsou svéprávní a netrpí žádnou fyzickou ani duševní poruchou, které by je v jakémkoliv smyslu omezila v používání výše zmíněného zařízení a aplikace. S aplikací pracují prvně. 6 Použité metodiky Pro účely této úlohy budeme pracovat s metodou testování bez uživatele. Existují dva odlišné postupy, jakými se provádí testování kognitivní průchod a heuristická analýza. Pro testování mobilní aplikace budeme používat primárně kognitivní průchod. Výsledky kognitivního průchodu v přehledu nálezů převedeme do kategorií z heuristické analýzy. 6.1 Kognitivní průchod Kognitivní průchod zjišťuje použitelnost z pohledu nových uživatelů. Nejprve se položí otázka, která zachycuje uživatelův záměr se systémem: [1] 3
Q0: Čeho chce uživatel dosáhnout? Následně proběhne několik iterací kroků, kde v rámci každého kroku se zodpovídají níže uvedené otázky: Q1. Je uživateli, pracujícímu s danou aplikací srozumitelné, co má udělat? Q2. Je uživateli, pracujícímu s danou aplikací srozumitelné, jak to má udělat? Q3. Dostane uživatel dostatečnou zpětnou vazbu od daného produktu? Pokud je alespoň jedna odpověď v některém kroku ne, pak se pravděpodobně jedná o chybu v uživatelském rozhraní a tento nález je evidován. Metoda je rychlá a cenově nenáročná. 6.2 Heuristická analýza Heuristická analýza definuje, jaká kritéria by mělo uživatelské rozhraní splňovat, aby uživatelovi žádným způsobem nekomplikovalo práci se systémem. Předpokládá se expertní znalost testujícího uživatele, který vyhledá porušená pravidla a vypíše prioritu jejich odstranění. Běžně se používá sada heuristik podle Jakoba Nielsena: [2] H1. Viditelnost stavu systému systém notifikuje uživatele o tom, co se právě odehrává H2. Propojení systému a reálného světa komunikace systému s uživatelem se odehrává na základě běžně užívané logiky H3. Uživatelská kontrola a svoboda uživatelé při práci se systémem dělají chyby a potřebují proto únikový východ pro návrat do předchozího stavu. H4. Konzistence a standardizace ovládání prvků zůstává neměnné napříč celým systémem a využívá známých principů užitých v jiných systémech H5. Prevence chyb systém předchází chybovým hlášením bezpečným designem, který uživatelovi neumožňuje způsobení chyb H6. Rozpoznání namísto vzpomínání instrukce jsou v systému viditelně umístěny, a tak si uživatel nemusí pamatovat, jak systém ovládat H7. Flexibilní a efektivní použití systém umožňuje rychlou a efektivní práci pro pokročilé uživatele H8. Estetický a minimalistický design systém obsahuje jen důležité informací a nezahlcuje uživatele zbytečnými grafickými prvky H9. Pomoc uživatelů pochopit, poznat a vzpamatovat se z chyb chybové hlášky jsou srozumitelné a přímo navrhují řešení H10. Nápověda a návody všechny informace lze snadno vyhledat, nápověda je rozčleněna do kroků 4
7 Testované případy užití V aplikaci Jízdenky budeme testovat tyto 4 případy užití: A. Rezervace jízdenky bez registrace Tento případ užití testuje jednu z primárních funkcí aplikace a to rezervace jízdenky. U tohoto testu se předpokládá, že uživatel je v této aplikaci poprvé a snaží se intuitivně zakoupit jízdné. Pokouší se tak o nákup pro více osob. Celý případ užití se skládá z více částí. Prvně si uživatel nastavuje trasu jízdy, termín, počet osob apod. a na konec se snaží tuto jízdenku zarezervovat s tím, že není registrovaný. Z pohledu použitelnosti tento případ užití vykazuje spoustu chyb, jak kosmetických, tak v neintuitivnosti. B. Nákup jízdenky bez registrace Zde uživatel navazuje na předchozí činnost a snaží se své registrované lístky koupit bez předchozí registrace. Nastává ovšem okamžitý problém, kdy se člověk musí registrovat a zaplatit tyto jízdenky až pod svým profilem. Z pohledu použitelnosti tento případ užití vykazuje značně velký problém, kdy v daném postupu dojdeme do bodu, kde si žádnou jízdenku nebudeme moct koupit a celé naše předchozí snažení přijde vniveč, jelikož se nám nikde jízdenky po registraci do našeho profilu neuložily. C. Rezervace a nákup jízdenky s platnou registrací a přihlášením Zde pouze opakujeme test A s tím, že jsme již registrovaní a jsme přihlášeni. Procházím body zrychleně, ale opakovaně, abych ukázal celý postup, jak dojít až k placení v případě přihlášeného uživatele. A nakonec testuji nákup a tedy placení samotného lístku. Zde již z pohledu použitelnosti k výraznějším problémům nedošlo. Opakují se pouze ty, které byly zmíněny výše, a taky je zde jistá nepřehlednost pro nezkušeného uživatele v závěrečném placení. D. Změna jízdenky Uživatel má za úkol změnit jízdenku za jinou tak, že jednu má zaplacenou a druhou rezervovanou. Úkol je tedy jednu jízdenku stornovat a stejnými penězi zaplatit jízdenku druhou. V tomto konkrétním případě, který uvidíte níže, problém nenastává, ten nastává až tehdy, kdy se uživatel snaží takto zaplatit jízdenku dražší a neuvědomí si to. Tento problém musí vyřešit vhodným dobitím kreditu, nicméně tuto činnost samotnou netestuji. Projevuje se při testu C, kde musíme zaplatit za lístek. 5
7.1 A. Rezervace jízdenky bez registrace Předpokládáme, že má uživatel za úkol rezervovat jízdenky, aniž by byl registrovaný. Aplikaci má otevřenou a pokračuje v následujících krocích, které uvidíme na snímcích obrazovky. Q0: Rezervovat jízdenku bez registrace Obr(A1-A4) 7.1.1 Výběr trasy jízdy Q1 Ano Orientace v pořádku. Tlačítko pokračovat bez přihlášení pochopitelné. Q2 Ano Lišty vybízí k jejich aktivnímu použití. 6
Q3 Ano Po rozkliknutí dostane člověk nabídku možných míst kam a odkud jet. Obr(A5) 7.1.2 Výběr data jízdy Q1 Ano Ano, aplikace vybízí člověka k výběru data. Q2 Ano Nepřímo viditelný rotační výběr. Q3 Ano Data z minulosti se vrátí na dnešek a dále má možnosti otevřené. 7
Obr(A6) 7.1.3 Výběr typu jízdenky Q1 Ano Aplikace opět vybízí zvolení počtu a typu jízdenek. Q2 Ano Stačí rozkliknout tlačitko cestující. Nemožnost přidat více jízdenek. Špatně vytvořené uživatelské rozhraní čí je to pravidlo. Nezjistil jsem. Q3 Ano Po rozkliknutí vidí, co si může vybrat. 8
Obr(A7) 7.1.4 Výběr času jízdy Q1 Ano Vidí časy, kdy vyjíždí a kdy přijíždí. Q2 Ano Klikne na aktivní pole. Q3 Ano Vždy se mu rozklikne. Obr(A8,A9) 9
7.1.5 Výběru místa sezení Q1 Ne Ne úplně. Legenda sice není vidět. Ale relativně intuitivně se v tom člověk zorientuje. Nevidím zde legendu, abych poznal, která barva co znamená. Q2 Ano Po pochopení co udělat, již chápe, že stačí kliknout na místo, kde chce sedět. Q3 Ano Nicméně neví, které místo zrovna přemísťuje v případě více lidí. Problematika, kde člověk může přesunout místa pouze postupně. Ne konkrétní místo. Obr(A10,A11) 7.1.6 Konečná rezervace Q1 Ano Vidí obrovské tlačítko rezervovat Q2 Ano Klikne na něj. Q3 Ano Dostává zpětnou vazbu. 7.2 B. Nákup jízdenky bez registrace Tady uživatel zkouší zaplatit jízdenku, nicméně v předchozím kroku se dozvěděl, že se prvně musí přihlásit. Q0: Nakoupit jízdenku bez registrace 10
Obr(B1-B4) 7.2.1 S vytvořením registrace Q1 Ano Vidí jízdenky. Q2 Ano Klikne na ně a rozklikne rezervace. Q3 Ano Bohužel tam nic není. Rezervované jízdenky se nikam neuložily. 11
7.2.2 S přihlášením Q1 Ano Vidí jízdenky. Q2 Ano Klikne na ně a rozklikne rezervace. Q3 Ano Zde již vidí své rezervace. 7.3 C. Rezervace a nákup jízdenky s platnou registrací a přihlášením Opakujeme test A, proto nebudeme tak podrobní. Většina testovaných situací se opakuje. Důležitý je však závěr, kdy přijde na placení. Q0: Rezervovat a nakoupit jízdenku při přihlášení Obr(C1-A3) 7.3.1 Výběr trasy, data a typu jízdenky Q1 Ano Ano, rozebráno podrobně v testu A, nicméně vše je relativně intuitivní. Q2 Ano Aplikace se mu sama nabízí. Q3 Ano Téměř vždy bez výhrad. 12
7.3.2 Výběr času jízdy a sedadlo jízdenky Q1 Ano Vše viditelné. Q2 Ano Vždy zvolí a dále mu napomůže zpětná vazba. Q3 Ano Dostává zpětnou vazbu. Obr(C4,C5) 7.3.3 Rezervace jízdenky Q1 Ano Zde vidí rezervovat. Q2 Ano Rozumně stiskne. Q3 Ano Zde již rezervace proběhla bez chybové hlášky, než jako v případě testu A. Proběhne pouze upozornění, které vás má dále navigovat. 13
Obr(C6-C10) 7.3.4 Následný nákup jízdenky Zde přichází relativně problematická část, kde si uživatel musí nejdříve nabít kredit a až poté si z něj může uhradit jízdenku. Pokud nechcete mít peníze na kreditu, je dobré zapamatovat si přesnou částku, která je nutná k zaplacení daného lístku a takovou částkou si nabít kredit Q1 Ne Není zde úplně zřetelné, zda uhrazuje jízdenku či nikoliv. Chybné navádění jedince k většímu vkladu a především k nákupu jízdenky ve více krocích Q2 Ano Body ho relativně navigují. Q3 Ano I po nabití kreditu se jej ptají, jestli chce uhradit jízdenku z kreditu, 14
nicméně není to úplně prvoplánově pochopitelné. 7.4 D. Změna jízdenky Máme již zakoupenou jízdenku a druhou máme rezervovanou. Chceme první stornovat a druhou zakoupit z peněz té první. Jízdenky samy o sobě nelze jinak přerezervovat, než tímto způsobem. Zde jsou jednotlivé kroky relativně snadné a intuitivní, ale proces jako celek není prvoplánově pochopitelný. Prvně stornovat na kredit a až potom z kreditu zaplatit jízdné není ideální a zaslouží si kritiku. Otázka je, jak je to výhodné pro vlastníka, nicméně z pohledu uživatele se mi to nelíbí. Q0: Změnit jízdenku Obr(D1,D2) 7.4.1 Stornování první jízdenky Q1 Ano Vidíme zřetelně tlačítko stornovat. Q2 Ano Máme představu. Q3 Ano Dokonce nám to dává doplňující otázky, abychom se mohli při překliknutí rozhodnout vrátit akci zpět. 15
Obr(D3-D5) 7.4.2 Zaplacení druhé jízdenky Q1 Ano Zřetelně vidět. Q2 Ano Nabádá nás to k uhrazení z kreditu. Q3 Ano Dává nám to zpětnou vazbu ve formě výpisů, že vše proběhlo v pořádku. 8 Přehled nálezů Nálezy jsou seřazeny podle priority sestupně. Kritický nález je takovou chybou použitelnosti, která může běžného uživatele snadno odradit od používání aplikace. Efekt této chyby použitelnosti ovlivňuje běžné používání aplikace zásadním způsobem. Podstatný nález je takový, který uživatele může zmást a tím mu ztíží práci s aplikací, ovšem nekomplikuje práci natolik, aby mu zabránil aplikaci používat. Kosmetický nález postihuje pouze detaily, které by bylo možné zlepšit, aby se zlepšil celkový dojem z aplikace převážně z hlediska vzhledu a přehlednosti. 16
Případ užití Obrázek Výskyt problému / Popis / Heuristika Typ nálezu B B4 Nákup jízdenky s vytvořením registrace Prvně rezervuji jízdenku bez registrace, poté jsem nucen se registrovat, ale jízdenka se nikam neuloží a musím celý proces opakovat Kritický H5. Prevence chyb, H3. Uživatelská kontrola a svoboda A A6 Při volbě více počtu cestujících Není možné přidat více, než 6 cestujících Podstatný H7. Flexibilní a efektivní použití Volba sedadel A A8,A9 Nepoznám co je volné a co ne, navíc nevím, které sedadlo měním. Kosmetický C C6-C10 Následný nákup jízdenky s přihlášením Hradím jízdenku tak, že si prvně nabiji na určitou Kosmetický 17
částku kredit a až pak jízdenku uhradím z kreditu. H4. Konzistence a standardizace Změna jízdenky D D1-D5 Podobná kritika jako při bodu C, kdy musím prvně stornovat jednu jízdenku na kredit a z něj si pak zaplatit jízdenku druhou. Kosmetický H4. Konzistence a standardizace 9 Závěr Testování aplikace odhalilo pár uživatelsky nepřívětivých principů, kterých se vývojáři dopustili. Tyto nevhodné principy a funkcionality se zdají jako maličkosti, nicméně celková aplikace tím působí velice těžkopádně a špatně se s ní pracuje. Při podrobnější analýze by se dalo objevit určitě více chyb, ale rád bych ještě jednou podotknul, že největší kritiku si zaslouží aplikace jako celek. Osobně si myslím, že tato aplikace má ještě obrovské rezervy a mohla by se učit od svého staršího a přehlednějšího bratra webové aplikace. V každém případě, abych pouze nekritizoval toto dílo, tak musím tvrdit, že v porovnání s konkurenčními programy na nákup jízdenek je naše testovaná aplikace velice sofistikovaná a propracovaná. Všechny portály v tomto odvětví by se měly ještě rapidně zlepšit, a být uživatelsky přívětivější, což se s téměř naprostou jistotou do pár let stane. 10 Literatura [1] http://www.usabilitybok.org/cognitive-walkthrough [2] https://www.nngroup.com/articles/ten-usability-heuristics/ 18