Nädal 12: näited heast ja halvast kasutatavusest veebis

Käesolevas ajaveebipostituses analüüsin kahte - üht head ja üht halba - näidet kasutatavusest veebis, tuginedes Jakob Nielsen'i poolt sõnastatud kasutatavuse viiele komponendile.

Hea kasutatavus

Hea kasutatavuse näiteks toon Cracking the Cryptic'u sudokude lahendamiseks mõeldud veebirakenduse. Täpsustan, et siinkohal räägin just sellest olukorrast, kui kasutaja on mingisuguse konkreetse sudokumõistatuse leheküljel, kuna nende veebilehe esileht jätab minu meelest nii mõndagi soovida.

Link ühele sudokule analüüsitavas rakenduses.

Niisiis, rakenduse kasutatavusest:

Õpitavus

CtC veebirakenduse õpitavus on minu hinnangul äärmiselt hea. Rakenduse kogu funktsionaalsus on nähtav visuaalsete elementidena, mis võimaldavad vastavat funktsiooni kasutada või aktiveerida neil kursoriga klõpsates. Nende elementide disain on visuaalselt lihtne ja samas tavainimesele intuitiivselt mõistetav - juba peale vaadates peaks enamusel esmakordsetest kasutajatest tekkima vähemalt aimdus kindla elemendi kasutuse kohta ning seda aimdust saab kiiresti ja tagajärgedeta järgi kontrollida. Sobivatel elementidel on kasutusel üldlevinud ikoonid (näiteks hammasratas seadete avamiseks). Kirjeldatud disain koos piisavalt väikese funktsionaalsuste arvuga tähendab, et kasutaja peaks saama väga lühikese aja jooksul hea arusaama rakenduse võimalustest ning suutma neid piisaval määral rakendada oma eesmärkide saavutamiseks (ehk sudoku lahendamiseks), ilma mingisugust kasutusjuhendit lugemata.

Tõhusus

Tõhusus on samuti väga hea. Kuigi õpitavuse vaatepunktist tõin välja visuaalsed elemendid, mille abil saab rakenduse kogu funktsionaalsust kasutada vaid osutamisseadme ja ühe nupu abil (ehk näiteks arvutihiirega), siis tõhususe jaoks tulevad mängu pigem klaviatuuri kasutamise võimalused.

