SlideShare a Scribd company logo
1 of 49
Corso di Interazione Uomo Macchina
AA 2014-2015
Roberto Polillo
Corso di laurea in Informatica
Università di Milano Bicocca
Dipartimento di Informatica, Sistemistica e Comunicazione
PROGETTARE PER L'ERRORE
Queste slides…
… si basano sul libro “Facile da usare”, dell’autore, dove si trovano
tutte le necessarie spiegazioni. Vedi www.rpolillo.it
Queste slide sono disponibili con licenza Creative Commons
(attribuzione, non commerciale, condividi allo stesso modo) a
chiunque desiderasse utilizzarle, per esempio a scopo didattico,
senza necessità di preventiva autorizzazione:
http://creativecommons.org/licenses/by-nc-sa/3.0/it/deed.it
La licenza non si estende alle immagini fotografiche e alle screen
shots, i cui diritti restano in capo ai rispettivi proprietari, che sono
stati indicati, ove possibile, nelle didascalie del libro. L’autore si
scusa per eventuali omissioni, e resta a disposizione per
correggerle.
R.Polillo - Aprile 2015
2
Scopo di questa lezione
3
Discutere la nozione di errore umano, e presentare
alcune linee guida per il trattamento degli errori
nell’interazione uomo-macchina
R.Polillo - Aprile 2015
Errore
R.Polillo - Aprile 2015
4
Il concetto di errore umano è più complesso di quanto
non sembri a prima vista: infatti non esiste una
dicotomia semplice fra “errore” e comportamento
“corretto”
“Errore” sarà inteso come termine generico per comprendere tutti
quei casi in cui una sequenza pianificata di attività fisiche o mentali
fallisce il suo scopo, e quando questo fallimento non possa essere
attribuito all’intervento di qualche agente casuale
James Reason, Human Error
Classificare l’errore umano
5
AZIONE NON
INTENZIONALE
(“SLIP” o “LAPSUS”)
NO
AZIONE
INTENZIONALE
MA ERRATA
(“MISTAKE”)
NO
c’era
l’intenzione
di agire?
l’azione è
proceduta come
pianificato?
SI
l’azione
ha ottenuto lo scopo
desiderato?
SI
AZIONE CORRETTA
SI
c’era intenzione
nell’azione?
NO
AZIONE
NON INTENZIONALE
Es Urto il tavolo e rovescio un
bicchiere
NO
AZIONE
SPONTANEA
Es Mi lanciano una palla di
neve e mi proteggo
SI
Da: J.Reason, Human Error, 1990
R.Polillo - Aprile 2015
Slip (o lapsus)
R.Polillo - Aprile 2015
6
Letteralmente: “scivolata”
Sostituzione involontaria di una lettera, suono,
parola al posto di un’altra e, generalizzando,
sostituzione di azioni o comportamenti al posto di
altre
Esempi:
 lapsus linguae
 lapsus calami
Error handling
Error diagnosis
Error recovery
Progettare per l’errore: temi
R.Polillo - Aprile 2015
7
Error prevention
Error detection
Error explanation
Prevenzione
8
 Degli slip: di solito è abbastanza facile
Esempio: “giusta” distanza fra i pulsanti, allontanando
pulsanti di uso frequente da pulsanti “pericolosi”
 Dei mistake: più difficile
Esempio: formazione degli utenti, riprogettazione del sistema
R.Polillo - Aprile 2015
Prevenzione degli slip: esempio
R.Polillo - Aprile 2015
9
Prevenzione dell’errore: alcune indicazioni
R.Polillo - Aprile 2015
10
 Diversificare le azioni dell’utente
 Evitare comportamenti “modali”
 Usare “funzioni obbliganti”
 Imporre input vincolati
 Non sovraccaricare la memoria a breve termine dell’utente
 Richiedere conferme
 Usare default inoffensivi
 Fornire alternative sicure
