Slides dalle lezioni del corso di Interazione Uomo Macchina per il corso di laurea in Informatica - Università di Milano Bicocca (prof.R.Polillo) - lezione del 7 maggio 2014
1. Corso di Interazione Uomo Macchina
AA 2013-2014
Roberto Polillo
Corso di laurea in Informatica
Università di Milano Bicocca
Dipartimento di Informatica, Sistemistica e Comunicazione
PRINCIPI E LINEE GUIDA (I)1
R.Polillo - Marzo 2014
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 -
Marzo 20142
3. Scopo di questa lezione
3
Discutere, con esempi, le indicazioni che
possono essere fornite al progettista per
guidarlo nella progettazione di sistemi usabili.
R.Polillo - Marzo 2014
4. Indicazioni per il design: tipologia
R.Polillo - Marzo 2014
4
coercitività
generalità
standard
regole
di progetto
Linee
guida
principi
Design
patterns
bassa
bassa
alta
alta
5. Terminologia
Principi
Principi generali per la progettazione di interfacce utente usabili, basati su evidenza
scientifica o sul generale consenso. Derivano dalla conoscenza degli aspetti
psicologici, computazionali e sociali e sono indipendenti dalla tecnologia. Sono espressi
spesso in forma molto generale.
Linee guida
Insieme di raccomandazioni per il progetto dell‟interfaccia utente per una particolare
classe di sistemi, espresse in modo generale ma meno astratte degli standard, con
esempi e motivazioni.
Non sono vincolanti, sta al progettista decidere sulla opportunità di applicarle caso per
caso
Standards
Insieme di regole da applicare nel progetto di una classe di sistemi. Sono vincolanti: i
progettisti devono applicarli. Sono di norma emesse da un Ente di standardizzazione. La
conformità allo standard deve essere valutabile in modo preciso.
Regole di progetto
Insieme di regole da applicare nel progetto di un particolare sistema. Sono vincolanti
R.Polillo - Marzo 2014
5
6. Indicazioni per il design: autorevolezza
4 livelli:
A:Completamente supportate da risultati di ricerca e dati
empirici
B:Basate su pratica generalmente accettata (in modo
documentato)
C:Non ben documentate, ma supportate dall‟opinione di
professionisti
D:Opinione individuale
Standard: solo livelli A e B
R.Polillo - Marzo 2014
6
7. Indicazioni per il design: tipologia
R.Polillo - Marzo 2014
7
coercitività
generalità
standar
d
regole
di progetto
Linee
guida
principi
Design
patterns
bassa
bassa
alta
alta
8. Gli standard per la usabilità
8
Situazione complessa: gli standard sono
in continua evoluzione (www.iso.org;
www.uninfo.it)
Il processo è molto lento, e passa
attraverso diverse fasi
Ci sono standard di prodotto e standard
di processo
R.Polillo - Marzo 2014
9. ISO 9241: Ergonomics of human System
interaction
E‟ uno standard composto dalle seguenti serie, ciascuna
delle quali composta di diversi documenti), in diverso
stadio di evoluzione (attualmente, una ventina di
documenti) appartenenti alle seguenti serie:
100 series: Software ergonomics
200 series: Human system interaction processes
300 series: Displays and display related hardware
400 series: Physical input devices – ergonomics principles
500 series: Workplace ergonomics
600 series: Environment ergonomics
700 series: Application domains - Control rooms
900 series: Tactile and haptic interactions
R.Polillo - Marzo 2014
9
10. Indicazioni per il design: tipologia
R.Polillo - Marzo 2014
10
coercitività
generalità
standard
regole
di progetto
Linee
guida
principi
Design
patterns
bassa
bassa
alta
alta
11. User Interface Design
Guidelines
Android:
http://developer.android.com/guide/topics/ui/index.html
iOS:
https://developer.apple.com/library/ios/documentation/us
erexperience/conceptual/MobileHIG/index.html
R.Polillo - Marzo 2014
11
13. Design patterns
Un design pattern è una soluzione generale a un
problema di progettazione che si ripropone in molte
situazioni, anche diverse
Non una soluzione “finita”, ma piuttosto un modello, un
template da adattare alla specifica situazione
Il concetto è nato in architettura
alla fine degli anni ‟70
(Christopher Alexander),
e applicato all‟ingegneria del
software dalla fine degli anni „80
R.Polillo - Marzo 2014
13
15. Design pattern in architettura
R.Polillo - Marzo 2014
15
“Colloca la scala principale in una
posizione chiave, centrale e
visibile. Tratta l’intera scala come
una stanza (o, se all’esterno, come
un cortile). Disponila in modo che
la scala e la stanza siano una cosa
sola, con la scala che scende
attorno a una o due pareti della
stanza. Allarga il fondo della scala
con finestre aperte o balaustre, e
con ampi gradini, in modo che le
persone che scendono lungo la
scala diventino parte dell’azione
della stanza mentre sono ancora
sulla scala, e che le persone in
basso usino naturalmente i gradini
per sedersi”.Da C.Alexander, A Pattern Language
16. I pattern di interazione uomo macchina: esempio
Design pattern per le funzioni di ricerca in un sito web
(van Welie)
Advanced search Search Tips
Autocomplete Site Index
FAQ Site Map
Help Wizard Footer Sitemap
Search Box Tag Cloud
Search Area Topic Pages
Search Results
R.Polillo - Marzo 2014
16
17. Mobile design patterns: esempi
http://www.mobile-patterns.com
http://http://pttrns.com
http://inspired-ui.com (iPhone)
http://www.sitepoint.com/examples-mobile-
design-patterns/
Un libro:
http://www.mobiledesignpatterngallery.com
R.Polillo - Marzo 2014
17
18. Pattern language per l‟interazione
18
I formalismi di descrizione sono diversi, ma
normalmente ogni pattern è descritto in una
scheda che fornisce
Il problema di cui si tratta
Il pattern che lo risolve
Le motivazioni
L‟ambito/limitazioni di applicazione
Esempi di uso
R.Polillo - Marzo 2014
19. Design pattern: vantaggi
Raccolgono lo stato della pratica
Suggeriscono soluzioni ai progettisti
Formazione di un linguaggio comune
Diffondono gli “standard di fatto”
Evitano di “reinventare la ruota”
R.Polillo - Marzo 2014
19
20. Indicazioni per il design: tipologia
R.Polillo - Marzo 2014
20
coercitività
generalità
standard
regole
di progetto
Linee
guida
principi
Design
patterns
bassa
bassa
alta
alta
21. Principi
I “principi morali” sono principi che guidano il
“buon” comportamento umano
Nella progettazione dei sistemi, possiamo
ricercare quei “principi morali” che dovrebbero
guidarci, in particolare quando dobbiamo
scegliere fra soluzioni alternative
Sono tanto più validi quanto più la pratica
mostri che derogare da questi principi genera,
prima o poi, delle difficoltà
R.Polillo - Marzo 2014
21
22. ISO 9241-110: “Dialogue
principles”22
Enuncia 7 principi del dialogo uomo –
macchina:
1.Adeguatezza al compito
2.Autodescrizione
3.Conformità alle aspettative dell‟utente
4.Adeguatezza all‟apprendimento
5.Controllabilità
6.Tolleranza verso gli errori
7.Adeguatezza alla individualizzazione
R.Polillo - Marzo 2014
23. I 7 principi del dialogo secondo la ISO 9241-110:2006
23
1. Adeguatezza al compito
2. Autodescrizione
3. Conformità alle aspettative
dell‟utente
4. Adeguatezza all‟apprendimento
5. Controllabilità
6. Tolleranza verso gli errori
7. Adeguatezza alla individualizzazione
R.Polillo - Marzo 2014
La funzionalità del
sistema e il
dialogo sono
basati sulle
caratteristiche del
compito, piuttosto
che sulla
tecnologia scelta
per effettuarlo
25. Adeguatezza al compito, in pratica
Nel nostro progetto, abbiamo applicato in pratica
questo principio…
… nell‟attenzione “spasmodica” alla
individuazione dei casi d‟uso, e alla definizione
del diagramma dei casi d‟uso, a livello del
documento dei requisiti, per orientare la
progettazione; inoltre…
… la definizione di scenari d‟uso tipici ci ha
aiutato a perfezionare l‟analisi
R.Polillo - Marzo 2014
25
26. Adeguatezza al compito: aspetti
26
Fasi dell‟interazione adeguate al compito
Informazioni e formati adeguati al compito
Dispositivi di I/O adeguati al compito
Tecniche di interazione adeguate al compito
Default tipici
Ma….
Dialogo essenziale (no ridondanze non
necessarie per il compito)
R.Polillo - Marzo 2014
27. Dialogo essenziale
Analizzare accuratamente le
ridondanze:
servono?
a che cosa servono?
a chi servono?
ci sono degli svantaggi nella loro
eliminazione?
R.Polillo - Marzo 2014
27
29. I 7 principi del dialogo secondo la ISO 9241-110:2006
29
1. Adeguatezza al compito
2. Autodescrizione
3. Conformità alle aspettative
dell‟utente
4. Adeguatezza all‟apprendimento
5. Controllabilità
6. Tolleranza verso gli errori
7. Adeguatezza alla
individualizzazione
R.Polillo - Marzo 2014
Agli utenti risulta
evidente, in ogni
momento, in che
dialogo si trovano,
a che punto si
trovano all‟interno
del dialogo, quali
azioni possono
compiere e come
queste possono
essere effettuate
30. Autodescrizione, in pratica
Nel nostro progetto, abbiamo applicato in pratica
questo principio….
…. nell‟attenzione “spasmodica” alla
comunicazione del contesto corrente, nel primo
prototipo cliccabile a bassa fedeltà (POP):
tipicamente, i titoli delle varie schermate
R.Polillo - Marzo 2014
30
31. Autodescrizione: aspetti
31
Indicazione di che cosa l‟utente può fare
Visibilità del contesto corrente
Visibilità dello stato del sistema
Descrizione dell‟input atteso e del suo formato
Feedback evidente
Ma….
Manualistica ridotta al minimo, meglio se
sostituita da un help online
R.Polillo - Marzo 2014