systemutveckling med användaren i fokus€¦ · användarcentrerad systemutveckling dh1620,...
TRANSCRIPT
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 1
Systemutveckling med användaren i fokus
Anna SwartlingHedvig Kjellström
Systemutveckling
• System:”En samling element som hänger samman med varandra så att de bildar en ordnat helhet” (NE)
• Ett systematiskt sätt att ta fram mjukvara och hårdvara, produkter, tjänster som hänger ihop
• Finns ett antal olika metodansatser- Vattenfall- Spiral- V-modellen- Agila
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 2
27 januari, 2011 3
Användarcentrerad systemdesign
”[…] user-centered design emphasizes that the purpose of the system is to serve the user, not to use a specific technology, not to be an elegant piece of programming. The needs of the users should dominate the design of the interface, and the needs of the interface should dominate the design of the rest of the system”
D. Norman, ”Cognitive Engineering” in Norman & Draper (eds.)
User Centered System Design, 1986
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 4
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 3
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 5
Effektivt användbarhetsarbete• Flexibilitet• Användarinvolvering• Meningsfullt deltagande• Mer fokus på processen än på
produkten
27 januari, 2011 6
Huvudprinciper
•Tidigt fokus på användarna- Designer måste förstå vilka användarna är- Studera användarna kognitivt, socialt,
beteendemässigt, attityder etc.
•Empiriska mätningar- Simuleringar och prototyper- Studera användarnas användning
•Integrerad design- Projektgrupp med olika perspektiv/kunskap
representerade
•Iterativ design- Cykel: designa, testa och mät, designa om (repetera)
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 4
27 januari, 2011 7
Användarcentrering – ISO 13407
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
27 januari, 2011 8Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Det tekniska perspektivet
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 5
Boxologi
Boxologi
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 6
27 januari, 2011 11Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 12
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 7
27 januari, 2011 13
Prototyper
• Viktigt i iterativ design• Kan tillverkas i princip av vad som helst• Bör kastas bort!• Low- & High-fidelity• Skisser ger värdefull återkoppling tidigt – fokus på
rätt saker
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
27 januari, 2011 14
Vad är orsaken till de problem/brister som finns hos så många av dagens IT-lösningar? ??
DiskussionDiskussion
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 8
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 15
Synen på systemutveckling
• Logisk problemlösning• Tid och pengar
27 januari, 2011 16Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 9
27 januari, 2011 17
Synen på användbarhet
Användbarhet Låga utvecklings & förvaltningskostnader
Fokus på projektet
IT-projektet IT-projektet
Användbarhet Låga utvecklings & förvaltningskostnader
Affärsnytta
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
27 januari, 2011 18
Projektfokus
• Projektet blir fokus och inte att möta verksamhets- och användarmål
• Otydlig beskrivning av effektmål
• Krav baseras påtyckanden från projektmedlemmar
• Krav kopplas inte till nytta
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 10
27 januari, 2011 19
Exempel: Förstudie av intranät
• Större utbildningsföretag• Observationer och intervjuer• 6 workshop• Användbarhet viktigt i det
generella fallet men i det konkreta…
Det bidde en tumme…
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11
Iterativ designprocess
• Första databasmodell
-Vilka är användarna?-Scenarier för varje användare-E-R-diagram, relationsscheman
• Implementera (low-fidelity)• Testa• Förändrad databasmodell
-Tester för varje användare• Implementera (lite mer detaljerat)• Testa• …
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 20
Mer om de tekniska detaljerna i Föreläsning 5
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 11
Exempel: rapporteringssystem
Specifikation
• Utveckla ett informationssystem för att hantera registrering av laborationsresultat på kurser som ges av CSC.
• En kursledare skall kunna ange antal laborationer påsin kurs och registrera resultat samt kunna skriva ut listor med resultat. En assistent skall kunna skriva ut listor med namn på studenter på en kurs och kunna registrera resultat. En student skall kunna anmäla sig till en kurs samt kunna kontrollera sina egna resultat.
• (Rapp gör mer än detta, men det bortser vi från nu.)
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 22
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 12
Vad vill de kunna göra?
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 23
Vilka är användarna?
Lärare och kursassistenter• Varierad kunskap, de flesta har djup matematisk kunskap
men det finns även personer som saknar detta (dvs. terminologi och funktionalitet måste anpassas till båda grupperna, alternativt erbjuda två olika ingångar)
• Vana datoranvändare (dvs. vana vid moderna gränssnitt)• Är stressade och har ont om tid (dvs. aktiviteterna ska kunna
göras snabbt och det är viktigt med intuitet i gränssnittet såatt inlärnings- och komihåg-tröskeln är låg)
• Hinner inte alltid avsluta det de påbörjat eller blir avbrutna (dvs. har behov av att kunna pausa eller spara aktiviteterna och felkorrigering viktigt)
• Lågfrekvent användande: har inte alltid kurser, under en kursomgång använder man det mycket under korta perioder (dvs. inlärnings- och komihåg-tröskeln måste vara låg)
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 13
Vilka är användarna?
Studenter:• Vill se resultat, lågfrekvent användande• Kunna få info om uppdateringar – för att slippa gå in• Integrerat med andra applikationer• Kunna få grundläggande info om kursen• Inne korta stunder• Kunna få snabb överblick• Kunna välja vilken info man får – kunna filtrera
redan avklarade kurser
Här skulle vi ta fram en skiss och utvärdera den med användarna!
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 14
Exempel: Utveckla ett nytt Rapp
<demo av nuvarande system>
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 27
Scenario för student • Registrering på kurs:
• En inloggad student startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda på persnr, namn, adress och telnr som finns lagrade i systemet
• Användaren får en lista med kurser (kursnamn, kursbeskrivning och kursidentitet) och omgångar
• Användaren markerar en kurs och kursomgång och informationen visas
• Kontroll av laborationsresultat på en kurs:• En inloggad student startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda på pnr, namn, adress och telnr som finns lagrade i systemet.
• Användaren får en lista med kurser (kursnamn, kursbeskrivning och kursidentitet) och omgångar
• Användaren markerar en kurs och kursomgång och informationen visas
• Användaren får en lista på godkända laborationer
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 28
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 15
Objektklasser, attribut för student
• Från scenariot:
-Student (persnr, namn, adress, telnr, …)
-Kurs (kursid, kursnamn, …)-Kursomgång (…)-Laboration (….)
• Kan även modellera funktionella beroenden (functional depencencies) mellan objekt
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 29
Föreläsning 3
E-R-diagram för student
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt1127 januari, 2011 30
Kurs
kursidkursnamnpoäng
Laboration
labnrbeskrivning
Student
persnrnamnadresstellinje
Kursomgång
kursomgångsidkursledareperiod
HarKurs-omgång
Går-Kurs
ordnr
Ingår
Klarbetyg
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 16
Scenario för assistent
• Utskrift av namnlista på en viss kurs:• En inloggad assistent startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda påaktuella kursomgångar (kursnamn, kursbeskrivning och kursidentitet)
• Användaren markerar en kurs och informationen visas
• Programmet undersöker om användaren har rätt att erhålla uppgifterna
• Användaren får ut en lista med alla kursdeltagare
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 31
Scenario för assistent
• Inmatning av laborationsresultat:• En inloggad assistent startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda påaktuella kursomgångar (kursnamn, kursbeskrivning och kursidentitet)
• Användaren markerar en kurs och informationen visas
• Programmet undersöker om användaren har rätt att registrera resultat
• Användaren får en lista med alla kursdeltagare
• Användaren matar in godkända laborationer
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 32
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 17
Objektklasser, attribut för assistent
• Från scenariot:
-Assistent (id)-Kurs (kursid, kursnamn, …)-Kursomgång (…)-Student (persnr, namn, adress, telnr, …)
-Laboration (….)
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 33
E-R-diagram för assistent
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt1127 januari, 2011 34
Kurs
kursidkursnamnpoäng
Laboration
labnrbeskrivning
Student
persnrnamnadresstellinje
Kursomgång
kursomgångsidkursledareperiod
HarKurs-omgång
Går-Kurs
ordnr
Ingår
Klarbetyg
Assistent
id
Assar-Kurs
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 18
Scenario för kursledare
• Inmatning av ny kurs:• En inloggad kursledare startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda påaktuella kurser (kursnamn, kursbeskrivning och kursidentitet)
• Användaren markerar en kurs och informationen visas
• Programmet undersöker om användaren har rätt att registrera en ny kursomgång
• Användaren får en ny kursomgång
• Användaren registrerar kursomgångens laborationer
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 35
Scenario för kursledare
• Administrering av assistenter:• En inloggad kursledare startar applikationsprogrammet
• Programmet tar, mha användaridentiteten, reda påaktuella kurser (kursnamn, kursbeskrivning och kursidentitet)
• Användaren markerar en kurs och kursomgång och informationen visas
• Användaren får en lista på assistenter (id, namn, adress, telnr)
• I övrigt samma funktionalitet som för assistent
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 36
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 19
Objektklasser, attribut för kursledare
• Från scenariot:
-Assistent (id, namn, adress, tel)-Kurs (kursid, kursnamn, …)-Kursomgång (…)-Student (persnr, namn, adress, telnr, …)
-Laboration (….)
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 37
E-R-diagram för kursledare
Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt1127 januari, 2011 38
Kurs
kursidkursnamnpoäng
Laboration
labnrbeskrivning
Student
persnrnamnadresstellinje
Kursomgång
kursomgångsidkursledareperiod
HarKurs-omgång
Går-Kurs
ordnr
Ingår
Klarbetyg
Assistent
idnamnadresstel
Assar-Kurs
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 20
Iterativ designprocess
• Första databasmodell
-Vilka är användarna?-Scenarier för varje användare-E-R-diagram, relationsscheman
• Implementera (low-fidelity)• Testa• Förändrad databasmodell
-Tester för varje användare• Implementera (lite mer detaljerat)• Testa• …
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 39
Implementera
• Slå samman de tre användarvyerna (views)
• Definiera restriktioner (restrictions)
• Analysera transaktioner (transactions)
• Implementera prototyp
-Första impl: titta på scenarier-Följande impl: titta på testresultat
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 40
Föreläsning 4
Föreläsning 3
Användarcentrerad systemutveckling DH1620, DD1368, vt11
2011-01-27
Anna Swartling & Hedvig Kjellström 21
Iterativ designprocess
• Första databasmodell
-Vilka är användarna?-Scenarier för varje användare-E-R-diagram, relationsscheman
• Implementera (low-fidelity)• Testa• Förändrad databasmodell
-Tester för varje användare• Implementera (lite mer detaljerat)• Testa• …
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 41
Kontentan?
• Modellering till viss del ”kvalificerade gissningar”
• Finns tekniker för att ”städa” i en databasmodell
-”kokboksmetod”-normalisering
• MEN kan inte kompensera för modell som från början stämmer illa med verkligheten!
-Viktigt att involvera användarna redan under modelleringsstadiet
27 januari, 2011 Anna Swartling, Hedvig Kjellström - DH1620, DD1368 vt11 42
Föreläsning 1
Föreläsning 3