Comportamenti modali
11
Quando il sistema si comporta diversamente a seconda
dello stato (o modalità) in cui si trova, e questo stato non è
facilmente riconoscibile dall’utente
Se l’utente non conosce lo stato, non può prevedere
come il sistema risponderà alle sue azioni
R.Polillo - Aprile 2015
La forma del cursore
indica che sono in
modalità “matita”
MacPaint, 1984
12 R.Polillo - Aprile 2015
MacPaint, 1984
13 R.Polillo - Aprile 2015
Il cursore indica che sono in
modalità “cammina”
Wrath of the Gods (Luminaria, 1994)
14
R.Polillo - Aprile 2015
Funzioni obbliganti
15
Situazioni in cui le azioni sono vincolate in modo tale che
la mancata esecuzione di un passaggio impedisca il
successivo (D.Norman)
Spesso ci danno noia, ma ci proteggono…
Esempio:
L’auto emette un segnale d’allarme quando si apre la porta
con la chiave inserita nel cruscotto…
… in tal modo è impossibile chiudersi fuori per errore
R.Polillo - Aprile 2015
Funzioni obbliganti: esercizio
16
In un sistema desktop quale delle seguenti due soluzioni è
preferibile?
1. Selezione azione  selezione oggetto
2. Selezione oggetto  selezione azione
R.Polillo - Aprile 2015
Funzioni obbliganti: esercizio 1
17
In un sistema desktop quale delle seguenti due soluzioni è
preferibile?
1. Selezione azione  selezione oggetto
2. Selezione oggetto  selezione azione
R.Polillo - Aprile 2015
Finder Macintosh, 1974
18 R.Polillo - Aprile 2015
Input vincolati
R.Polillo - Aprile 2015
19
 Permettere all’utente di effettuare solo azioni
lecite nel contesto corrente
 (Generalizza la nozione di funzione obbligante)
Input vincolati: esercizio
20
1)
2)
3)
4)
Quale fra le seguenti soluzioni è la migliore per
prevenire errori di input?
R.Polillo - Aprile 2015
Per informazioni sulle nuove offerte, premi 1; per informazioni
sulle tariffe e bla bla bla, premi 2; se sei interessato a
conoscere i nuovi servizi e bla bla, premi 3; se desideri
comunicare furto o smarrimento del tuo telefonino o bla bla bla
per assitenza specialistica, premi 4; se desideri ricevere
informazioni sul credito bla bla premi 5; se desideri parlare con
un operatore premi 0
Ricordare sempre il
numero magico 7
Non sovraccaricare la memoria a breve termine
R.Polillo - Aprile 2015
21
Richiedere conferme
R.Polillo - Aprile 2015
22
Chiedere sempre conferma prima di effettuare
azioni irreversibili o pericolose…
…spiegando con chiarezza quali sono le alternative
possibili, e le loro conseguenze
Richieste di conferma: esempi da discutere
R.Polillo - Aprile 2015
23
Richieste di conferma: esempi da discutere
R.Polillo - Aprile 2015
24
Da www.bravenet.com
Da: Microsoft Access 95
25
Menu
xxx
yyy
zzz
R.Polillo - Aprile 2015
Richieste di conferma: esempi da discutere
Back
XXX
mvcbc
bvbnv
Sei sicuro di
voler tornare?
sì no
Back
XXX
mvcbc
bvbnv
Usare default inoffensivi: esempio
R.Polillo - Aprile 2015
26
(da Photoshop)
Error handling
Error diagnosis
Error recovery
Progettare per l’errore: temi
R.Polillo - Aprile 2015
27
Error prevention
Error detection
Error explanation
Un buon messaggio di errore deve…
28
1. Allertare
“attenzione: qualcosa non va”
2. Identificare l’errore
“è questo che non va”
3. Dirigere l’utente
“ora devi fare questo”
R.Polillo - Aprile 2015
Note alert box
(Livello 1)
Caution alert box
(Livello 2)
Stop alert box
(Livello 3)
Livelli di allerta
R.Polillo - Aprile 2015
29
Messaggi di errore: linee guida
30
 Spiegare esplicitamente che cosa non va…
 e dare indicazioni costruttive su come risolvere il
problema ...
 nel linguaggio dell’utente …
 in modo educato, esauriente e preciso
R.Polillo - Aprile 2015
Esempi da discutere
R.Polillo - Aprile 2015
31
R.Polillo - Aprile 2015
32
Esempi da discutere
R.Polillo - Aprile 2015
33
Esempi da discutere
Linee guida per il web
34
 i messaggi di errore siano chiaramente visibili e
espressi in un linguaggio chiaro, comprensibile a
tutti
 si cerchi di preservare per quanto è possibile il
lavoro già fatto dall’utente
 si cerchi di ridurre al massimo il lavoro necessario
