Användbarhet i vardag och praktik. Reflektioner nedtecknade av Sten Sunnergren. Med tillstånd av fam Sunnergren 1
Sten Sunnergren Har jobbat i industrin sedan 1979. Med alla hantverk inom systemutveckling från kodning till försäljning. Handledare i PUM sedan tiotalet år. Död 2010 efter en kort tids sjukdom 2
Användaren i fokus! 3
Jag kommer att visa ett antal exempel, då man inte haft användaren i fokus. Kanske har man glömt användaren eller haft andra bevekelsegrunder. 4
Exempel: Stens Nokia mobiltelefon 2009 5
Upplåsning Man har 1½ sekund på sig. Får heller inte vara för snabb. 6
Upplåsning En kvittens visas. Bra. Men varför är knappsatsen är död så länge skylten visas? 7
Svara Grön lur eller Stora knappen Ringa Grön lur enbart 8
En sak till: Om jag lägger in två saker i kalendern med påminnelse och sedan glömmer kvittera första påminnelsen blir jag inte påmind nästa gång. Jag hade ju missat det andra mötet om inte vänliga människor påmint mig. 9
Exempel: Stens LG Video 2009 (DVD-inspelare med hårddisk, HDD.) 10
Maskinen måste stängas av för att inspelningen ska starta. 11
Det går dock alldeles utmärkt att stänga av maskinen under pågående inspelning, varvid inspelningen naturligtvis avbryts. Får man varning? Nädå! 12
Jag tittar på en film. Samtidigt spelas ett annat program in. När det programmet är färdiginspelat, stängs helt enkelt maskinen av. Att jag håller på att titta på ett annat program skiter den fullständigt i. 13
Jag tittar på en film. Om jag avbryter tittandet är maskinen jätteduktig på att minnas var jag var någonstans. Om jag trycker på Play (>), startar uppspelningen precis där jag slutade. Bra, bra, någon har tänkt till. Ovanstående gäller naturligtvis inte om maskinen har stängt av sig själv, när den sparat inspelningen, enligt förra sliden Det är ju just då jag behöver minnesfunktionen som bäst!!! 14
Användaren är kung! 15
Vem är programmet till för? Vem har betalat/beställt programmet? Användaren i fokus! Allt annat är underordnat. Användaren ska alltid ha högsta uppmärksamhet. 16
Att programmet håller på med något annat, när användaren påkallar uppmärksamhet är helt ointressant. Det användaren vill just nu är det som gäller. Ja, men användaren har ju bett programmet göra. Och!? Användaren kan väl ångra sig, när hon ser att det tar lång tid och vilja utföra funktionen vid annat tillfälle. Vill användaren göra något annat, avbryt det pågående. NU! 17
Prestanda Om det inte är värt att göra programmet snabbt är det antagligen inte värt att göra alls. 18
Prestanda handlar om: Starttid Svarstid Vad är rimliga värden? Starttid: 10 sekunder Svarstid: Maximalt 3 sekunder Normalt <<1 sekund 19
Uppstart: Gör bara det allra viktigaste först. Resten kan göras när användaren fått bild. Säg hej till användaren så fort det går. 20
Om en operation måste ta tid, visa tydligt för användaren att det kommer att ta tid. Gärna med en skylt vid menyvalet och alltid med. Kom ihåg att alla operationer måste kunna avbrytas. När som helst och utan att användaren får vänta. Ibland kan programmet få fråga om användaren verkligen vill avbryta, men det är sällsynt. 21
Prestanda handlar inte om kodning. Prestanda handlar om arkitektur och design. 22
Vad är det som tar tid? En rad kod Ett metodanrop En task switch Ett anrop till annan dator Ett databasanrop = 1 tidsenhet = 10 tidsenheter = 100 tidsenheter = 1000 tidsenheter = 10 000 tidsenheter 23
En rad kod Ett metodanrop En task switch Ett anrop till annan dator Ett databasanrop = 1 tidsenhet = 10 tidsenheter = 100 tidsenheter = 1000 tidsenheter = 10 000 tidsenheter Ta hänsyn till detta vid designen. Vid kodningen är det för sent 24
Tänk alltid på prestanda Vid kravanalysen Vid arkitekturarbetet Vid designarbetet Vid kodningen När du äter All vaken tid När du sover Alltid 25
Få aldrig användaren att längta tillbaka till sitt gamla system... 26
Exempel: System för personal i hemtjänsten 27
Anpassat för cheferna, men inte för vårdpersonalen. Det fanns en massa fina rapporter i systemet som cheferna kunde få ut statistik med på längden och på tvären. Men ingen tänkte på dem som skulle se till att det över huvud taget fanns några data i systemet. Den rutinen gjordes en natt samma vecka som leveransen. Gissa om resultatet blev bra. 28
Personalen samlade in data på ett smartkort och tömde kortet i datorn efter sitt arbetspass. Korttömningen tog flera minuter. Datamängd: Maximalt 512 bytes dubblerat. Japp, något var felkonstruerat. Jag fick chansen att testa den helt omgjorda versionen. Personalen trodde inte sina ögon, när korttömningen tog 5-10 sekunder. (Det gick inte att läsa från smartkortet fortare än så.) 29
Exempel: Cosmic, landstingens elektroniska patientjournal. 30
Projektledare/ Kundansvarig Användare Utvecklare Säljare Beställare 31
Skaffa en referensgrupp Medlemmar från: - Användarna - Utvecklarna - Kanske någon chef Se till att referensgruppen jobbar målinriktat. De ska läsa dokumenten som ges ut testa varje ny funktion i varje ny testutgåva sätta sig in i användandet av det färdiga systemet. 32
Ge datainsamlarna uppmärksamhet, inte bara rapportutskrivarna. 33
Användargränssnitt 34
Var inte rädd för att använda standardgränssnitt. De allra flesta användare uppskattar, när man känner igen sig. Dessutom sparar du tid och kan använda din kreativitet till andra saker. 35
Använd alltid standardtangenter! Exempel: hjälp uppdatera avbryt utför Användaren vill känna igen sig! 36
Eye tracking. Jag vill bara nämna bara att det finns system som kollar var användaren tittar. Kan användas för att kontrollera om användaren ser det man har tänkt att användaren ska se. 37
Ha alltid användaren i fokus! 38
39