Loomulikult saab numbreid sudokuruudustikku sisestada numbriklahvidega (nii numbrite rea kui numpad'iga). Samuti saab valida mitu sudokuruutu korraga, hoides all Shift või Ctrl klahvi ning undo ja redo funktsioone kasutada vastavalt Ctrl-Z ja Ctrl-Y klahvikombinatsioonide kaudu.
Erinevate sisestusrežiimide (numbrisisestus, nurgamärge, keskmärge, värvimine) kasutamiseks on võimalik all hoida kindlat kombinatsiooni Ctrl ja Shift klahvidest, kusjuures need kombinatsioonid on keerukuse mõttes mõistlikult pandud vastavusse kasutussagedusega: värvimine, mida kasutatakse harvemini kui nurga- ja keskmärkmeid, on ainuke režiim, mida aktiveeritakse mõlemat klahvi korraga all hoides. Samuti on võimalik tühikut kasutades järgmist režiimi valida või ZXCV klahve kasutades kindlat režiimi sisse lülitada.
Ka sudokuruudustikus ruutude valimiseks on mitu viisi. Muidugi, kõige tavalisem viis on lihtsalt hiirekursoriga ruute valida, kuid oma valikut saab liigutada ka WASD- ja nooleklahvidega. Samuti on võimalik valida kõik ruudud Ctrl-A klahvikombinatsiooni abil või inverteerida ruutude valik Ctrl-I'ga.

Selline võimaluste mitmekesisus (kuid mitte rõhuv üleliiasus) võimaldab rakendust kasutada väga tõhusalt. Tõenäoliselt on kasutajal alati käepärast mingisugune funktsionaalsus, olenemata tema käte asukohast.
Näiteks:
Parem käsi hiirel ja vasak käsi klaviatuuri vasakpoolses osas, valib kasutaja hiirega ruudustikus ruudu ning sisestab vasaku käega klaviatuuri numbririda kasutades numbri. Seejärel valib kasutaja hiirega mõned teised ruudud ning liigutab parema käe numpad'i kohale. Vasaku käega Shift'i all hoides aktiveerib ta nurgamärkme sisestamise režiimi ning parema käega kasutab numpad'i soovitud numbrite sisestamiseks. Seejärel kasutab kasutaja vasaku käega WASD-klahve, et valida mõni teine ruut ning sisestab parema käega numpad'i kasutades sinna numbri - polnud vajadust raisata aega parema käe tagasi hiire peale liigutamisega.
Nii saab kasutaja jooksvalt valida kasutusmeetodite variantide hulgast endale hetkel sobivaid ning töötada suure tõhususega.

Tõhususega seoses tasub veel mainida, et kui sudokuruudustikus on mitu sarnast ruutu (sisaldavad sama värvi, sama numbrit või sarnaseid märkmeid), siis saab ühele sellisele ruudule topeltklõpsates valida kõik sarnased ruudud.

Samuti võib siinkohal taas vaadata kõike ülaltoodut õpitavuse vaatenurgast.
Kuna kõik kirjeldatud klahvikombinatsioonid ja kiirklahvid (välja arvatud ZXCV) on sarnase funktsionaalsusega ka paljudes muudes programmides, on täiesti võimalik, et uus kasutaja avastab need lühikese ajaga ise ilma mingisuguse juhendita. Näiteks WASD- ja nooleklahvid on üsna standardsed liikumisklahvid, Shifti või Ctrl'i allhoidmine võimaldab pea igas tarkvaras valida mitu elementi korraga jne.
Lõppude lõpuks on esilehel ka olemas kiirklahvide juhend, mis on lühike (peaks ühele ekraanile ära mahtuma) ning kiirelt hoomatav.

Meeldejäävus

Kuna õpitavus on juba nii heal tasemel ning rakendus pole kuigi keeruline, ei tohiks meeldejäävusegagi mingeid probleeme tekkida. Juba see, et kogu peamine funktsionaalsus on alati nähtav ka visuaalsete elementidena, peaks mõne sekundiga kasutajale meenutama kõik rakenduse kasutamise kontseptuaalsed aspektid. Kuna kiirklahvid esinevad rakenduses oma üldlevinud funktsionaalsusega, siis peaksid needki üsna kiirelt meenuma. Kui kiirklahvid siiski ise ei meenu, peaks kiire pilk esilehel asuvale juhendile kõik ruttu meelde tuletama.

Vead

Sudoku lahendamisel tehtud vigu võimaldab peamiselt parandada undo-funktsionaalsuse kasutamine. Muidugi, kui kasutaja ei suuda ise tuvastada, kus viga sisse tuli, võib olla vajalik kogu sudoku otsast alustamine. Selleks võib kasutada restart-nuppu või lihtsalt kogu sudokuruudustiku sisu ise ära kustutada.
Vigade parandamisel võib abiks olla ka märkmete püsivus nii-öelda numbrite "taga". Kui märkmeid sisaldanud ruutu sisestada number, võiks ehk arvata, et need märkmed kustutatakse ära. Visuaalselt need tõepoolest kaovad, kuid kui kustutada sisestatud number, siis ilmuvad märkmed taas välja. See võib olla abiks vea otsimisel ja parandamisel.

Kõige algelisemate vigade tuvastamiseks on rakendusse sisseehitatud ka konfliktikontroll, mis kontrollib, kas ruudustikus esineb konflikt klassikalise sudoku reeglitega. See aga muidugi ei suuda märgata loogikavigu, mis alles hiljem tegeliku vea põhjustavad (näiteks teatud ruutudest valede numbrite välistamise või) ning lisaks võivad mitmed sudokulahendajad pidada ka seda algelist konfliktikontrolli sohitegemiseks.
Konfliktikontrolli suurim probleem on selle suutmatus kontrollida konflikte sudoku lisareeglitega. Muidugi, see polegi mõeldud seda tegema, kuid see tähendab, et lisareeglitega sudokude korral peaks kasutaja lisareegleid silmas pidades oma lahenduse ise üle kontrollima, kuna automaatne konfliktikontroll mõistab vaid klassikalise sudoku reegleid.

Rahulolu

Arvan, et kõik eelnevad punktid annavad juba üsna olulise panuse kasutaja rahulolu kindlustamiseks. Kui tõhus kasutamine poleks nii mugav, oleks rahulolu kindlasti väiksem. Kui sisestatud numbreid poleks võimalik muuta ega kustutada, oleks rahulolu kõvasti väiksem (veidi absurdne näide, aga siiski tõsi).

Kuna rakenduse ülesanne (võimaldada sudokusid lahendada) pole väga keeruline, on selle teostamise juures minu meelest kõige olulisem see, et rakendus ei "jääks kasutajatele jalgu". Mõne keerulisema rakenduse korral oleks ehk aktsepteeritav, kui üks või teine funktsionaalsus oleks veidi kohmakas, kuid nii lihtsa rakenduse korral on ülioluline, et kasutaja ei koperdaks ühegi ebavajaliku takistuse otsa.  Rakendus peab võimaldama end kasutada, kuid siis justkui kobima kasutajal eest ära - kusjuures see "kobimine" võib olla aktiivsem tegevus, kui võiks arvata.
Sellega saab analüüsitav rakendus ka imehästi hakkama. Kõik olemasolevad funktsionaalsused on mugavad kasutada ja käituvad täpselt, nagu võiks tahta.

Näiteks toon sudokuruudustiku ruutude hitbox'id.
Kui rääkida vaid ühe ruudu valimisest kursoriga, siis näivad hitbox'id olevat täpselt visuaalse ruudu suurused. Kuid kui hoida hiirel valimisnuppu all ja liikuda kursoriga mööda ruudustikku, on hitbox'ide suurused veidi väiksemad.
Kui hitbox'id oleksid suuremad, oleks liiga lihtne kogemata valida soovimatuid ruute. Samas, kui need oleksid väiksemad, jääksid soovitud ruudud vahel aktiveerimata. Mõlemal juhul tähendaks see rakenduse läbikukkumist eelmainitud "kasutajalt eest ära kobimises". "Kobimine" praegusel juhul kujutas endast lisatööd, mida paljud kasutajad küllap isegi ei märka, kuid märkaksid kindlasti, kui seda tööd poleks tehtud.

Lisaks "kasutajale mitte jalgu jäämisele" on oluline siiski ka see, et rakendus pakuks piisavalt funktsionaalsust, hoolimata oma lihtsusest. Sellega saab see taas üsna hästi hakkama. Näiteks annaks rakenduse kasutamine palju vähem rahulolu, kui poleks võimalik teha kesk- ja nurgamärkmeid. Ka ruutude värvimine on vägagi teretulnud võimalus, ilma milleta oleks näiteks paarsust või hulgateooriat kasutavaid sudokusid üsna masendav lahendada.
Üldiselt ütleksin, et enamus sudokulahendajaid ei tohiks CtC veebirakenduses funktsionaalsustest olulist puudust tunda. Siiski, mina ise olen mõnikord tundnud, et oleks väga kasulik, kui saaks ka ruudustikust väljapoole teha märkmeid.

Isiklikult võin öelda, et mina olen väga rahul selle rakendusega. Võrreldes mõne teise sudokurakendusega, mida olen proovinud, on CtC veebirakendust palju mugavam kasutada ning ka funktsionaalsusi on sel kas rohkem või vähemalt on kõik tähtsamad funktsionaalsused selles esindatud.

Halb kasutatavus

Halva kasutatavuse näiteks toon Arvutitarga veebilehe.
Õpitavuse, meeldejäävuse ja veakindluse kohta mul eriti midagi kirjutada pole, seega keskendun tõhususele ja rahulolule.

Tõhusus

Arvutitarga veebilehe kaubavaliku filtreerimisvõimalused on piinlikult puudulikud, mis teeb toodete otsimise ja võrdlemise äärmiselt tülikaks. Kõik tooted kuuluvad 3-tasemelisse kategooriate hierarhiasse ning muid omadustepõhiseid filtreerimisvahendeid ei leidu.

See tähendab seda, et esimesed 2 kategooriat kasutatakse ära tootetüübi defineerimiseks - nt 1. kategooria: "Arvutikomponendid", 2. kategooria: "Emaplaadid" - ning viimast kasutatakse justkui korraliku filtreerimissüsteemi kokkuklopsitud asendusena. Niisiis on 3. kategooria valikutes lihtsalt mõned variandid ühest omadusest, mida veebilehe looja otsustas valikutena pakkuda. Emaplaatide puhul on selleks omaduseks protsessori pesa tüüp. Oluline omadus on see kindlasti, kuid kaugeltki mitte ainuke. Täielikult puudub viis filtreerida emaplaadi suuruse ja kiibistiku järgi, rääkimata erinevate liideste ja pesade arvust ja tüübist. Samuti, kui mõne teise tootekategooria korral on valitud 3. kategooriaks mingisugune arvväärtusega omaduste vahemik (näiteks toiteplokkide võimsused), siis on kasutaja sunnitud "filtreerima" vaid nende etteantud vahemike järgi.

On täiesti naeruväärne võimaldada kasutajal filtreerida tooteid vaid ühe või mõne meelevaldselt valitud omaduse järgi. Siin on selgelt proovitud kohaldada ranget hierarhilist kategooriate süsteemi kasutusjuhuks, milleks see absoluutselt ei sobi. Kui tahta selle süsteemiga võimaldada kasutajal filtreerida tooteid rohkemate omaduste järgi, oleks tulemuseks ebamõistlikult pikk 3. kategooria variantide nimekiri, mis ikkagi oleks äärmiselt puudulik: esiteks oleks täiesti võimatu "filtreid" kombineerida ning teiseks saaks arvväärtuste ja vahemike kujul esitatavaid omadusi ikkagi ainult etteantud valikute põhjal filtreerida.

Tagatipuks, jättes kõrvale sellise kategooriate süsteemi täieliku sobimatuse antud ülesande jaoks, tundub see kategooriate süsteem ka ise olevat mingil põhjusel piiratud vaid 3-tasemelise hierarhiaga. Taaskord on tegemist näiliselt täiesti suvalise piiranguga, mis kitsendab filtreerimisvõimalusi veelgi: kui üldise tootekategooria määramiseks kulub 3 kategooriataset, ei jää filtreerimise jaoks midagi üle.

Kahtlasel kombel võib tegelikult Arvutitarga veebilehel märgata korraliku filtreerimissüsteemi aimdust. Nimelt on neil võimalus filtreerida tootja järgi ning valida toodete hinnavahemik. Seega on nad teadlikud kujust, mille korralik filtreerimissüsteem võiks võtta.
Eeldan aga, et tegelikult korraliku filtreerimissüsteemi loomine tähendaks tohutuid muudatusi paljudes nende süsteemides.
Näiteks tundub, et neil pole toodete omadused mingisuguse kindla süsteemi järgi talletatud. Need on pigem lihtsalt toodete juures puhtalt teksti kujul, mõnikord veidi organiseeritud, mõnikord mitte. Korraliku filtreerimissüsteemi loomiseks peaksid nad küllap välja töötama ka uue toodete info talletamise süsteemi ning kogu oma toodete kataloogi ükshaaval läbi käima, et hetkel suvaliselt kuhugi kirjutatud omadusi sellesse süsteemi korrektselt sisestada.
Ka kategooriate süsteemi piiratus 3-le tasandile võib vihjata erinevatele "kardinatetagustele" probleemidele, mille parandamine vajaks hulga koodi ümberkirjutamist.

Seega on võimalik, et Arvutitark ei kaota veebilehe probleemide tõttu piisavalt kasumit, et õigustada kulukat ja mahukat veebilehe korrastamist. Mina aga isiklikult olen korduvalt ostnud kaupa Arvutitarga asemel näiteks 1a-st, kus on korralik filtreerimis- ja sorteerimissüsteem. Kujutan ette, et ma pole ainuke, kelle rahast Arvutitark on ilma jäänud oma veebilehe kasutamatuse tõttu.


Mäletan, et aastaid oli Arvutitarga veebileht ka väga aeglane, üks otsing võis vabalt võtta mitukümmend sekundit. Plaanisin ka sellest siin kirjutada, kuid tundub, et vähemalt selle on nad lõpuks korda teinud - hetkel võtab otsingutulemuste kättesaamine alla sekundi.

Rahulolu

Siin võiksin korrata äsja tõhususe kohta kirjutatud juttu. Kõik need probleemid on mus põhjustanud sügavat rahulolematust ning olen seetõttu tihti otsustanud kasutada hoopis mõnda teist poodi.

Lisaks tõhususe probleemidele on rahulolematust põhjustav ka veebilehe ebaprofessionaalsus.
Suur- ja väiketähti kasutatakse suvaliselt, hoidmata ühtset stiili, eesti ja inglise keelt kasutatakse läbisegi...

Kaupade sorteerimise valikud Arvutitarga lehel on sellest väga hea näide.
Nendeks on:


    Sorteeri: odavamad enne\n kallimad enne\n nime järgi\n Kategooria järgi
  • Sorteeri: odavamad enne
  • kallimad enne
  • nime järgi
  • Kategooria järgi

Esiteks algab üks valikutest suure algustähega, kuid kõik ülejäänud algavad väiksega. Samuti on esimese valiku ees kirjas "Sorteeri: ". Ei, see pole kogu sorteerimismenüü ees kirjas või iga variandi ette automaatselt lisatav tekst, see ongi lihtsalt osa esimesest valikust.
Lisaks sellele suudavad ka vaid need neli sorteerimisvalikut moodustada väga kahtlase süsteemi. Esimesed kaks valikut oleksid justkui pärit täiesti erinevast süsteemist kui viimased kaks valikut. Esimesed kaks sisaldavad sorteerimise "suunda", kuid viimased kaks ei sisalda. Kõige mõistlikum parandus oleks esimesed kaks varianti kombineerida üheks valikuks (ehk uueks valikuks oleks "hinna järgi") ning lisada veebilehele sorteerimise suuna valimiseks uus element - nagu ka pea kõik sorteerimisfunktsiooniga rakendused teevad. Lihtsam parandus oleks ümber nimetada viimased kaks varianti, et needki sisaldaksid sorteerimise suunda.

Muide, mida üldse peaks tähendama "Kategooria järgi" sorteerimine? Kas see grupeerib tooted 3. kategooriatasandi valikute alusel kokku? Kas see siis järjestab need grupid vastavate kategooriate nimede tähestikulise järjekorra järgi? Mille järgi see järjestab tooted kategooriasiseselt? Mis selle kõige mõte üldse oleks?

Igatahes arvan, et arvestades Arvutitarga tuntust ei ole kuidagi aktsepteeritav, et nende veebileht on nii halvas seisus.

Kommentaarid