per correggere l’errore
R.Polillo - Aprile 2015
35 R.Polillo - Aprile 2015
36 R.Polillo - Aprile 2015
HTTP 404 - File not found
R.Polillo - Aprile 2015
37
38 R.Polillo - Aprile 2015
Esempio dal sito di
Jakob Nielsen
39 R.Polillo - Aprile 2015
R.Polillo - Aprile 2015
R.Polillo - Aprile 2015
Error handling
Error diagnosis
Error recovery
Progettare per l’errore: temi
R.Polillo - Aprile 2015
42
Error prevention
Error detection
Error explanation
AZIONE CORRETTA
Stato iniziale Stato finale
Stato di errore
FORWARD
RECOVERY
BACKWARD
RECOVERY
Error recovery (ripristino)
43
Error tolerance
R.Polillo - Aprile 2015
Tolleranza verso gli errori
44
“Un dialogo è
tollerante verso
l’errore quando,
a dispetto di evidenti
errori nell’input,
i risultati desiderati
possono essere
ottenuti senza (o con
minime) azioni
correttive.”
ISO 9241 - 10
R.Polillo - Aprile 2015
Esempio
45
R.Polillo - Aprile 2015
R.Polillo - Aprile 2015
Esempio di backward recovery: undo
47
PowerPoint 2007 Photoshop CS3
R.Polillo - Aprile 2015
AZIONE CORRETTA
Stato iniziale Stato finale
Stato di errore
Stato finale
approssimato
Stato iniziale
approssimato
FORWARD
RECOVERY
BACKWARD
RECOVERY
Recovery imperfetta
48
R.Polillo - Aprile 2015
da Francis Jambon,
1998
Conclusioni
49
“Il progettista non deve concepire una semplice
dicotomia fra errori e comporta-mento corretto: al
contrario, tutta l’interazione uomo-macchina deve
essere trattata come una procedura cooperativa fra i
due, dove gli equivoci possono nascere da ambo le
parti.”
Donald Norman
R.Polillo - Aprile 2015

More Related Content

What's hot

What's hot (20)

20. Principi e linee guida (I)
20. Principi e linee guida (I)20. Principi e linee guida (I)
20. Principi e linee guida (I)
 
11. Conoscere l'utente (II)
11. Conoscere l'utente (II)11. Conoscere l'utente (II)
11. Conoscere l'utente (II)
 
8. Valutare la usabilita'
8. Valutare la usabilita'8. Valutare la usabilita'
8. Valutare la usabilita'
 
12.Visione e progettazione grafica (I)
12.Visione e progettazione grafica (I)12.Visione e progettazione grafica (I)
12.Visione e progettazione grafica (I)
 
5. progettare per l'utente (i)
5. progettare per l'utente (i)5. progettare per l'utente (i)
5. progettare per l'utente (i)
 
22. Conclusioni del corso
22. Conclusioni del corso22. Conclusioni del corso
22. Conclusioni del corso
 
7. Ingegneria e creativita'
7. Ingegneria e creativita'7. Ingegneria e creativita'
7. Ingegneria e creativita'
 
16. Evoluzione dei paradigmi di interazione uomo macchina (I)
16. Evoluzione dei paradigmi di interazione uomo macchina (I)16. Evoluzione dei paradigmi di interazione uomo macchina (I)
16. Evoluzione dei paradigmi di interazione uomo macchina (I)
 
13. Conoscere l'utente: il sistema motorio
13. Conoscere l'utente: il sistema motorio13. Conoscere l'utente: il sistema motorio
13. Conoscere l'utente: il sistema motorio
 
8. Valutare la usabilita'
8. Valutare la usabilita'8. Valutare la usabilita'
8. Valutare la usabilita'
 
Figure dal libro Facile da Usare
Figure dal libro Facile da UsareFigure dal libro Facile da Usare
Figure dal libro Facile da Usare
 
9. Mobile design
9. Mobile design9. Mobile design
9. Mobile design
 
9. Mobile design
9. Mobile design9. Mobile design
9. Mobile design
 
10. Conoscere l'utente (Parte I)
10. Conoscere l'utente (Parte I)10. Conoscere l'utente (Parte I)
10. Conoscere l'utente (Parte I)
 
5. Pprogettare per l'utente (i)
5. Pprogettare per l'utente (i)5. Pprogettare per l'utente (i)
5. Pprogettare per l'utente (i)
 
