Interazione Uomo-Macchina Sommario

Transcript

Interazione Uomo-Macchina Sommario
Interazione Uomo-Macchina
Regole per il progetto
1
Sommario
• Usabilità ed esperienza (dalla introduzione)
• Progettare per l’usabilità
–
–
–
–
–
Principi
Standard
Linee guida
Regole euristiche
Design pattern
• Progettare per l’esperienza d’uso
– Esperienza
– Gestione del valore
– Design emozionale
2
Obiettivi di usabilità
• Efficacia
– il sistema fa quello per cui è stato progettato?
• Efficienza
– Il sistema supporta la produttività aiutando l’utente a portare
a termine il suo comoito?
• Sicurezza
– Il sistema impedisce gravi errori? aiuta a porvi rimedio?
• Utilità
– Il sistema fornisce le funzionalità adatte ai compiti
dell’utente?
• Facilità di apprendimento
– Quanto è facile imparare ad usare il sistema?
• Facilità di ricordo
– Quanto è facile ricordarne le modalità di uso?
3
Obiettivi di esperienza d’uso
•
•
•
•
•
•
•
•
•
•
Divertimento
Soddisfazione di bisogni emotivi
Gratificazione
Sostegno alla creatività
Piecevolezza estetica
Capacità di dare motivazione
Capacità di essere d’aiuto
Capacità di intrattenere
Godibilità
Soddisfazione
4
Progettare per l’usabilita
Principi
Standard
Linee guida
Euristiche
Design Pattern
5
Introduzione
• Le regole di design forniscono ai progettisti la
capacità di stabilire le conseguenze sull’usabilità delle
loro decisioni di progetto
• Servono per limitare la gamma di opzioni di design
tra cui scegliere
• Servono per applicare la teoria (psicologica,
ergonomica, sociologica, informatica) alla pratica di
progettazione (senza che il progettista sia esperto
della teoria)
6
• Le regole di design si differenziano in base a:
– autorità:
• Obbligo (alta) o suggerimento (bassa)
– generalità:
• campo di applicabilità: in tutte le situazioni (alta) o solo
in alcune (bassa)
– livello di astrazione:
• Vicino (basso) o lontano (alto) al dettaglio di progetto.
• Varia inversamente alla specificità
7
• In base a questa tassonomia, le regole vengono
anche definite:
– Principi: bassa autorità, alta generalità, astratte
• derivano dalla conoscenza di teorie psicologiche,
computazionali, sociali e sono indipendenti dalla tecnologia
– Standard: alta autorità, limitata applicabilità, specifiche
• ci si può limitare ad attenervisi
– Linee guida: bassa autorità, alta generalità, specifiche
• orientate alla tecnologia
• poiché generali, è importante conoscere il fondamento teorico
8
Principi per l’usabilità
• Apprendibilità: grado di facilità con cui
l’utente novizio impara e diventa produttivo
• Flessibilità: molteplicità dei modi con cui
l’utente e il sistema si scambiano informazioni
• Robustezza: livello di supporto fornito
all’utente nel raggiungere e valutare gli
obiettivi
9
Apprendibilità
T
T
• Prevedibilità
– Determinare effetto azione futura in base al passato
• Sintetiticità
– Effetto delle operazioni passate sul presente
• Familiarità
– Applicare conoscenze di altri domini
• Generalizzabilità
– Estendere conoscenze di una interazione ad altre
• Coerenza
– Similarità di comportamento in situazioni simili
10
T
Prevedibilità
• L’utente non risponde bene alle sorprese
• Un’ interfaccia è prevedibile se:
– la conoscenza della storia delle precedenti interazioni è
sufficiente per stabilire il risultato delle future interazioni
• Vari livelli:
– contingente: data la schermata attuale
– storica: date altre schermate precedenti
• Principio centrato sull’utente: la macchina è sempre
deterministica
• Due forme:
– Capacità di prevedere l’effetto delle azioni
– Visibilità delle operazioni: capacità di individuare quali azioni
sono consentite
11
T
Sinteticità
• Capacità dell’utente di stimare l’effetto delle
operazioni precedenti sullo stato corrente
• Serve alla creazione di un modello mentale della UI
• --> Trasparenza:
– fornire un rapporto informativo visibile del cambiamento di
stato della macchina
• Può essere:
– immediata
• Es.: spostamento file in interfacce WIMP
– differita
• Es.: spostamento file in interfacce a linea di comando
12
• Esempio di trasparenza:
– Azione predecente: login
– Effetto: sono stato riconosciuto
13
Familiarità
• Anche i neofiti hanno esperienze di interazione in
domini diversi:
– col mondo reale
– con altre interfacce
• La familiarità:
– misura la correlazione tra la conoscenza precedente e la
conoscenza necessaria per iniziare l’interazione
• --> Presumibilità
• Sfrutta l’analogia.
– Es: word processor è familiare a chi ha esperienza con la
macchina da scrivere.
• Le metafore generano interfaccie familiari.
14
• Quale di queste due UI (skin) di Winamp è più
familiare?
15
Affordance
• La familiarità è collegata alla nozione di
affordance:
– proprietà intrinseche di un oggetto che
suggeriscono come manipolarlo (-->interagire)
• L’aspetto dell’oggetto stimola familiarità con il
suo comportamento.
16
Generalizzabilità
• Generalizzabilità:
– Misura in cui la conoscenza acquisita per il
raggiungimento di un obiettivo passato è
applicabile al raggiungimento di un nuovo
obiettivo contingente.
• La generalizzazione è una caratteristica
naturale dell’uomo (ragionamento induttivo)
• Può essere presente
– all’interno della stessa applicazione interattiva
– tra applicazioni simili
• Es. Cut & paste
17
Coerenza
• … rispetto a:
– Modello concettuale (o metafora)
– Esperienza passata del mondo reale (familiarità)
– Esperienza passata con lo stesso sistema o simili
(generalizzabilità)
• Non è un principio ben definito, qualcuno lo
vorrebbe porre su un livello diverso
(metaprincipio)
• è il principio
– più menzionato
– più pervasivo, quindi difficile da definire
18
Flessibilità
• Iniziativa di dialogo
– Chi guida l’interazione
• Multi-threading
– Più di un compito alla volta
• Migrabilità dei compiti
kg
lb
– Compiti che può svolgere il computer e/o l’utente
• Sostitutività
– Equivalenza di valori in input e output
• Personalizzazione
– Modificabilità dell’interfaccia
19
Iniziativa di dialogo
• Interazione come dialogo tra partner
• Quale partner ha l’iniziativa dell’interazione?
• Si differenzia in
– System pre-emptive
• rigidità
• sicurezza garantita
– User pre-emptive
• flessibilità
• aumenta la probabilità che l’utente si dimentichi dei
compiti che sono stati iniziati e non ancora completati
20
Multi-threading
• Thread (filo): interazione dedita ad un solo
compito
• Multithreading: capacità di supportare
interazioni relative a più compiti nello stesso
momento
– concorrente
• Comunicazione simultanea riguardante compiti separati
(es. bip della posta mentre uso powerpoint )
– interfogliato
• Sovrapposizione temporale dei compiti, ma in ciascun
istante uno solo è attivo (es. Finestre WIMP)
• --> Multimodalità
Interfogliare. 1 corredare un libro, un fascicolo e sim. di fogli bianchi inseriti nella
rilegatura e destinati al lettore per annotazioni o correzioni 2 proteggere con fogli di carta
velina tavole fuori testo di un volume | proteggere fogli freschi dユinchiostro impilati
frapponendovi fogli bianchi o di carta velina per evitare macchie e controstampe.
21
Migrabilità dei compiti
• Possibilità di trasferimento di compiti tra
sistema e utente
• Un compito “interno” ad uno dei due partner
può diventare interno all’altro oppure
condiviso
– Es.: controllo ortografico
22
kg
lb
Sostitutività
• Richiede che valori equivalenti possano essere
sostituiti l’uno con l’altro
• si definisce rispetto:
– all’input
• Unità di misura
• Formule invece di valori
– all’output (--> molteplicità delle rappresentazioni)
• Flessibilità nella presentazione dello stato
• es. grafico + numero
• Pari opportunità: si perde la distinzione tra input e
output: “se riesci a vederlo, lo puoi usare”
– Es. Foglio elettronico
23
Personalizzabilità
• Modificabilità dell’interfaccia
– da parte dell’utente (adattabilità)
– o del sistema (adattività)
Link interessante:
http://www.cs.unb.ca/profs/ghorbani/ali/papers/sadath-aws-wi2004.pdf
24
Robustezza
• Osservabilità
– Valutare lo stato interno dall’output
• Ripristinabilità
– Correzione errori
• Velolcità di risposta
– Velocità di comunicazione
• Conformità dei compiti
– Le funzionalità sono adeguate al compito
25
Osservabilità
• Permette all’utente di valutare lo stato interno del
sistema tramite la sua rappresentazione percettibile
fornita dall’ l’interfaccia.
valutazione
• Fase di valutazione del ciclo di Norman
• Può essere ottenuta attraverso altri principi
–
–
–
–
–
visibilità dell’operazione (già vista)
navigabilità
default
reggiungibilità
persistenza
esecuzione
26
Osservabilità
• Navigabililità
• consente all’utente di esaminare lo stato
interno del sistema tramite la visualizzazione
parziale che ne fornisce l’interfaccia
• Lo stato interno del sistema è complesso: una
visualizzazione globale non avrebbe senso
• Una buona navigabilità è ottenuta munendo
l’interfaccia di comandi di visualizzazione
relativi al compito che si sta svolgendo
27
Osservabilità
• Default
• assistono l’utente informandolo dello stato del
sistema con un ricordo passivo
• di due tipi:
– statico: i valori di default vengono fissati in
inizializzazione e non cambiano più.
– dinamico: i valori possono cambiare
28
Osservabilità
• Raggiungibilità
• possibilità di visitare (raggiungere) tramite la
UI tutti gli stati osservabili del sistema
29
Osservabilità
• Persistenza
• la durata dell’effetto di un atto comunicativo
e la capacità dell’utente di usare quell’effetto
• Es. notifica con:
– segnale visivo (persiste)
– suono (non persiste).
30
Ripristinabilità
• Capacità di raggiungere l’obiettivo desiderato dopo
un errore
• Due direzioni di ripristino:
– forward
• accettazione dello stato corrente
• negoziazione dello stato verso l’obiettivo desiderato.
– backward
• rifiuto della situazione attuale
• annullamento all’indietro delle operazioni effettuate fino ad uno
stato sicuro.
• Principio di sforzo proporzionato:
– se è difficile annullare un effettivo dato sullo stato, dovrebbe
essere altrettanto difficile eseguirlo
31
Velocità di risposta
• Misura la rapidità di comunicazione tra sistema e
utente.
• Tempo di risposta: intervallo di tempo necessario
perché il sistema manifesti i cambiamenti di stato.
• Sono desiderabili durate brevi e tempi di risposta
immediati
– per tempi di risposta non immediati, necessari feedback
informativi
• Stabilità del tempo di risposta: tempi di risposta
costanti a parità di risorse computazionali impegnate
dal compito.
32
Conformità dei compiti
• Misura in cui i servizi offerti dal sistema
suportano i compiti utente
• Fase di esecuzione del ciclo di Norman
• Completezza dei compiti
valutazione
– Il sistema implementa tutti i servizi
necessari ai compiti previsti?
esecuzione
• Adeguatezza dei compiti
– Lo fa come lo intende l’utente?
– Grado di comprensione che l’utente ha dei servizi
33
Principi: riassunto
Apprendibilità
Flessibilità
Robustezza
Predicibilità
Determinare effetto azione
futura in base al passato
Visibilità delle operazioni
Sintetizzabilità
Effetto delle operazioni passate
sul presente
Trasparenza immediata/differita
Familiarità
Sfrutta conoscenze di altri
domini
Presumilità
Affordance
Generalizzabilità
Coerenza
Estendere conoscenze di una
interazione ad altre
Similarità di comportamento in
situazioni simili
Iniziativa di dialogo
Chi guida l’interazione
System/user pre-emptive
Multi-threading
Più di un compito alla volta
Concorrente/Interfogliata,
Multimodalità
Migrabilità dei comp.
Compiti che può svolgere il
computer e/o l’utente
Sostitutività
Equivalenza di valori in input e
output
Personalizzabililtà
Modificabilità dell’interfaccia
Osservabilità
Valutare lo stato interno
dall’output
Visibilità delle op., navigabilità,
default, raggiungibilità, persistenza,
Ripristinabilità
Correzione errori
Ripristino backward/forward
Raggiungibilità, Sforzo proporzionato
Velocità di risposta
Velocità di comunicazione
Stabilità
Conformità dei comp.
Le funzionalità sono adeguate
al compito
Completezza dei compiti,
Adeguatezza dei compiti.
Molteplicità delle rappresentazioni,
Pari oppurtunità
Adattatività
Adattabilità
Principi: riassunto
Apprendibilità
Flessibilità
Robustezza
Predicibilità
Determinare effetto azione
futura in base al passato
Sintetizzabilità
Effetto delle operazioni passate
sul presente
Familiarità
Sfrutta conoscenze di altri
domini
Generalizzabilità
Coerenza
Estendere conoscenze di una
interazione ad altre
Similarità di comportamento in
situazioni simili
Iniziativa di dialogo
Chi guida l’interazione
Multi-threading
Più di un compito alla volta
Migrabilità dei comp.
Compiti che può svolgere il
computer e/o l’utente
Sostitutività
Equivalenza di valori in input e
output
Personalizzabililtà
Modificabilità dell’interfaccia
Osservabilità
Valutare lo stato interno
dall’output
Ripristinabilità
Correzione errori
Velocità di risposta
Velocità di comunicazione
Conformità dei comp.
Le funzionalità sono adeguate
al compito
Standard
• Sono stabiliti da organismi nazionali e internazionali
• sono relativi ad
– hardware
• intersecano fisiologia, ergonomia
• producono dettami ben precisi, applicabili
– software
• intersecano psicologia, scienze cognitive
• producono dettami vaghi, non facili da interpretare
• agenzie:
– BSI (British Standard Institution)
– ISO (INternational Organization for Standardization)
36
• ISO 9241, specifica d’usabilità:
– L’efficacia, l’efficienza e la soddisfazione con cui utenti
specifici raggiungono determinati obiettivi in particolari
ambienti
• Efficacia: la precisione e la completezza con cui utenti specifici
possono ottenere determinati risultati in particolari ambienti
• Efficienza: le risorse impiegate rispetto alla precisione e alla
completezza degli obiettivi raggiunti
• Soddisfazione: la comodità e l’accettabilità del sistema di lavoro
per i suoi utenti e altre persone influenzate dal suo uso
37
Linee guida
• Vengono incontro alla difficoltà di produzione di
standard di costruzione di prodotti software
• Rappresentano la maggior parte delle regole di
design per i sistemi interattivi
– coinvolgono tutte le fasi della progettazione dell’interazione
• le linee guida più astratte servono per i documenti dei requisiti
• le linee guida più specifiche servono per la progettazione
dettagliata
• Vastissima proliferazione, i capisaldi sono:
– Smith and Mosier
– Mayhew
– Definiscono, tra l’altro, gli stili di interazione (che abbiamo
visto)
38
• Esampio: linee guida di Apple
– Le applicazioni efficaci sono coerenti
sia al loro interno che l’una con l’altra
– Ordine “nome-verbo”: prima si selezione l’oggetto
(nome) e poi l’azione da compiere (verbo)
– L’utente, non il computer, inizia e controlla tutte le
azioni
40
Le regole d’oro e le euristiche
• I principi e le linee guida enunciati sinora
richiedono un certo impegno al progettista
per tenere traccia delle linee guida o
interpretare i principi.
• Alternativamente, si possono usare una serie
di euristiche (lista di controllo, sintesi di
consigli)
– Norman, 7 principi
– Shneidermann, 8 regole
– Nielsen, 10 euristiche
41
Principi di Norman
The Design of Everiday Things
1.
Bisogna usare sia la conoscenza presente nel mondo sia la
conoscenza mentale
•
•
2.
Si deve semplificare la struttura dei compiti
•
3.
4.
Quale interruttore accende quale luce?
Si sfrutti il potere dei vincoli
•
•
6.
7.
Per evitare carico cognitivo e STM
Si rendano le cose visibili: colmare i golfi di esecuzione e
valutazione
Le corrispondenze vanno chiarite (fornire corrisp. naturali)
•
5.
Conoscenza incorporata in attività, processi, relazioni sociali,
artefatti fisici (affordance) del mondo reale
Modello mentale
Eseguire solo l’azione corretta nel modo corretto
Fisici, logici, culturali
Bisogna progettare gli errori
Quando tutto il resto non ha successo, si creino degli standard
•
Se le corrispondenze sono arbitrarie, vanno standardizzate
42
Le 8 regole d’oro di Shneiderman
1.
2.
3.
4.
5.
6.
7.
8.
Preservare la coerenza in sequenze di azioni, formato, terminologia, uso
dei comandi e così via
Consentire agli utenti abituali di usare comandi rapidi, come
abbreviazioni, speciali sequenze di tasti e macro
Offrire un feedback informativo per ogni azione dell’utente, a un livello
adatto all’estensione dell’azione
Progettare dialoghi provvisti di chiusura, in modo che l’utente sappia
quando ha finito un compito
Offrire una prevenzione e una gestione semplice degli errori, in
modo che si impedisca la nascita di errori, e, se li fanno, si offrano loro
istruzioni chiare per correggerli
Permettere un’inversione semplice delle azioni per tranquillizare
l’utente e controllare il sistema, che risponde alle sue azioni
Supportare il controllo interno in modo che sia l’utente a controllare il
sitema, che risponde alle sue azioni
Ridurre il carico della memoria a breve termine mantenendo semplici
le visualizzazioni, sfruttando le visualizzazioni multipagina e fornendo
all’utente il tempo necessario per imparare la sequenze delle azioni
43
Euristiche di Nielsen
(per la valutazione)
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Rendere visibile lo stato del sistema
Creare relazioni tra il sistema ed il mondo reale
Abilitare il controllo dell’utente e lasiargli libertà
Essere coerenti e seguire gli standard
Aiutare l’utente a riconoscere, diagnosticare e correggere gli
errori
Prevenire gli errori
Aiutare il riconoscimento piuttosto che il ricordo
Garantire flessibilità ed efficienza d’uso
Adottare un design esteticamente accattivante e minimalista
Fornire aiuti ed istruzioni
44
I pattern d’interazione
• Sono dei metodi per poter trasformare i casi di
successo in processi ripetibili
• Estraggono i dettagli essenziali dai progetti di
successo in modo che possano essere applicati in
nuove soluzioni
• Un pattern
– è una soluzione parzialmente specificata a un problema
ricorrente all’interno di un contesto specifico
– tratta un problema che i progettisti incontrano spesso e
fornisce un “inizio di soluzione”
45
• How to use Patterns
Da http://designinginterfaces.com/
– If you don't have years of design experience
already, a set of patterns may serve as a learning
tool.
– Each pattern description tries to capture the
reasons why the pattern works to make a UI
easier or more fun to use.
– If you talk to users, engineers, or managers about
UI design, or write specifications, then you could
use the pattern names as a way of communicating
and discussing ideas.
46
Pattern: esempio
http://www.cs.kent.ac.uk/people/staff/saf/
patterns/gallery/illustrated-choices.html
47
Progettare per l’esperienza
Non basta che l’utente possa usare il sistema…
…egli deve volerlo usare.
48
Esperienza
• Molti siti internet consentono di fare acquisti on-line…
• … ma questo è veramente shopping?
• Quali sono gli elementi dell’esperienza dello shopping
che gli acquisti on-line non riescono a replicare?
• L’esperienza è difficile da definire….
– Psicologia: esperienza di flusso. Bilanciamento tra ansia e
noia
– Pedagogia: zona di sviluppo prossimale (ZPD). Conoscenze
che si possono apprendere con l’aiuto dell’istruttore
49
Flow experience
• The concept of Flow Experience (Csikszentimihalyi,
1990) originated in studies of happiness, enjoyment,
and play.
• "A holistic sensation present when we act with total
involvement."
• Flow arises from a balance of ability and
responsibility, control and uncertainty, skill and
challenge.
• Consciousness is greater in flow than in panic
(challenge > skill) or boredom (skill > challenge). In
both panic and boredom, consciousness reverts to
automatic or automatized actions.
• Flow emerges in circumstances which are perceived
as both problematic and soluble.
50
Flow experience
• Elements of Flow include:
– Personal transcendence. sense of self as separate
is gone, little distinction between self and
environment or self and activity.
– Intrinsic rewards. Activities are done for their own
reward, not goal-oriented.
– Involvement. There is full involvement in the
present moment and activity.
51
Zone of proximal development
• Vygotsky (1978) called "zone of proximal
development" (ZPD) the difference between what a
child can do with help and what he or she can do
without guidance.
• ZPD is the set of knowledge that the learner has the
ability to learn currently but does not yet understand:
things that are "just out of reach".
• ZPD has also been expressed as the area in which
students are challenged to learn, but learning is not
too difficult nor too easy.
52
Designing experience
• Crackers reali
– Economico e allegro
– Barzelletta, giochino, cappello di carta
– Tira e scoppia
http://www.hcibook.com/e3/casestudy/crackers/
53
Designing experience
• Crackers virtuali
– Economico e alegro
– Barzelletta, giohino web, maschera da ritagliare
– Click e scoppia
54
Designing experience
• Crackers virtuali
– Economico e alegro
– Barzelletta, giohino web, maschera da ritagliare
– Click e scoppia
55
How crackers work
fill in web form
sender
receive email
recipient
To: wxv
From: ..
closed
cracker page
watches
progress
recipient clicks
cracker opens ...
very slowly
open
message
open
cracker page
sender
joke
links
web toy
mask
56
The crackers experience
real cracker
virtual cracker
Surface elements
design
cheap and cheerful
simple page/graphics
play
plastic toy and joke
web toy and joke
dressing up
paper hat
mask to cut out
shared
offered to another
sent by email message
co-experience
pulled together
sender can't see content
until opened by recipient
excitement
cultural connotations
recruited expectation
hiddenness
contents inside
first page - no contents
suspense
pulling cracker
slow ... page change
surprise
bang
WAV file
Experienced effects
57
Gestione del valore
• Un utente userà un sistema (o un oggetto) se
il valore (percepito) che ricava dall’uso
supera il costo.
• Valore e costo non necessariamente
monetari:
– Valori: tempo, funzione, ecologia, etica sociale,
divertimento, …
– Costi: tempo, sforzo per apprendere, fatica, …
• Le abitudini costituiscono un’eccezione.
58
Gestione del valore
• I costi vanno sostenuti all’inizio, mentre i benefici
arrivano diluiti nel tempo
• In economia: il valore di un investimento tra n anni
viene moltiplicato per (1+tasso)n (valore attuale
netto)
• Nella percezione dell’umano, i guadagni futuri
vengono molto sottostimati
– preferiamo la gallina oggi piuttosto che l’uovo domani
– Resistenza allo sforzo di apprendimento
– Servono barriere di costo basse ed un elevato valore
percepito immediatamente.
59
Design emozionale (Norman)
• Le emozioni sono parte del processo cognitivo
• Soggetti privi del sistema emozionale sono
incapaci di prendere decisioni (A. Damasio)
• Gli oggetti rapresentano per l’umano qualcosa
di più della funzione pratica (utilità)
• Un oggetto usabile non è necessariamente
piacevole da usare
• Il progettista, fatta salva la usabilità, si deve
concentrare anche sulle emozioni che
l’oggetto suscita.
60
Livelli di design
• Viscerale
– Apparenza, impatto emotivo iniziale,
sensazioni contingenti (riguarda l’ “adesso”).
• Comportamentale
– Piacere ed efficacia di utliizzo
– Usabilità
• Riflessivo
– Immagine di sè, soddisfazione personale nel
possedere/usare, ricordi.
61
FINE!
62
Links
•
•
•
•
•
http://www.useit.com/homepageusability/
http://www.nngroup.com/reports/
http://www.useit.com/
http://www.jnd.org/index.html
http://www.useit.com/alertbox/
63