GUIDe – Käyttötapaukset
Jotta suunniteltava järjestelmä toimisi hyvin niissä tosielämän tilanteissa, joita käyttäjät kohtaavat päivittäin, nämä käyttötilanteet on ensin saatava selville. Monet käyttöliittymäsuunnittelijat käyttävät näitä tosielämän käyttötilanteita testitapauksina, mutta me perustamme testauksen lisäksi koko käyttöliittymän suunnittelun niille: johdamme käyttöliittymäratkaisut ja järjestelmässä tarvittavan toiminnallisuuden suoraan käyttötilanteista.
Käyttötilanteiden selvittäminen
Selvitämme käyttötilanteita ja käyttäjien työnkulkuja tyypillisesti kenttätutkimuksilla: käyttäjätarkkailuilla ja kontekstuaalisilla haastatteluilla.
käyttäjä käsittelee digikuviaan.
- Käyttäjätarkkailuissa (user observations) pääsemme parhaimmillaan näkemään muutaman parituntisen rupeaman aikana useita keskeisiä käyttötilanteita, mutta tarkkailun edellytyksenä on se, että käyttäjälle tulee jatkuvasti eteen suunniteltavan järjestelmän kannalta kiinnostavia tilanteita.
- Jos järjestelmän käyttöön osuvat tilanteet tulevat eteen harvoin tai jos yhden kokonaisen tilanneketjun läpivienti kestää hyvin pitkän aikaa, kuten kuukausia tai vuosia, esimerkkitilanteita kannattaa selvittää haastattelemalla. Suosimme kontekstuaalisia haastatteluja (contextual interviews), jotka tehdään siellä missä käyttötilanteetkin aktivoituvat, koska tällöin saamme kerättyä yleistettyjen käyttäjäkokemusten ja toiveiden sijaan konkreettisia tilanne-esimerkkejä.
- Jos loppukäyttäjien luo ei ole mahdollista päästä tai jos kyse on aivan uuden konseptin suunnittelusta, voimme luoda käyttötilanteista asiakkaalta kerätyn tietämyksen pohjalta omia määrittelyjä, joilla päästään alkuun.
Emme kuvaa käyttötilanteita esimerkiksi UML-käyttötapauksina (use cases), koska ne eivät riitä hyvän käyttöliittymän suunnittelun syötteeksi. UML-käyttötapaukset kuvaavat tyypillisesti melko matalan tason operaatioita sen sijaan, että ne virittäisivät käyttäjän toimien takana olevia tavoitteita ja tilanneasetelmia. Lisäksi UML-käyttötapauksissa usein kiinnitetään käyttäjän ja järjestelmän välistä interaktiota, vaikka käyttötapausten on tässä vaiheessa tarkoitus toimia vasta syötteenä käyttöliittymäsuunnittelulle, jonka aikana interaktio suunnitellaan. Toisin kuin tyypillisissä UML-käyttötapauskuvauksissa, pidämme käyttötilanteisiin pohjautuvat käyttötapauksemme irti suunniteltavasta järjestelmästä, jotta voimme oikoa työnkulkuja ja suunnitella erilaisia järjestelmän rajauksia ja interaktiotapoja käyttötapausten alapuolelle.
Käyttötilanteista tavoitepohjaisia käyttötapauksia
Jotta kymmenien tai satojen hieman toisistaan eroavien käyttötilanteiden joukko saataisiin kiteytettyä suunnittelua varten, jäsennämme tilanteet tavoitepohjaisiksi käyttötapauksiksi (goal-based use cases). Kymmenien erilaisten käyttötilanteiden joukko vaikuttaa eri sovelluksissa palautuvan noin 3-6 erilaiseen käyttötapauskategoriaan, jos tapaukset osataan jäsentää käyttäjän päätöksenteon kannalta oikein.
Käyttötapausten kategorisointi on tällä hetkellä eräs keskeisistä tutkimuskohteistamme. Olemme määrittelemässä käyttäjän päätöksentekoon pohjautuvia suunnittelumalleja (design patterns), joiden perusteella hyvinkin erilaiset käyttötilanteet voidaan jäsentää valmiiden kategorialuokkien pohjalta. Kategorialuokkien ytimenä on käyttötilanteessa tarvittavan päätöksentekodatan organisointi, joka vaikuttaa toistuvan erilaisten sovellusten välillä tietynlaisilla lainalaisuuksilla.
Kategorialuokista on tähän mennessä koottu muutaman esimerkkisovelluksen avulla seminaariesitys [pdf 1.5 MB]. Esitysmateriaalissa näytetään, kuinka esimerkiksi elokuvalippujärjestelmän, parturin ajanvarausjärjestelmän, yksinkertaisen henkilöhaun sekä hotelli- ja salivarausjärjestelmien käyttötapaukset jakautuvat eri kategorialuokkiin.
Käyttäjän päätöksentekoon perustuvien kategorialuokkien etuna on se, että valtava määrä erilaisia käyttötilanteita saadaan jäsennettyä ja ryhmiteltyä pieneen määrään kategorioita (noin 2-6 kategoriaa per järjestelmä), jotka käyttöliittymädesignissa kattavat koko järjestelmän kriittiset päätöksentekokohdat. Jo ennen määrittelyvaiheen aloittamista on nopeaa paikantaa uuden järjestelmän suunnittelussa relevantit käyttötapausehdokkaat vain käymällä läpi valmiit kategorialuokat. Lisäksi kategorialuokat antavat design-ratkaisuja käyttöliittymän vaikeimpiin kohtiin eli kriittisen päätöksentekodatan organisointiin.