22. Conclusioni del corso
22. Conclusioni del corso22. Conclusioni del corso
22. Conclusioni del corso
 
12.Visione e progettazione grafica
12.Visione e progettazione grafica12.Visione e progettazione grafica
12.Visione e progettazione grafica
 
17. Principi e linee guida (ii)
17. Principi e linee guida (ii)17. Principi e linee guida (ii)
17. Principi e linee guida (ii)
 
7.Ingegneria e creativita'
7.Ingegneria e creativita'7.Ingegneria e creativita'
7.Ingegneria e creativita'
 
3. Il progetto di esame
3. Il progetto di esame3. Il progetto di esame
3. Il progetto di esame
 

Viewers also liked

Rapporto valutazione sito Web
Rapporto valutazione sito WebRapporto valutazione sito Web
Rapporto valutazione sito Web
Roberto Polillo
 
Template Intervista al commitente
Template Intervista al commitenteTemplate Intervista al commitente
Template Intervista al commitente
Roberto Polillo
 

Viewers also liked (13)

18. Paradigmi di interazione uomo macchina (III)
18. Paradigmi di interazione uomo macchina (III)18. Paradigmi di interazione uomo macchina (III)
18. Paradigmi di interazione uomo macchina (III)
 
17. Evoluzione dei paradigmi di interazione uomo macchina (I)
17. Evoluzione dei paradigmi di interazione uomo macchina (I)17. Evoluzione dei paradigmi di interazione uomo macchina (I)
17. Evoluzione dei paradigmi di interazione uomo macchina (I)
 
Teaching HCI to computing students: some considerations
Teaching HCI to computing students: some considerationsTeaching HCI to computing students: some considerations
Teaching HCI to computing students: some considerations
 
Template Test Usabilita
Template Test UsabilitaTemplate Test Usabilita
Template Test Usabilita
 
Il Terzo Settore di fronte all'evoluzione dell'ICT
Il Terzo Settore di fronte all'evoluzione dell'ICTIl Terzo Settore di fronte all'evoluzione dell'ICT
Il Terzo Settore di fronte all'evoluzione dell'ICT
 
Teaching HCI to Undergraduate Computing Students: the Quest for the Golden Rules
Teaching HCI to Undergraduate Computing Students: the Quest for the Golden RulesTeaching HCI to Undergraduate Computing Students: the Quest for the Golden Rules
Teaching HCI to Undergraduate Computing Students: the Quest for the Golden Rules
 
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
 
Modello Excel per assessment siti Web 1.0
Modello Excel per assessment siti Web 1.0Modello Excel per assessment siti Web 1.0
Modello Excel per assessment siti Web 1.0
 
Rapporto valutazione sito Web
Rapporto valutazione sito WebRapporto valutazione sito Web
Rapporto valutazione sito Web
 
Template Piano Di Qualita
Template Piano Di QualitaTemplate Piano Di Qualita
Template Piano Di Qualita
 
Template Intervista al commitente
Template Intervista al commitenteTemplate Intervista al commitente
Template Intervista al commitente
 
5. Requisiti di prodotto
5. Requisiti di prodotto5. Requisiti di prodotto
5. Requisiti di prodotto
 
Evoluzione dei sii web delle ONG italiane
Evoluzione dei sii web delle ONG italianeEvoluzione dei sii web delle ONG italiane
Evoluzione dei sii web delle ONG italiane
 

Similar to 21. Progettare per l'errore

Similar to 21. Progettare per l'errore (20)

Progettare per l'errore
Progettare per l'erroreProgettare per l'errore
Progettare per l'errore
 
11. Progettare per l errore
11. Progettare per l errore11. Progettare per l errore
11. Progettare per l errore
 
15. Progettare per l'errore
15. Progettare per l'errore15. Progettare per l'errore
15. Progettare per l'errore
 
9. Conoscere l'utente (I)
9. Conoscere l'utente (I)9. Conoscere l'utente (I)
9. Conoscere l'utente (I)
 
13. Conoscere l'utente (III): Il sistema motorio
13. Conoscere l'utente (III): Il sistema motorio13. Conoscere l'utente (III): Il sistema motorio
13. Conoscere l'utente (III): Il sistema motorio
 
6. Progettare per l'utente (ii)
6. Progettare per l'utente (ii)6. Progettare per l'utente (ii)
6. Progettare per l'utente (ii)
 
