Responstid KNappen

new relic

Jeg tar opp telefonen fra lomma, trykker på skjermen og ————— ingenting skjer! Jeg tapper litt utålmodig på siden av telefonen, bytter mellom to apper, skjekker nyheter. Bytter tilbake. Ingenting har skjedd.

Hvor mange ganger har ikke dette skjedd med ulike apper? Hvilke apper er best på responstid?

Hvor lang tid er for lang tid for en bruker av en app?

Operasjoner som foregår inne i en app kan være ganske komplekse og appen forholder seg kanskje til store databaser – slik som KNappen gjør. Utfordringen er at dette tenker kanskje ikke en bruker over.

New Relic er et firma som bla lever av å måle responstid og de har laget en plansje for å vise hva som kan skje i en telefon når man trykker og forventer at noe skal skje på mindre enn et sekund.

Akkurat i disse tider arbeider vi ut akseptable responstider for KNappen med EVRY. Og hva er egentlig akseptabel responstid? Dette er brukerstyrt. I det jeg som bruker begynner å bli irritert eller ennå værre avslutter appen og lar være å bruke den igjen. Det kan også være forskjellige tåleransegrenser etter hva slags operasjon man utfører.

I tabellen under er et forslag.

Kom gjerne med innspill!

Situasjon Godkjent A-feil
Oppstart (inkl første søk) <- 5 sekunder 5 –
Søk 3 3->
Stedssøk 3 3->
Manøvrering i kart 3 3->
Lagring på telefonen* ->
Visning av medieinnhold 2 2->
Opprette rute 2 2->
Sende tilbakemelding 2 2->
Andre operasjoner 1 1->

*Avhengig av hvor mye man lagrer og netthastigheten man er på.

Kategorier: Brukere, KNappen

Forfatter:Marit Kjeksrud Amundsen

Seniorrådgiverer i "Kultur- og naturreise"

Abonner

Subscribe to our RSS feed and social profiles to receive updates.

3 kommentarer den “Responstid KNappen”

  1. 25. februar 2014 kl. 3.53 #

    Jeg kom til å tenke på at spill «før i tiden» ofte hadde lasteskjerm-spill.

    http://en.wikipedia.org/wiki/Loading_screen#Minigames

  2. Marit Kjeksrud Amundsen
    24. februar 2014 kl. 1.15 #

    Tusen takk for svar! Helt enig at det er brukerne her som er det sentrale. Og som du skriver – å «lure»/kommunisere at ting tar tid med hjelp av en venteskjerm er smart. Å gjør det som et spill er jo egentlig litt genialt. Prezi gjør det i sin app mener jeg å huske

  3. 21. februar 2014 kl. 9.16 #

    Hei, mine tanker rundt området baserer seg på egen erfaring – så vel som teori og forskning på området. Det handler ikke om APP for seg selv, men brukerne.

    Jeg har ikke nødvendgivis fasiten, men mine tanker blandet med praksis og teori🙂

    Det er særlig tre tidspunkt å være observant på:
    100 millisekunder
    1 sekund
    10 sekunder

    Alt innenfor 100 millisekunder vil føles øyeblikkelig ut, alt mellom 100 ms og 1000ms vil føles raskt. Når man når 10 sekunder, har tankene vandret bort og brukeren er på vei vekk.

    Her kommer jo utfordringene, når man har en APP som bruker store datasett.
    Domeneoppslag tar gjerne 0.2 sekunder, hver API har hvert sitt domeneoppslag.
    Eksterne ressursser som javascript, css og annet, skal også ha sine egne oppslag.

    HTTP-protokollen har begrensninger i maks antall sanntidslastinger, som betyr at det bygger seg opp en kø. Videre vil jo grensesnittet til en slik APP føles «låst» frem til det er ferdig.

    Men, alt er ikke tapt, man kan gjøre lure ting her!
    Fremfor å vise en loading, frem til alt er lastet, last ting smart!

    Start applikasjonen med lasting i en egen tråd, ikke lås brukeren ute fra grensesnittet.
    En animasjon kan fade inn, men husk 1 sekunders-grensen (1 sekunder fade-in, så gjerne 2 sekunder logo og så 1 sekunder fade ut). Gjør man dette, føles det raskt, en logo som fader «nok», den er ikke der så lenge at brukeren klikker den vekk.

    Her har man altså klart å lure inn 4 sekunder «gratis» lastetid, som ikke irriterer brukeren.
    Men det gjenstår kanskje opp til 6 sekunder lasting, hvis APPen trenger 10 sekunder totalt.

    Man kan der enten fortsette å «lure» brukeren, f.eks. kan man ha en «call to action» som vises, før den er ferdig å laste. Det kan gjerne være en inngang der brukeren må gjøre et veldig enkelt valg, eller det kan være et slags «minispill» (feks et tilfeldig bilde, som man voter opp eller ned?).

    Det var kanskje dårlige eksempler altså, men tanken min er å spore brukeren av i de få sekundene lastingen tar. Men avsporingen må ikke ta for lang tid (ellers sporer brukeren av).

    Det sies også at alt som overstiger 10 sekunders-grensen, bør ha prosent / «progress bar». Dette er så brukeren ikke skal tro det har hengt seg.

    Det er mange ting man ellers kan gjøre, for å trikse dette til. Man kan mellomlagre resultater fra API-er på serveren, man kan «pakke» de mest statiske objektene inn i selve APP-en (feks geokodede data). Dette vil jo bety at brukerne må oppdatere APP-en, men jeg personlig vil heller oppdatere en APP, enn å vente på lange lastetider.

    Her er det selvsagt en avregning, de API-ene som har mye endring, må nødvendigvis være «ferske». Men her også kan man trikse det til, man kan ha en cache på serveren, slik at den slår opp bare mot ett domene. Den henter da fra en cache, fremfor fra mange API-tilbydere.

    Serveren/tjeneren henter fra API-ene, hvis cache er over X dager i alder.
    Man kan lage en slik API-proxy med cache, der man legger inn forskjellige levetid per API.
    Vet man feks at API1 oppdateres ukentlig, kan levetiden være 1 uke, vet man at API2 er statisk, kan levetiden være 1 år.

    Jeg tror egentlig man bør tenke gjenbruk, man bør tenke asynkron lasting og hvordan man kan «lure» brukeren. Det samme skjer når man starter en telefon, et nettbrett, en PC eller en MAC. Først ser man et glimt av en bios eller tilsvarende, deretter en boot-animasjon og så en logo. Selv under PIN-opplåsnig (ev pålogging i windows), vil den laste ressursser.

    Brukeren derimot, føler at windows eller telefonen er «oppe» når han/hun begynner å logeg seg på, eller taste pin-kode. På den måten blir brukerne «lurt» til å føle at det er ferdig startet opp.

    Man kan også på samme måte vente med å laste noen av ressurssene, f.eks. ser man gjerne at en PC ikke er påkoblet et trådløst nett, med en gang du ser skrivebordet. Dette er en måte å prioritere hvilke prosesser man trenger først.

    Beklager alt for langt innlegg🙂

Legg igjen en kommentar

Fyll inn i feltene under, eller klikk på et ikon for å logge inn:

WordPress.com-logo

Du kommenterer med bruk av din WordPress.com konto. Logg ut / Endre )

Twitter picture

Du kommenterer med bruk av din Twitter konto. Logg ut / Endre )

Facebookbilde

Du kommenterer med bruk av din Facebook konto. Logg ut / Endre )

Google+ photo

Du kommenterer med bruk av din Google+ konto. Logg ut / Endre )

Kobler til %s