Kapittel 2 – Teorier, prinsipper og guider
2.2 Høy-nivå-teorier
Noen teorier er forklarende. Disse hjeper oss å observere oppførsel og aktivitet og gir oss idéer til hvordan vi skal sammenligne høynivået av to design.
Noen teorier er forutseende. Disse hjelper designere å sammenligne tiden som trengs for å utføre en handling, og feilraten ved ulike design.
Taxonomy er klart definerte begreper som vi kan bruke for å beskrive et design.
2.2.1 Konseptuelle, semantiske, styntakse og leksikale modeller
· Den konseptuelle modell er brukerens mentale modeller av et system. Eksempler på forskjellige konseptuelle modeller er linje- og fullskjerms teksteditorer.
· Den semantiske modell beskriver meningen med brukerens kommandoer og systemets respons på kommandoene.
· Den syntakse modell definerer hvordan brukeren bygger/skal bygge opp en setning av kommandoer, og hvordan maskinen tolker de gitte kommandoer.
· Den leksikale modell definerer hvilke bokstaver, knapper, mustaster etc. som brukeren angir kommandoer med.
2.2.2 GOMS og tastetrykk modellen
GOMS står for goals, operator, methods and selection rules. Dette er en modell som beskriver hvordan brukeren formulerer mål (goal), for eksempel redigere et dokument, og delmål, for eksempel sette inn et ord. Metodene (method) brukeren benytter for å utføre handlingen, for eksempel flytte musen og trykke en rekke taster på tastaturet. For å få dette utført må brukeren (operator) tenke og gjøre en fysisk handling, og foreta en del valg (selection).
2.2.3 Modeller for trinnene i en handling
1. Forme et mål
2. Forme en intensjon
3. Spesifiser en handling
4. Utføre en handling
5. Observere resultatet
6. Tolke resultatet
7. Evaluere resultatet
Denne modellen leder oss fram til Norman’s fire generelle designtips.
1. Alle valg og kommandoer som kan gjøres/utføres bør være synlige.
2. En god konseptuell modell og et konsistent GUI.
3. Systemet bør ha en logisk tilknytning mellom kommando og handling (mapping).
4. Brukeren bør få kontinuerlig tilbakemelding på de handlingene som gjøres.
2.3 Modellen for grensesnittet mellom Objekt og Handling
I den nye utgaven av boka (3. ugave) er Objekt <-> Handling viktige begreper. Den underliggende teorien om design kalles Object-Action Interface Model, OAI. Ettersom kommandobaserte systemer erstattes av GUIs, gir dette en mulighet for bruk av OAI. For eksempel kan man dra et dokument over en papirkurv for å slette dokumentet. Man har da knyttet en handling opp mot objektet (her dokument) som gjenspeiler dagligdagse/virkelige handlinger.
2.3.2 Grensesnitthierarkier av objekter og handling
Når man skal skrive et brev ved hjelp av tekstbehandling må brukeren forsøke å overføre det han vet om brevskriving til å bruke tekstbehandlingsprogrammet. Brukeren må ha en høynivå modell for hvordan han skriver (oppgavens handling) et brev (oppgavens objekt), og vite at brevet vil bli lagret som et dokument (grensesnittets objekt). I tillegg må han vite detaljene om hvordan man lagrer (grensesnittets handling) dokumentet. Brukeren må også ha kjennskap til en middelnivå modell som forteller hvordan man bygger opp en setning, hvordan den startes og hvordan den avsluttes. Til slutt må brukeren vite hvordan man staver ordene (oppgavens lavnivå), og han må vite hvilke knapper han skal trykke på for å skrive ordene (grensesnittets lavnivå). Direkte manipulasjon er en designteknikk som forsøker å minske forskjellen mellom oppgaven som skal utføres og grensesnittet.
2.4 Prinsipp 1: Å erkjenne forskjellene
Nybegynnere og
førstegangsbrukere Antallet tilgjengelige handlinger bør
være få, slik at nybegynnere lett kan utføre enkle oppgaver og redusere frykten
for det nye systemet. Systemet er avhengig av å bygge opp tillitt fra brukeren.
Informativ tilbakemelding for hver oppgave er konstruktivt, og spesifiserte
feilmeldinger må tilbys når brukeren gjør feil. Godt designet brukermanualer og
steg-for-steg online opplæring kan være nyttig.
Erfarne brukere Byrden
på hukommelsen kan lettes ved godt strukturerte menyer, konsistent terminologi
og god synlighet. Dette medfører at brukere kan kjenne seg igjen, i stedet for
å måtte huske. Disse brukerne vil dra nytte av online hjelp for å fylle inn
informasjon som løser deler av oppgavene. Godt organiserte referansemanualer
kan være nyttig.
Ekspertbrukere Disse
brukerne forlanger hurtig respons, kortfattet og ikkedistraherende
tilbakemelding, og kapasitet til å utføre handlinger med få tastetrykk. Dersom
en handling krever tre – fire tastetrykk vil brukeren gjerne lage makro som
utfører handlingen for ham. Kommandostrenger, hurtigtaster, typeahead-teknikk
med mer er et krav.
En måte å få
nybegynnerne i gang på, er å lære dem et minimum sett av operasjoner til å
begynne med. Dette kan for eksempel gjøres ved hjelp av en online veiledning.
For å lage et
system som kan brukes av alle de tre gruppene ovenfor, kan man tilby en
funksjon hvor man velger bruk av tilbakemelding og tilgjengelige kommandoer.
2.4.2 Brukerprofiler
Eksempler på
nyttige hurtigtaster i en tekstbehandler:
2.4.3 Interaksjonsmetoder
Direkte
manipulasjon Når en smart designer har klart å lage
visuelle representasjoner av hverdaglige handlinger i systemet, blir brukerens
handlinger mye lettere å utføre, fordi man vil kjenne igjen objektene fra
virkeligheten. Direkte manipulasjon appellerer til nybegynnerne, det er lett å
huske for de erfarne, og med god design kan det være raskt nok i bruk for
ekspertene.
Menyer Den
største fordelen må være at menyer tilbyr en klar struktur for å foreta valg,
siden alle tilgjengelige og relevante funksjoner er synlige. Denne teknikken er
tilstrekkelig for nybegynnere og erfarne, og kan være appellerende for
ekspertbrukere dersom menyen er kjapp å navigere i.
Skjema For å
benytte skjema må brukerne kjenne til hva som skal skrives inn i de ulike
feltene, man må derfor være kjent med terminologien som er brukt i systemet.
Man må også vite hvilke verdier som er ulovlige, og hvordan man handler i
forhold til feilmeldinger. Siden denne teknikken krever litt kjennskap til
systemet, appellerer dette mest til erfarne og eksperter.
Kommandobasert
brukergrensesnitt For erfarne og eksperter virker
kommandobasert grensesnitt på en måte som gjør at brukerne føler en stor
kontroll over systemet. Men feilraten er stor, kjennskap til systemet er
nødvendig, og det som huskes etter en stund opphold kan være lite.
Feilmeldinger og online hjelp kan være vanskelig å tilby pga varierte
muligheter og problemer med mapping mellom handling og konsept og syntaks.
Naturlig språk Det er
vanligvis vanskelig for systemet å oppfatte hva som er relevante kommandoer i
en setning av naturlig språk. Dette gjør at brukerne må velge blant mange mer
eller mindre relevante alternativer til respons på kommandoene som gis. Dette
gjør en slik teknikk mye langsommere og klumsete i bruk enn andre alternativer.
For å
tilfredstille alle brukernes behov kan man ta i bruk flere av disse teknikkene
i systemet. Kommandoer kan lede brukerne til skjema, og menyer kan brukes til
handlinger som er vanskelig å visualisere i et direkte manipulasjonssystem.
2.5 Prinsipp 2: Bruk de Åtte Gyllne
Regler for grensesnittdesign
2.6 Prinsipp 3: Unngå feil
Feilmeldinger
skal være spesifikke, ha en positiv tone, og fortelle brukerne hva som må
gjøres og ikke bare hva som er feil. Eksempel på dårlige feilmeldinger:
Istedet kan
melingene være:
Tre teknikker kan
redusere antall feil ved å sørge for fullstendige og korrekte handlinger:
korrekt sammenhørende kommandopar, komplette sekvenser, automatisk fullføring
av kommandoer.
2.6.1 Korrekt sammenhørende kommandopar
Når brukeren
skriver en venstreparentes, kan høyreparentesen tilføyes automatisk, og
markøren settes mellom parentesene. Eller man man vise en melding i venstre
hjørne om at høyreparentesen må skrives inn, helt til dette er gjort.
2.6.2 Komplette sekvenser
Siden brukerne
har en tendens til å glemme noen steg i en handling, forsøker designere å samle
flere trinn under én handling. For eksempel
når en bilfører skal slå på blinklys før han svinger til venstre, setter
han på blinklysene både framme og bak på bilen ved kun én handling. Når en
flyger setter ned landingshjulene på et fly, utføres mange hundre kontroller
automatisk.
Lignende
automatikk kan brukes i programsystemer. Når man logger på internett, utføres
en hel rekke handlinger idet brukeren trykker på ”koble til”-knappen. Maskinen
ringer opp, skjekker brukernavn og passord, mottar påloggingsbeskjed osv.
Designere kan
finne potensielle komplette sekvenser ved å studere hvilke handlinger brukerne
gjør i én bestemt rekkefølge, og hvilke feil som evt oppstår.
2.6.3 Automatisk fullføring av kommandoer
Noen programmer
tilbyr automatisk fullføring av kommandoer ved at brukerne taster noen få tegn
av en lengre kommando, og deretter trykker mellomrom for å fullføre den.
Eksempler på dette er adresselinjen i Internet Explorer og generell
kodeskriving i Visual Basic.
En mer effektiv
måte å unngå feil på, er å bruke direkte manipulasjon, hvor brukerne gjør valg
istedet for å skrive inn kommandoer. Disse sytemene viser gyldige kommandoer i
menyer, eller filnavn i en liste, og tilbyr brukerne å klikke på disse.
2.7 Retningslinjer for visning av data
2.7.1 Organisering av skjermen
En mer detaljert
liste med krav til organisering:
2.7.2 Få brukerens oppmerksomhet
Bruk disse
teknikkene med stor forsiktighet. Det er en fare for at grensesnittet
frustrerer brukerne hvis man overdriver bruk av disse. Nybegynnere trenger
enkle, logisk organiserte og godt merkede skjermbilder som guider dem gjennom
oppgavene. Ekspertbrukere aksepterer ikke overdreven bruk av disse teknikkene.
Fargekoder er
svært praktisk for å gruppere elementer som hører sammen, men gjør det
vanskeligere å bruke disse elementene på tvers av grupperingen.
Lydbruk kan være
en god måte å gi tilbakemelding på. Alarmer fører til at brukerne reagerer
raskt. Når man bruker mange alarmer må man teste i hvilken grad brukerne
oppfatter viktigheten av de forskjellige alarmene.
2.8 Retningslinjer for innskriving av data