2. Progettazione per prototipi successivi
2. Progettazione per prototipi successivi2. Progettazione per prototipi successivi
2. Progettazione per prototipi successivi
 
6. Progettare per l'utente (ii)
6. Progettare per l'utente (ii)6. Progettare per l'utente (ii)
6. Progettare per l'utente (ii)
 
8. Valutare la usabilita
8. Valutare la usabilita8. Valutare la usabilita
8. Valutare la usabilita
 
6. Requisiti
6. Requisiti6. Requisiti
6. Requisiti
 
3. Progettare per l utente
3. Progettare per l utente3. Progettare per l utente
3. Progettare per l utente
 
10. Progettare per l’errore
10. Progettare per l’errore 10. Progettare per l’errore
10. Progettare per l’errore
 
5. Il progetto di esame
5. Il progetto di esame5. Il progetto di esame
5. Il progetto di esame
 
4. Usabilita
4. Usabilita4. Usabilita
4. Usabilita
 
16. Principi e linee guida (i)
16. Principi e linee guida (i)16. Principi e linee guida (i)
16. Principi e linee guida (i)
 
16. Principi e linee guida
16. Principi e linee guida16. Principi e linee guida
16. Principi e linee guida
 
4. La ingegneria della usabilita
4. La ingegneria della usabilita4. La ingegneria della usabilita
4. La ingegneria della usabilita
 
13. Internet business models
13. Internet business models13. Internet business models
13. Internet business models
 
Cowoshare2 - I finanziamenti pubblici questi sconosciuti: cosa sono, come si ...
Cowoshare2 - I finanziamenti pubblici questi sconosciuti: cosa sono, come si ...Cowoshare2 - I finanziamenti pubblici questi sconosciuti: cosa sono, come si ...
Cowoshare2 - I finanziamenti pubblici questi sconosciuti: cosa sono, come si ...
 
8. Web design
8. Web design8. Web design
8. Web design
 

More from Roberto Polillo

More from Roberto Polillo (17)

Future City, Ipotesi sulla città del futuro
Future City, Ipotesi sulla città del futuroFuture City, Ipotesi sulla città del futuro
Future City, Ipotesi sulla città del futuro
 
Conclusioni del corso
Conclusioni del corsoConclusioni del corso
Conclusioni del corso
 
ICT e sviluppo sociale: alcune riflessioni
ICT e sviluppo sociale: alcune riflessioniICT e sviluppo sociale: alcune riflessioni
ICT e sviluppo sociale: alcune riflessioni
 
Editoria e industria dei media di fronte alla rivoluzione digitale
Editoria e industria dei media di fronte alla rivoluzione digitaleEditoria e industria dei media di fronte alla rivoluzione digitale
Editoria e industria dei media di fronte alla rivoluzione digitale
 
Wikipedia
WikipediaWikipedia
Wikipedia
 
Open internet
Open internetOpen internet
Open internet
 
20. Social networks
20. Social networks20. Social networks
20. Social networks
 
19. Le organnizzazioni sul web e segg
19. Le organnizzazioni sul web e segg19. Le organnizzazioni sul web e segg
19. Le organnizzazioni sul web e segg
 
18. Content sharing sites
18. Content sharing sites18. Content sharing sites
18. Content sharing sites
 
17. Web feed e aggregatori
17. Web feed e aggregatori17. Web feed e aggregatori
17. Web feed e aggregatori
 
16. Social media
16. Social media16. Social media
16. Social media
 
15. La forma breve e il microblogging
15. La forma  breve e il microblogging15. La forma  breve e il microblogging
15. La forma breve e il microblogging
 
14. I blog
14. I blog14. I blog
14. I blog
 
12. Mobile web
12. Mobile web12. Mobile web
12. Mobile web
 
Internet and sustainable telemedicine: an introduction
Internet and sustainable telemedicine: an introductionInternet and sustainable telemedicine: an introduction
Internet and sustainable telemedicine: an introduction
 
11. Evoluzione del Web (I)
11. Evoluzione del Web (I)11. Evoluzione del Web (I)
11. Evoluzione del Web (I)
 
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
Slides delle lezioni del corso di Strumenti e applicazioni del Web per il cor...
 

Recently uploaded

Recently uploaded (11)

