Johdatus ohjelmistotuotantoon Luento 9. 28.10.2013 Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa Kati Kuusinen Tutkija Agile UX kati.kuusinen@tut.fi
Luentoaikataulu 26.8: Johdanto + historiaa, mitä on ohjelmistotuotanto 2.9: Ohjelmistojen roolista ja ohjelmistotyön määrästä, ohjelmistotyypit 9.9: Miten ohjelmistotyö organisoidaan (vaihejako ja prosessi-mallit) 16.9: vaatimusmäärittelyt 23.9: projektitoiminta 30.9: Yleiset notaatiot erityisesti UML 7.10: Esimerkkiprojekti (mahdollisesti vierailuluento) 21.10: Asiakasroolista 28.10: Käyttäjä ja käyttäjäkokemus ohjelmistoprojektissa 4.11: Tiedon mallintaminen 11.11: Ohjelmisto osana laitetta 1 18.11: Ohjelmisto osana laitetta 2 25.11: IPR, sopimukset, open source 2.12: Kertausta K. Systä Kati Kuusinen JOTU 2013 28.10.2013 2
Kurssin tavoite ja luennon sisältö "Luoda yleiskuva ohjelmistotyöstä ja perusvalmiudet määrittelymenetelmien soveltamiseen. Kyky osallistua ohjelmistoprojektiin asiakkaan edustajana. Asiakas pitää ymmärtää laajasti Tällä luennolla Asiakas, käyttäjä, sidosryhmät Käyttäjän osallistuttaminen, milloin ja miten Käyttäjäkokemukseen ja käytettävyyteen liittyvä työ ja prosessit Kati Kuusinen JOTU 2013 28.10.2013 3
Tarve/idea Esiselvitys unohdetaan K. Systä Tehdään itse Teetetään Ostetaan Vaatimusmäärittelyt Toimittajan valinta Räätälöidään Suunnittelu Toteutus Testaus Missä vaiheissa ja kuinka käyttäjä tulisi huomioida? Miksi? Käyttöönotto Kati Kuusinen JOTU 2013 Ylläpito Poisto 28.10.2013 4
Source: Innes 2011 Why enterprises cannot innovate: helping companies learn design thinking Kati Kuusinen JOTU 2013 28.10.2013 5
Miksi käyttäjäkokemus? -Pakollista vai erottautumistekijä Teknologinen kypsyys Teknologisella osaamisella erottautuminen Markkinavaatimukset Nopea markkinoillepääsy, alhaiset kustannukset. Ole ensimmäinen tai paras, tai molempia Käyttäjien odotukset Kypsyys ja valikoima, tarve, yksityiskohdat, viimeistely even a developer wont use a crappy product anymore Laitteiden ominaisuudet Kosketusnäytöt, pienet laitteet, teho ja muistivaatimukset, interaktiotavat Kati Kuusinen JOTU 2013 28.10.2013 6
Miksi käyttäjä on keskeinen? Käytettävyydestä voi maksaa joko paljon tai vähän. Jos haluaa maksaa paljon kuten VR kannattaa julkaista keskeneräisiä tuotteita, joita pitää korjata kiireellä ja jotka saavat asiakkaat valitsemaan muita vaihtoehtoja. Jos haluaa sijoittaa vähemmän ja tuottavammin, se pitää tehdä heti projektin alussa ja hiukan lisää arviointivaiheessa. Aapo Puskala VR:n käytettävyysarviossaan Kati Kuusinen JOTU 2013 28.10.2013 7
Miksi ohjelmien tekeminen on niin vaikeaa? (K. Systän kalvosta) Ohjelmisto on abstrakti Tekijöiden ja asiakkaiden välillä ei välttämättä ole sama käsitys Työmäärän arviointi on vaikeaa Tavoitteiden määrittäminen on vaikeaa, tavoitteet eivät useinkaan ole suoraan näkyvissä Ohjelmisto on dynaaminen On muutettavissa muutettavuutta oletetaan Tarpeetkin voivat muuttua ja niitä on erilaisia Ohjelmistojen tekemistä on vaikea skaalata Tekijöiden määrän lisääminen nopeuttaa vain vähän valmistumista Mitä enemmän tekijöitä, sen enemmän kommunikointitarvetta. Kati Kuusinen JOTU 2013 28.10.2013 8
SIDOSRYHMÄT Erityisesti käyttäjät, asiakkaat, kehittäjät ja toimittajat Käsitetään usein henkilöinä/tahoina, joihin tuotettu järjestelmä vaikuttaa, tai jotka voivat vaikuttaa tuotettavaan järjestelmään Voidaan jakaa Ensisijaisiin (yleensä sisäisiin) ja toissijaisiin (yleensä ulkoisiin) ryhmiin Kati Kuusinen JOTU 2013 28.10.2013 9
Sidosryhmiä (Stakeholders) Asiakkaat Omistajat Käyttäjät Periaatteessa kaikki, joita ohjelmiston tuottaminen koskettaa Alihankkijat Kehittäjät Markkinointi ym. Kati Kuusinen JOTU 2013 28.10.2013 10
Asiakas (Customer) Yleensä työn tilaaja tai lopputuotteen ostaja B-B-C,B-B, B-C. Business and consumer Ostaja, asiakas, käyttäjä Tuottaja, kuluttaja Sisäinen ulkoinen Asiakkaan edustaja Kati Kuusinen JOTU 2013 28.10.2013 11
Käyttäjä (user) Henkilö, joka on järjestelmän kanssa vuorovaikutuksessa (ISO 9241-11:1998) Käyttäjäryhmät Segmentointi: kohdekäyttäjäryhmät ensisijaiset ja toissijaiset loppukäyttäjä, kehittäjä, huolto, tuki, jne. Kuluttajakäyttäjät ja työkäyttäjät Kati Kuusinen JOTU 2013 28.10.2013 12
Käyttäjän rooli vaihtelee Yritysjärjestelmät Työkalut Asiointisovellukset Viihdeohjelmistot Asiantuntijat, noviisit, iäkkäät, rajoitteiset, lapset Käyttö: jatkuvaa, satunnaista Kati Kuusinen JOTU 2013 28.10.2013 13
Lasten seuranta päiväkodissa -Esimerkki käyttäjäryhmistä Mitä käyttäjäryhmiä sovelluksella on? Mikä on ensisijainen käyttäjäryhmä? Millaisia tavoitteita ja tarpeita eri käyttäjäryhmillä on? Mitä muita sidosryhmiä on? Kati Kuusinen JOTU 2013 28.10.2013 14
KÄYTTÄJÄKOKEMUS JA KÄYTETTÄVYYS Kati Kuusinen JOTU 2013 28.10.2013 15
Käyttäjäkokemus ja käytettävyys Käytettävyys (usability) Kuinka määritellyt käyttäjät voivat käyttää järjestelmää saavuttaakseen määritellyt tavoitteet tehokkaasti, tarkoituksenmukaisesti ja tyytyväisinä määritellyssä käyttökontekstissa (ISO 9241-210) Määritelmän mukaan mitataan siis speksejä vastaan Käyttäjäkokemus (user experience) Henkilön käsitys järjestelmän käytön tai odotetun käytön tarjoamasta arvosta tietyssä käyttökontekstissa. (Hassenzahl ja Tractinsky 2006 sekä ISO 9241-210 2010) Kati Kuusinen JOTU 2013 28.10.2013 16
PROSESSI(MALLI)T Kehys, jolla työtä pyritään systematisoimaan toistettavaksi Tähtää työn järjestelmällisyyteen ja ennustettavuuteen Ajankäyttö, resurssit, laatu, kustannukset Kati Kuusinen JOTU 2013 28.10.2013 17
Waterfall Development Vaiheittainen Vaihe valmis ja oikein siirryttäessä seuraavaan Iso alkupään suunnittelu (Big design upfront): periaatteessa kaikki suunnitellaan ennen toteuttamisen aloittamista Requirements Design Implementation Verification Maintenance Kati Kuusinen JOTU 2013 28.10.2013 18
Agile Manifesto we have come to value: Individuals and interactions Working software Customer collaboration over over over Processes and tools Comprehensive documentation Contract negotiation Responding to change over Following a plan while there is value in the items on the right, we value the items on the left more. Kati Kuusinen JOTU 2013 28.10.2013 19
Käyttäjäkeskeinen suunnittelu ISO 9241:210 2010 Kati Kuusinen JOTU 2013 28.10.2013 20
Käytettävyystyön V-malli -Esimerkki Tarvekartoitus ja määrittely Konseptitestaus Informaatioarkkitehtuuri ja navigointimallit Interaktion testaus Yksityiskohtainen ja ulkoasun suunnittelu Käyttäjätestaus suunnitellulla käyttöliittymällä, automaattiset testit Kati Kuusinen JOTU 2013 28.10.2013 21
Agile UX development -Yksi yleisesti suositeltu malli Source: Sy; Desirée. Adapting Usability Investigations for Agile User-centered Design. Kati Kuusinen JOTU 2013 28.10.2013 22
Iteratiiviset, ketterät yms Toimittaja tutkimus tot tot tot tot tarjous määr. test demo test demo test demo test käyt.otto määr. demo demo demo käyt.otto tarjouspyyntö Asiakas tarjous Demo tarkoittaa yhdessä käyttäjän kanssa tehtävää uudelleen pohdintaa. K. Systä Kati Kuusinen JOTU 2013 28.10.2013 23
YHTEISPELIÄ Kati Kuusinen JOTU 2013 28.10.2013 24
Vaatimusten tekeminen -Edelliseltä luennolta (K. Systä) Erkka Vastamaan diplomityö Kati Kuusinen JOTU 2013 28.10.2013 25
Käyttäjäpalaute Tuottaja Asiakas Asiakkaan asiakas Asiakkaan asiakas Käyttäjä Käyttäjä Käyttäjä Käyttäjä Käyttäjä Alihankkija Alihankkija Kati Kuusinen JOTU 2013 28.10.2013 26
Vaatimukset vs. rajoitteet Businessvaatimus Käyttäjävaatimus Asiakasvaatimus Toteutuksen rajoitteet Kustannus, aika, osaaminen, teknologiaratkaisut vanhat ja olemassa olevat järjestelmät huomioitava Kati Kuusinen JOTU 2013 28.10.2013 27
KÄYTTÄJÄKOKEMUS- SUUNNITTELU Kati Kuusinen JOTU 2013 28.10.2013 28
Designing FOR an experience Kokemusta ei voi suunnitella: suunnittelemme asioita jotka mahdollistavat kokemuksen, tekevät sen todennäköiseksi tietyille ihmisille tietyssä kontekstissa Kati Kuusinen JOTU 2013 28.10.2013 29
Tavoitteena hyvä käyttäjäkokemus? -ymmärrä mihin tähtäät Lucero, A., Arrasvuori, J. 2010. PLEX Cards Kati Kuusinen JOTU 2013 28.10.2013 30
Tutki-Ideoi-Kokeile-Arvioi Kukaan ei välttämättä tiedä etukäteen hyvää ratkaisua, ei edes käyttäjä tai UX-suunnittelija Kokeile ja testaa -> nopea validointi Kati Kuusinen JOTU 2013 28.10.2013 31
Design for experience Ymmärrä (Aktiviteetteja, jotka auttavat ymmärtämään käyttäjää ja käyttötilannetta) Ymmärrä käyttäjän arvot, tarpeet, tavoitteet Ymmärrä tavoiteltava käyttäjäkokemus Arvioi nykyisiä kokemuksia (kilpailijat) Tutki nykyistä käyttäjätuote -vuorovaikutusta Hahmota tuleva käyttökonteksti Visioi (Aktiviteetteja, jotka auttavat visioimaan ja määrittelemään tavoitellun käyttäjäkokemuksen) Kuvittele tavoiteltava käyttäjäkokemus Kuvittele tavoiteltava vuorovaikutus Kuvaa kuinka käyttäjä tulee arvioimaan tuotetta Kuvaa tavoiteltava tuotteen ilme / luonne Luo (Aktiviteetteja, jotka auttavat käsitteellistämään, mallintamaan ja testaamaan konsepteja) Luo skenaarioita vuorovaikutuksesta Selvitä, kuinka tuotteen ilme koetaan Tutki tuotteen aistittavia ominaisuuksia Mallinna, jotta voit testata Evaluoi käyttäjäkokemusta Desmet, P., Hekkert, P., Schifferstein, R. Delft U of Technology Kati Kuusinen JOTU 2013 28.10.2013 32
Prototypointi -Prototyyppi, proto, malli, koekappale Paperiprototyypit (fyysisiä karkeita (low-fidelity) malleja. Esim. pahvi, post-it -laput) Low-fidelity ohjelmistoprotot (näyttökuvien luonnoksia, mockuppeja, storyboardeja) Mid-fidelity ohjelmistoprotot (melko yksityiskohtaisia mutta yksinkertaisia ja likimääräisiä malleja, joissa toiminnallisuus on simuloitua) High-fidelity ohjelmistoprotot (yksityiskohtainen grafiikka ja osittain todellista toiminnallisuutta (usein simuloitu back-end)) Prototyyppien tarkkuustaso (fidelity) siis vaihtelee. Tavoitteena on havainnollistaa ja hahmotella toiminnallisuutta nopeasti ja edullisesti Kati Kuusinen JOTU 2013 28.10.2013 33
Esimerkki -Pankin webbipalvelu Ongelma / tavoite Palvelukanavasta putoaa potentiaalisia asiakkaita kesken kaiken Kuinka saada tehtyä useampia tarjouksia -> lisää myyntiä Suunnittelu UX-asiantuntija mukana jo myyntivaiheessa. Kartoitettiin käyttäjien tarpeita ja mm. yksinkertaistettiin tarjottavaa valikoimaa Syy käyttäjäkatoon selvisi: käyttäjät eivät ymmärtäneet pankin tarjoamia vaihtoehtoja ja jättivät käytön kesken Tulokset Uuden palvelun käyttöönotto johti miljoonien eurojen arvoiseen lisämyyntiin. Palvelun markkinoillepääsyaika (time to market) noin 2 kuukautta Kati Kuusinen JOTU 2013 28.10.2013 34