Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Giuseppe Santucci - Uniroma1
2Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Sommario
Obbiettivi dell'unità
Attività svolte (e da svolgere)
Ambiente di sperimentazione
Risultati delle prime attività di verifica di usabilità ed accessibilità
I due componenti della sperimentazione
• Mais interaction designer
• Mais match maker
3Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Obbiettivi dell'unità di ricerca
7.3 Tecniche e strumenti per la valutazione dell'usabilità e dell'accessibilità
Due obbiettivi principali
1. definizione di un metodo di valutazione dell'usabilità e della accessibilità specializzato per il contesto MAIS (enfasi sui canali, sugli utenti e sui dispositivi)
2. realizzazione di un ambiente per la generazione automatica di interfacce utente adattive su cui sperimentare e il metodo di cui al punto 1
Obbiettivi intermedi corrispondenti alle attività svolte nei primi due anni
4Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Attività
Svolte:
Analisi delle tipologie di utenza (Rapporto 7.3.1)
Definizione di un modello (UML based) per rappresentare un servizio (Raporto 7.3.2)
Definizione di principi di usabilità ed accessibilità per il contesto mobile e loro validazione tramite test di usabilità controllati (Rapporto 7.3.3)
Realizzazione di un primo prototipo per la generazione di interfacce adattive integrato con il matchmaker (Rapporti 7.3.4 e 7.3.1)
Sperimentazione delle euristiche sul prototipo in questione (Rapporto 7.3.5)
Da svolgere:
Definizione di un metodo di ispezione euristica specializzato
Sperimentazione di un metodo di valutazione globale sul secondo prototipo
Raffinamento del prototipo e del metodo sulla base dei risultati ottenuti
5Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Il prototipo Service Designer
Si modella il servizio
Il sistema crea un file XMLche descrive il diagramma
Si sceglie un dispositivoNotebook (generico)
Palmare (iPaq 3660)
Cellulare(Sony Ericcson T610)
5
Il sistema crea una interfaccia adatta al dispositivo
6Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Valutazione usabilità delle interfacce generate dal Service Designer
E' stato eseguita una valutazione euristica della usabilità [Nielsen1990, Nielsen1994] delle interfacce generate dal primo prototipo:
• Esperti di usabilità analizzano il sistema confrontandolo con un predefinito insieme di principi di usabilità (contestualizzati)
• I principi presi in considerazione sono sufficientemente generali da poter essere applicati ad ogni tipo di interfaccia utente
Doppia validazione
• Del primo prototipo
• Delle euristiche adottate e della loro contestualizzazione
7Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Esempio di euristiche prese in considerazione durante l'ispezione...
Visibility of the system status
• Il sistema deve tenere l'utente al corrente di quello che sta succedendo con un opportuno feedback in tempo ragionevole
User control and freedom
• Scelte errate devono prevedere delle "uscite di emergenza" veloci. Undo e redo
Consistency and standards
• Comandi azioni e parole hanno sempre lo stesso significato (allineamento allo standard della piattaforma)
Recognition rather than recall
• I componenti dell'interazione devo essere sempre visibili e l'utente non deve ricordare informazioni di una parte del dialogo per eseguirne un'altra
...
8Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Esempio di problemi di usabilita’ incontrati...
Heuristics
Notebook Generic
iPaq 3660
Sony Ericsson T610
Visibility of system status
Navigation aids required (heading, total N. of steps, home button, etc.)
Navigation aids required (heading, total N. of steps, home button, etc.)
Navigation aids required (heading, total N. of steps, home button, etc.)
User control and freedom
Cancel buttom takes the user back
Cancel buttom takes the user backRadio buttons may not be the most appropriate
Cancel button takes the user backRadio buttons may not be the most appropriate
Recognition rather then recall
OK
Recogntition not supported by the enabled Hotels Table browsing
Recognition not supported by the enabled Hotels Table browsing
Consistency and standards
Forward/backward navigation not consistent
Forward/backward navigation not consistent
Forward/backward navigation not consistent
Legenda relativa alle scelte implementative
Grave: si poteva fare...
Medio:si poteva fare con un certo sforzo
Leggero:molto difficile da realizzare
9Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Recognition rather than recall: palmare vs cellulare
10Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Valutazione accessibilità delle interfacce generate dal Service Designer
Valutazione da parte di esperti con simulazione cognitiva
1. Codice prodotto: esame del codice (XML and XHTML) e della sua adeguatezza alle norme di accessibilità
• XML: utilizzando le linee guida del W3C per l’accessibilità dell’XML (XAG), ancora in stato di bozza, si è esaminato il codice segnalando le manchevolezza e le conformità
• XHTML: rilevando una generale non conformità riguardo all’accessibilità, si sono illustrati, con esempi, i metodi di applicazione delle linee guida del W3C per l’accessibilità dei contenuto Web (WCAG 1.0), insieme alle raccomandazioni italiane secondo la legge 4 del 9/1/2004, art. 11 comma a e b
2. Modalità di generazione: analisi dei metodi utilizzati dal prototipo per permettere la realizzazione di servizi basati sul Web con caratteristiche di accessibilità
11Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Modalità di generazione
Tipologie di presentazione (canali)
• Ridondanza: è parzialmente realizzata attraverso il tag XML “summary” (ed equivalenti), che può essere migliorato per ottenere un elemento più flessibile e potente per ottenere la ridondanza
• Trasduzione: può essere realizzata in casi limitati dall’editor stesso, dal terminale o da un servizio esterno. Non è attualmente prevista
Accessibilità dei dispositivi e abilità degli utenti
• Le possibilità per un utente di utilizzare un servizio Web è determinata all’incontro tra le sue abilità e le possibilità del dispositivo
• Il prototipo è pensato per produrre presentazioni differenti di un servizio definito in modo astratto, ed è quindi adatto a realizzare il miglior compromesso possibile tra capacità del dispositivo e abilità dell’utente. Tale possibilità non è ancora sfruttata
12Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Architettura di riferimento del prototipo...
Service DesignerProfile Designer
Profile Editor
Device ProfileData
ApplicationData
ServiceData
Service Editor
Interface Generator Match Maker
End User
MobileDevice
http
User ProfileData
Modellazione dei servizi tramite UML
Scenario: prenotazione di un albergo
Generazione delle interfacce per tre diversi dispositivi:•Notebook•iPaq 3660•Sony Ericsson T610
13Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
...Architettura di riferimento del prototipo
Service DesignerProfile Designer
Profile Editor
Device ProfileData
ApplicationData
ServiceData
Service Editor
Interface Generator Match Maker
End User
MobileDevice
http
User ProfileData
Utilizzo della logica (Description Logics) per rappresentare i profili utente (anche incompleti)
Nuova tecnica di matchmaking
Scenario turistico previsto dal progetto MAIS
Realizzazione di un prototipo accessibile da dispositivi mobili: scenario ideale per sfruttare l’adattività
14Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
A seguire...
Dettagli sui due moduli saranno forniti durante la dimostrazione del pomeriggio
...
15Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
16Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Il modulo Interaction Designer...
Interazione modellata tramite un Activity Diagram UML i cui stati contengono delle AIU (Unità Atomiche di Interazione)
• descrivono formalmente le informazioni scambiate tra l'utente ed il sistema
• derivate dall’analisi dei servizi web esistenti
• suddivise in gruppi con funzionalità e scopi comuni
AI U
I dN am e
I n p u t
I n te r ac tAIU O u tp u t
D ata In p u t
D ata O u tp u t
( 1 ,1 ) ( 0 ,N )
( 1 ,1 ) ( 0 ,N )
I n p u tI d
I n p u tN am e
Br o w s eAIU
Br o w s eC o m m an dLis t o f
B ro w s in gC o m m an d s
( 1 ,N )( 0 ,N )
O u tp u tI dO u tp u tN am e
Br o w s eIdBr o w s eN am e
17Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
AIUs
Browse AIUBrowse AIU: AIU che permettono la visualizzazione di dati prodotti dal sistema (testo, immagini, …);
• Browse Image
• Browse Text
• Browse Table
Interact AIUInteract AIU: AIU che tramite l’interazione dell’utente forniscono informazioni al sistema.
• Interact Image
• Interact Message
• Interact Table
• Fill List
• Select Choice
• Select Multiple Choice
18Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Idee base
Nuova tecnica di matchmaking
Scenario turistico previsto dal progetto MAIS
Realizzazione di un prototipo accessibile da dispositivi mobili: scenario ideale per sfruttare l’adattività
19Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
L’algoritmo di MatchMaking
Algoritmo per il confronto di profili caratterizzanti eventi turistici
Utilizzo della logica (Description Logics) per rappresentare profili
Possibilità di avere profili incompleti
20Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Struttura di un profilo
Names(P)Names(P)
Features(P)Features(P)
Interests(P)Interests(P)
NoInterests(P)NoInterests(P)
ProfiloProfilo PPProfiloProfilo PP
21Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Names(P): proprietà atomiche associate agli oggetti: categorie di un evento (festa, cerimonia etc.).
Features(P): caratteristiche quantitative (ora inizio, data d’inizio, prezzo, fascia d’età etc.)
Interests(P): argomenti di interesse per l’evento (gastronomia, musica etc.) con associato un livello
NoInterests(P): argomenti di non interesse con associato un livello
Struttura di un profilo (2)
22Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Funzionamento dell’algoritmo
Confronto tra il profilo dell’oggetto d’interesse cercato (Demand) e quello di ciascuno degli oggetti offerti (Supply)
Confronto eseguito in due fasi: Contrazione e Abduzione
Ad ogni coppia Demand - Supply viene attribuita una penalità: maggiore è la penalità, i due profili corrispondono
23Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Contrazione
Meccanismo: se la Demand richiede una proprieta’ che la Supply non fornisce, si elimina tale proprieta’ dalla Demand (processo di give-up) e si ha una penalita’ aggiunta al totale
Scopo: eliminare le incompatibilità tra Demand e Supply
24Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Abduzione
Meccanismo: se la Demand richiede una proprieta’ riguardo alla quale la Supply non specifica alcunche’, si aggiunge tale caratteristica nella Supply e si ha una penalita’ aggiunta al totale
Scopo: fare in modo che la Supply soddisfaccia completamente la Demand
25Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Algoritmo
PdPd ContractionContractionContractionContraction
AbductionAbductionAbductionAbduction
PsPs
PdcPd
c
PsaPs
a penalitàpenalità(totale)(totale)
penalitàpenalità(parziale)(parziale)
profiloprofiloDemanderDemander
Insieme profili
Supplier
Insieme profili
Supplier
profiloprofiloSupplierSupplier
profiloprofiloDemanderDemanderdopo ladopo laContractionContraction
profiloprofiloSupplierSupplierdopo ladopo laAbductionAbduction
26Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Architettura del sistema
DataBaseDataBaseDataBaseDataBase
ClientClientWeb browserWeb browserClientClientWeb browserWeb browser
beanbean
beanDatabeanData
ServletServlet
pagine JSPpagine JSP
pagine HTMLpagine HTML
27Usabilità ed Accessibilità in funzione dei canali dei dispostivi e degli utenti
Accesso da telefono cellulare
Interazione con l’utente lenta a causa delle dimensioni
Il matchmaking riduce la navigazione proponendo sempre per primi gli eventi più “vicini” a quelli graditi all’utente