Accessibilità, tra miti e realtà: gli errori da non compiere e le azioni da i...
Accessibilità, tra miti e realtà: gli errori da non compiere e le azioni da i...Accessibilità, tra miti e realtà: gli errori da non compiere e le azioni da i...
Accessibilità, tra miti e realtà: gli errori da non compiere e le azioni da i...
 
Ticonzero news 149.pdf, maggio 2024, content
Ticonzero news 149.pdf, maggio 2024, contentTiconzero news 149.pdf, maggio 2024, content
Ticonzero news 149.pdf, maggio 2024, content
 
AccessibleEU: oggi per l’accessibilità di domani
AccessibleEU: oggi per l’accessibilità di domaniAccessibleEU: oggi per l’accessibilità di domani
AccessibleEU: oggi per l’accessibilità di domani
 
No. Nessuno strumento automatico verifica o ripara l’accessibilità di un sito...
No. Nessuno strumento automatico verifica o ripara l’accessibilità di un sito...No. Nessuno strumento automatico verifica o ripara l’accessibilità di un sito...
No. Nessuno strumento automatico verifica o ripara l’accessibilità di un sito...
 
Transizione Energetica e Cooperazione: non solo CER
Transizione Energetica e Cooperazione: non solo CERTransizione Energetica e Cooperazione: non solo CER
Transizione Energetica e Cooperazione: non solo CER
 
Powerpoint tesi di laurea
Powerpoint tesi di laurea Powerpoint tesi di laurea
Powerpoint tesi di laurea
 
Lo Schema Diapositiva con LibreOffice Impress
Lo Schema Diapositiva con LibreOffice ImpressLo Schema Diapositiva con LibreOffice Impress
Lo Schema Diapositiva con LibreOffice Impress
 
Stati Uniti PPT geografia power point..
Stati Uniti  PPT geografia power point..Stati Uniti  PPT geografia power point..
Stati Uniti PPT geografia power point..
 
Ostia antica da porta di Roma a porta d'Europa
Ostia antica da porta di Roma a porta d'EuropaOstia antica da porta di Roma a porta d'Europa
Ostia antica da porta di Roma a porta d'Europa
 
MyEdu Club: il magazine di MyEdu dedicato ai genitori
MyEdu Club: il magazine di MyEdu dedicato ai genitoriMyEdu Club: il magazine di MyEdu dedicato ai genitori
MyEdu Club: il magazine di MyEdu dedicato ai genitori
 
a scuola di biblioVerifica: come utilizzare CHATBOT secondo UNESCO
a scuola di biblioVerifica: come utilizzare CHATBOT secondo UNESCOa scuola di biblioVerifica: come utilizzare CHATBOT secondo UNESCO
a scuola di biblioVerifica: come utilizzare CHATBOT secondo UNESCO
 

21. Progettare per l'errore

  • 1. Corso di Interazione Uomo Macchina AA 2014-2015 Roberto Polillo Corso di laurea in Informatica Università di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione PROGETTARE PER L'ERRORE
  • 2. Queste slides… … si basano sul libro “Facile da usare”, dell’autore, dove si trovano tutte le necessarie spiegazioni. Vedi www.rpolillo.it Queste slide sono disponibili con licenza Creative Commons (attribuzione, non commerciale, condividi allo stesso modo) a chiunque desiderasse utilizzarle, per esempio a scopo didattico, senza necessità di preventiva autorizzazione: http://creativecommons.org/licenses/by-nc-sa/3.0/it/deed.it La licenza non si estende alle immagini fotografiche e alle screen shots, i cui diritti restano in capo ai rispettivi proprietari, che sono stati indicati, ove possibile, nelle didascalie del libro. L’autore si scusa per eventuali omissioni, e resta a disposizione per correggerle. R.Polillo - Aprile 2015 2
  • 3. Scopo di questa lezione 3 Discutere la nozione di errore umano, e presentare alcune linee guida per il trattamento degli errori nell’interazione uomo-macchina R.Polillo - Aprile 2015
  • 4. Errore R.Polillo - Aprile 2015 4 Il concetto di errore umano è più complesso di quanto non sembri a prima vista: infatti non esiste una dicotomia semplice fra “errore” e comportamento “corretto” “Errore” sarà inteso come termine generico per comprendere tutti quei casi in cui una sequenza pianificata di attività fisiche o mentali fallisce il suo scopo, e quando questo fallimento non possa essere attribuito all’intervento di qualche agente casuale James Reason, Human Error
  • 5. Classificare l’errore umano 5 AZIONE NON INTENZIONALE (“SLIP” o “LAPSUS”) NO AZIONE INTENZIONALE MA ERRATA (“MISTAKE”) NO c’era l’intenzione di agire? l’azione è proceduta come pianificato? SI l’azione ha ottenuto lo scopo desiderato? SI AZIONE CORRETTA SI c’era intenzione nell’azione? NO AZIONE NON INTENZIONALE Es Urto il tavolo e rovescio un bicchiere NO AZIONE SPONTANEA Es Mi lanciano una palla di neve e mi proteggo SI Da: J.Reason, Human Error, 1990 R.Polillo - Aprile 2015
  • 6. Slip (o lapsus) R.Polillo - Aprile 2015 6 Letteralmente: “scivolata” Sostituzione involontaria di una lettera, suono, parola al posto di un’altra e, generalizzando, sostituzione di azioni o comportamenti al posto di altre Esempi:  lapsus linguae  lapsus calami
  • 7. Error handling Error diagnosis Error recovery Progettare per l’errore: temi R.Polillo - Aprile 2015 7 Error prevention Error detection Error explanation
  • 8. Prevenzione 8  Degli slip: di solito è abbastanza facile Esempio: “giusta” distanza fra i pulsanti, allontanando pulsanti di uso frequente da pulsanti “pericolosi”  Dei mistake: più difficile Esempio: formazione degli utenti, riprogettazione del sistema R.Polillo - Aprile 2015
  • 9. Prevenzione degli slip: esempio R.Polillo - Aprile 2015 9
  • 10. Prevenzione dell’errore: alcune indicazioni R.Polillo - Aprile 2015 10  Diversificare le azioni dell’utente  Evitare comportamenti “modali”  Usare “funzioni obbliganti”  Imporre input vincolati  Non sovraccaricare la memoria a breve termine dell’utente  Richiedere conferme  Usare default inoffensivi  Fornire alternative sicure
  • 11. Comportamenti modali 11 Quando il sistema si comporta diversamente a seconda dello stato (o modalità) in cui si trova, e questo stato non è facilmente riconoscibile dall’utente Se l’utente non conosce lo stato, non può prevedere come il sistema risponderà alle sue azioni R.Polillo - Aprile 2015
  • 12. La forma del cursore indica che sono in modalità “matita” MacPaint, 1984 12 R.Polillo - Aprile 2015
  • 14. Il cursore indica che sono in modalità “cammina” Wrath of the Gods (Luminaria, 1994) 14 R.Polillo - Aprile 2015
  • 15. Funzioni obbliganti 15 Situazioni in cui le azioni sono vincolate in modo tale che la mancata esecuzione di un passaggio impedisca il successivo (D.Norman) Spesso ci danno noia, ma ci proteggono… Esempio: L’auto emette un segnale d’allarme quando si apre la porta con la chiave inserita nel cruscotto… … in tal modo è impossibile chiudersi fuori per errore R.Polillo - Aprile 2015
  • 16. Funzioni obbliganti: esercizio 16 In un sistema desktop quale delle seguenti due soluzioni è preferibile? 1. Selezione azione  selezione oggetto 2. Selezione oggetto  selezione azione R.Polillo - Aprile 2015
  • 17. Funzioni obbliganti: esercizio 1 17 In un sistema desktop quale delle seguenti due soluzioni è preferibile? 1. Selezione azione  selezione oggetto 2. Selezione oggetto  selezione azione R.Polillo - Aprile 2015
  • 18. Finder Macintosh, 1974 18 R.Polillo - Aprile 2015
  • 19. Input vincolati R.Polillo - Aprile 2015 19  Permettere all’utente di effettuare solo azioni lecite nel contesto corrente  (Generalizza la nozione di funzione obbligante)
  • 20. Input vincolati: esercizio 20 1) 2) 3) 4) Quale fra le seguenti soluzioni è la migliore per prevenire errori di input? R.Polillo - Aprile 2015
  • 21. Per informazioni sulle nuove offerte, premi 1; per informazioni sulle tariffe e bla bla bla, premi 2; se sei interessato a conoscere i nuovi servizi e bla bla, premi 3; se desideri comunicare furto o smarrimento del tuo telefonino o bla bla bla per assitenza specialistica, premi 4; se desideri ricevere informazioni sul credito bla bla premi 5; se desideri parlare con un operatore premi 0 Ricordare sempre il numero magico 7 Non sovraccaricare la memoria a breve termine R.Polillo - Aprile 2015 21
  • 22. Richiedere conferme R.Polillo - Aprile 2015 22 Chiedere sempre conferma prima di effettuare azioni irreversibili o pericolose… …spiegando con chiarezza quali sono le alternative possibili, e le loro conseguenze
  • 23. Richieste di conferma: esempi da discutere R.Polillo - Aprile 2015 23
  • 24. Richieste di conferma: esempi da discutere R.Polillo - Aprile 2015 24 Da www.bravenet.com Da: Microsoft Access 95
  • 25. 25 Menu xxx yyy zzz R.Polillo - Aprile 2015 Richieste di conferma: esempi da discutere Back XXX mvcbc bvbnv Sei sicuro di voler tornare? sì no Back XXX mvcbc bvbnv
  • 26. Usare default inoffensivi: esempio R.Polillo - Aprile 2015 26 (da Photoshop)
  • 27. Error handling Error diagnosis Error recovery Progettare per l’errore: temi R.Polillo - Aprile 2015 27 Error prevention Error detection Error explanation
  • 28. Un buon messaggio di errore deve… 28 1. Allertare “attenzione: qualcosa non va” 2. Identificare l’errore “è questo che non va” 3. Dirigere l’utente “ora devi fare questo” R.Polillo - Aprile 2015
  • 29. Note alert box (Livello 1) Caution alert box (Livello 2) Stop alert box (Livello 3) Livelli di allerta R.Polillo - Aprile 2015 29
  • 30. Messaggi di errore: linee guida 30  Spiegare esplicitamente che cosa non va…  e dare indicazioni costruttive su come risolvere il problema ...  nel linguaggio dell’utente …  in modo educato, esauriente e preciso R.Polillo - Aprile 2015
  • 31. Esempi da discutere R.Polillo - Aprile 2015 31
  • 32. R.Polillo - Aprile 2015 32 Esempi da discutere
  • 33. R.Polillo - Aprile 2015 33 Esempi da discutere
  • 34. Linee guida per il web 34  i messaggi di errore siano chiaramente visibili e espressi in un linguaggio chiaro, comprensibile a tutti  si cerchi di preservare per quanto è possibile il lavoro già fatto dall’utente  si cerchi di ridurre al massimo il lavoro necessario per correggere l’errore R.Polillo - Aprile 2015
  • 35. 35 R.Polillo - Aprile 2015
  • 36. 36 R.Polillo - Aprile 2015
  • 37. HTTP 404 - File not found R.Polillo - Aprile 2015 37
  • 38. 38 R.Polillo - Aprile 2015
  • 39. Esempio dal sito di Jakob Nielsen 39 R.Polillo - Aprile 2015
  • 42. Error handling Error diagnosis Error recovery Progettare per l’errore: temi R.Polillo - Aprile 2015 42 Error prevention Error detection Error explanation
  • 43. AZIONE CORRETTA Stato iniziale Stato finale Stato di errore FORWARD RECOVERY BACKWARD RECOVERY Error recovery (ripristino) 43 Error tolerance R.Polillo - Aprile 2015
  • 44. Tolleranza verso gli errori 44 “Un dialogo è tollerante verso l’errore quando, a dispetto di evidenti errori nell’input, i risultati desiderati possono essere ottenuti senza (o con minime) azioni correttive.” ISO 9241 - 10 R.Polillo - Aprile 2015
  • 47. Esempio di backward recovery: undo 47 PowerPoint 2007 Photoshop CS3 R.Polillo - Aprile 2015
  • 48. AZIONE CORRETTA Stato iniziale Stato finale Stato di errore Stato finale approssimato Stato iniziale approssimato FORWARD RECOVERY BACKWARD RECOVERY Recovery imperfetta 48 R.Polillo - Aprile 2015 da Francis Jambon, 1998
  • 49. Conclusioni 49 “Il progettista non deve concepire una semplice dicotomia fra errori e comporta-mento corretto: al contrario, tutta l’interazione uomo-macchina deve essere trattata come una procedura cooperativa fra i due, dove gli equivoci possono nascere da ambo le parti.” Donald Norman R.Polillo - Aprile 2015