Human-Computer Interaction - A.A. / 20 02 03 Introduzione al corso di HCI Fabio Vitali Human-Computer Interaction - A.A. … chiedo scusa??? / 20 02 03 A seguire: Introduzione 2/33 Human-Computer Interaction - A.A. Introduzione Qui esaminiamo in breve: Descrizione del corso "Interazione Persona Computer" Definizione e storia della disciplina “Human Computer Interaction” Le motivazioni che fanno dell’HCI una disciplina da studiare Una mappa della tipologia di argomenti che vengono trattati nell’HCI Alcune riflessioni iniziali sulla progettazione dell’interazione con un sistema informativo. / 20 02 03 A seguire: Il corso di IPC 3/33 Human-Computer Interaction - A.A. Interazione Persona Computer Sigle accettabili: INTERPC, IPC, HCI Lezioni Lunedì 16:30 - 20:30 Mercoledì 14:30 - 16:30 Home page del corso http://www.cs.unibo.it/~fabio/corsi/ipc02/ Testi consigliati Nessuno. Di volta in volta, saranno consigliati libri, articoli, siti Web. Se uno insiste per avere un libro, il candidato migliore è: • Dix, Finlay, Abowd, Beale, Human Computer Interaction, II ed. Prentice Hall / 20 02 03 Il corso di IPC A seguire: Contattarmi 4/33 Human-Computer Interaction - A.A. Contattarmi Fabio Vitali Ufficio al piano terreno del Dipartimento di Scienze dell’Informazione Tel. 051 2094872 E-mail: [email protected] Ricevimento: su appuntamento Aggiungete la keyword “IPC” nei vostri subject per priorità nelle risposte. / 20 02 03 A seguire: Contenuti del corso (1) 5/33 Human-Computer Interaction - A.A. I parte: Interazione uomo-macchina Gli esseri umani: • • caratteristiche fisiche caratteristiche psicologiche I computer: sistemi di I/O L’interazione con il computer: stili di dialogo II parte: Stili di progettazione dell'interazione 0 1 2 3 4 System-oriented design Task-oriented design User-oriented design Usage-oriented design Goal-oriented design / 20 02 03 Contenuti del corso (1) A seguire: Contenuti del corso (2) 6/33 Human-Computer Interaction - A.A. Contenuti del corso (2) III parte: Design dell’interazione Principi di progettazione Analisi di task ed utenti La progettazione Analisi del progetto Test del progetto IV parte: interfacce grafiche ed applicazioni Storia delle interfacce grafiche Linee guida di progettazione di interfacce grafiche / 20 02 03 A seguire: Organizzazione del corso 7/33 Human-Computer Interaction - A.A. Caso A: 5-15 persone fortemente motivate Una parte iniziale di basi, indicazione di letture da fare durante la settimana, discussione in aula delle letture. Esame: non esiste. Basta la discussione delle letture. Caso B: 5-20 persone mediamente motivate Prima metà di lezioni tradizionali. In seguito, indicazioni di letture personali, presentazione seminariale delle letture. Esame: 50% il proprio seminario, 50% breve discussione sui temi del corso. Caso C: N>15 persone variamente motivate o non frequentanti Lezioni tradizionali arricchite con seminari di studenti Esame: progettino (nessuna programmazione), discussione sui temi del corso. / 20 02 03 Organizzazione del corso A seguire: Invarianti del corso 8/33 Human-Computer Interaction - A.A. Invarianti del corso Il libro D. Norman, La caffettiera del masochista, Ed. Giunti. Da leggere subito. Seminario della Prof. Cristina Cacciari, docente di Psicologia Cognitiva all'Università di Modena, sulla psicologia umana. L'enfasi sulle parti teoriche dell'HCI, piuttosto che sulle implementazioni, sulle applicazioni, sui casi d'uso (ad esempio, siti Web). A questo penserà il corso del II semestre, "Progettazione di Interfacce", tenuto dal prof. Cesare Maioli, che di questo costituisce il prolungamento: non disinteresse, ma naturale distribuzione dei compiti. / 20 02 03 A seguire: Caveat 9/33 Human-Computer Interaction - A.A. Caveat / Questo non è un corso di programmazione. Non si parla di linguaggi, di interfacce, di librerie. Chi cerca queste cose però farebbe bene a seguire questo corso, prima di cercare qualcosa del genere. A differenza di altri esami, in questo è facile parlare a ruota libera. Quando si parla a ruota libera si dicono molte banalità e a volte anche delle fregnacce. In nessun caso si prenderà per competenza ciò che è soltanto lingua sciolta o eloquenza. Inoltre, competenze estranee ai contenuti del corso (esperienze pregresse, dimestichezza con API, sistemi operativi, ambienti di programmazione, etc.) sono bene 20 accette, purché non sostituiscano i contenuti del corso. 02 03 A seguire: Human Computer Interaction 10/33 Human-Computer Interaction - A.A. / 20 02 03 Human Computer Interaction Cos'è Come nasce Come funziona Human-Computer Interaction - A.A. Human Computer Interaction Nonostante anni di pubblicità e marketing sul concetto di “user friendliness”, gli errori accadono ancora. I computer, i device hardware e le applicazioni software debbono essere progettate in maniera che siano usate senza sforzo nel corso di attività quotidiane. A rigore, poiché i progettisti e i programmatori sono utenti, sanno cosa funziona e cosa no. Perché non è così? Purtroppo lo studio di HCI arriva tardi nella preparazione dei progettisti HW a SW, semmai arriva. Perché progettare e programmare interfacce coerenti e intuitive è tutt’altro che facile, e richiede co-progettazione e attenzione. / 20 02 03 A seguire: Perché HCI (1) 12/33 Human-Computer Interaction - A.A. Perché HCI (1) Autorità La direttiva europea 90/270/EEC richiede che si adottino delle precauzioni nel progettare, scegliere, commissionare o realizzare software. In particolare il software deve essere: • • • • • Adatto al compito Facile da usare e, dove appropriato, adattabile alle esperienze e conoscenze dell’utente In grado di fornire feedback sulle sue funzionalità In grado di visualizzare le informazioni in un formato e ad una velocità adatta all’utente Conforme ai principi dell’ergonomia nel software / 20 02 03 A seguire: Perché HCI (2) 13/33 Human-Computer Interaction - A.A. Perché HCI (2) Business Siamo in grado di usare le capacità dei dipendenti in maniera più proficua Il costo umano è di gran lunga superiore al costo di hardware e software Gli errori sono costosi in termini di perdita di tempo, di soldi, di vite umane, di morale. Mercato Le persone si aspettano che i computer siano facili da usare, sono meno tolleranti verso errori di progettazione, sono estremamente eterogenee per quel che riguarda conoscenze, esperienza, aspettative. / 20 02 03 A seguire: Perché HCI (3) 14/33 Human-Computer Interaction - A.A. Perché HCI (3) Individui Il computer è sempre più visto come un elettrodomestico, e ci aspettiamo lo stesso grado di affidabilità, facilità, utilità. La sfida progettuale Gli essere umani sono complessi, i sistemi sono complessi, l’interfaccia tra i due è complessa. Il punto di vista sociale I computer sono sempre più una parte critica della nostra società, e verranno usati per aspetti socialmente rilevanti: educazione dei bambini, trattamento dei dati personali, applicazioni critiche (controllo aereo, impianti industriali e d’energia, office automation) / 20 02 03 A seguire: Storia del nome (1) 15/33 Human-Computer Interaction - A.A. Human performance Inizio secolo. Applicazione diretta del taylorismo: l’uomo l’operaio - è una macchina, ed è necessario massimizzarne le prestazioni. Ergonomics II guerra mondiale, GB. Studia l’interazione tra uomo e macchina e cerca di creare macchine (ad esempio armi) che utilizzino al meglio le caratteristiche fisiche degli esseri umani. Qui nasce la legge di Murphy. Human factors Termine americano degli anni ‘60 (ergonomics è europeo) per indicare la stessa cosa. In più entrano in gioco fattori cognitivi. / 20 02 03 Storia del nome (1) A seguire: Storia del nome (2) 16/33 Human-Computer Interaction - A.A. Man-machine interaction Negli anni ‘70 l’ergonomia si divide: studi sulle applicazioni del design nella vita quotidiana (es. sedie) rimangono col nome di ergonomics, mentre studi sull’usabilità degli oggetti per il lavoro (macchine, computer, ecc.) prendono il nome di interazione uomo-macchina Human-computer interaction Negli anni ‘80 la consapevolezza della grande parte che i computer avevano nel campo del man-machine interaction (oltre a considerazioni di correttezza politica) portano ad identificare un campo specifico. Il termine interazione persona-elaboratore è stato proposto anche in Italia. User interface Una visione più ristretta, relativa soltanto agli aspetti delle applicazioni con cui l’utente si trova in contatto. Da qui il termine “user friendliness” / 20 02 03 Storia del nome (2) A seguire: Storia del nome (3) 17/33 Human-Computer Interaction - A.A. Storia del nome (3) Web design In particolare, la nascita del World Wide Web, la sua subitanea popolarità e la quantità di brutti siti che ciò ci ha portato ha creato una nuova disciplina specificamente orientata alla progettazione di buoni siti Web. Questa disciplina richiede competenze grafiche, tecniche, di progettazione dell’informazione e della comunicazione. Web usability Alcuni guru indiscussi (Siegel, Veen, ma soprattutto Jakob Nielsen) hanno proposto teorie dell’usabilità che molto hanno influenzato la progettazione recente dei siti Web. / 20 02 03 A seguire: Termini dell’HCI 18/33 Human-Computer Interaction - A.A. Termini dell’HCI Utente Un individuo, un gruppo di persone che lavorano insieme, un gruppo di utenti che lavorano insieme in un’organizzazione. Elaboratore Ogni tecnologia dell’informazione, dal piccolo PDA al computer da scrivania, ad un sistema su larga scala, ad un sistema embedded, e che includa anche parti non computerizzate (ad es. altri esseri umani). Interazione Ogni comunicazione tra utente e computer, diretta o indiretta. Se è diretta si dice che c’è un dialogo, con feedback e controllo del dialogo. Se è indiretta si assume l’esistenza di un processo in background o batch. In ogni caso esiste un fine dell’interazione. / 20 02 03 A seguire: Una mappa dell’HCI (1) 19/33 Human-Computer Interaction - A.A. / 20 02 03 Una mappa dell’HCI (1) Elaborazione Aspetti sociali Ambiente di lavoro Linguaggio Grafica Ergonomia Linee-guida e case studies Tecniche e tool A seguire: Una mappa dell’HCI (2) I/O Dialogo Valutazione 20/33 Human-Computer Interaction - A.A. Una mappa dell’HCI (2) Gli esseri umani Elaborazione dell’informazione Linguaggio, comunicazione Ergonomia, caratteristiche fisiche degli esseri umani La progettazione Approcci alla progettazione Tecniche e tool di programmazione Linee guida e case studies Tecniche di valutazione I computer Device di I/O Tecniche di dialogo Generi del dialogo Computer graphics L’ambiente sociale Organizzazione sociale Computer e ambiente di lavoro / 20 02 03 A seguire: Tensioni 21/33 Human-Computer Interaction - A.A. Di interesse per l’HCI Utilità Servire a qualcosa Efficienza Richiedere il minimo di risorse per raggiungere lo scopo Complessità Essere di ostacolo alla comprensione per motivi intrinseci (cioè inerenti al concetto in sé). Usabilità Essere facile da imparare e da usare. Efficacia Richiedere il minimo di risorse aggiuntive (ad esempio, negli utenti) per raggiungere lo scopo. Complicazione Essere di ostacolo alla comprensione per motivi estrinseci (cioè dipendenti da cause esterne). / 20 02 03 Tensioni A seguire: Arte, mestiere o scienza? 22/33 Human-Computer Interaction - A.A. Arte, mestiere o scienza? Non esiste una teoria unificante dell’HCI. Forse non può esistere. Comunque tutte le teorie si basano sullo studio dei task. C’è un parallelo con l’architettura: La scienza fornisce le tecniche numeriche per evitare che l’edificio crolli Il mestiere ottimizza la struttura, le tecniche costruttive, il soddisfacimento dei bisogni pratici L’arte aggiunge grazia, ispirazione, genio. C’è nel campo dell’HCI la tensione a descrivere, regolare, racchiudere. Questo eliminerà l’arte? La velocità di innovazione nell’informatica garantisce che qualunque tecnica invecchierà rapidamente. Senza lo spazio per la creatività, HCI è destinato a burocraticizzarsi. / 20 02 03 A seguire: Testing, metodi o trucchi? (1) 23/33 Human-Computer Interaction - A.A. L’HCI è recente e popolare. I suoi dettami non sono ancora codificati. Esistono decine di trattati e teorie variamente sovrapposte, contrapposte o alternative. Teorie di dieci anni fa sono oggi già completamente screditate. Probabilmente teorie di moda oggi saranno screditate tra cinque anni. Molte regole d'oro del passato sono ormai entrate nella consapevolezza collettiva, e sono di difficile rimozione, anche se ormai non più attuali. Ad esempio, il ruolo delle metafore o delle icone nella progettazioni di interfacce. La cosa è ancora più evidente nel Web. La disponibilità di nuove tecnologie, gli studi di usabilità, gli stili di progettazione incalzano a pochi anni o mesi di distanza l'uno dall'altro, e libri di progettazione di tre-quattro anni fa sono già inesorabilmente datati. Come capire se un dettame è destinato a durare nel tempo o dovuto a mode o situazioni contingenti? / 20 02 03 Testing, metodi o trucchi? (1) A seguire: Testing, metodi o trucchi? (2) 24/33 Human-Computer Interaction - A.A. Testing, metodi o trucchi? (2) Il progresso scientifico è solidamente basato sul test: uno scienziato propone un'ipotesi e va tosto a verificarne la correttezza. Il paradigma scientifico è lo schema all'interno del quale vengono fatte ipotesi e che permette di valutare in partenza -cioè prima del test - quali ipotesi abbiano una speranza di successo e quali no. Il solo meccanismo di testing, dunque, non dà nessuna garanzia di arrivare a produrre conclusioni ragionevoli e utili. In particolare, non fornisce un metodo. Il metodo, invece, è fondamentale nella invenzione: fornisce concetti, schemi e trucchi indispensabili per ottenere in tempi ragionevoli un risultato utile. Le linee-guida costituiscono una formalizzazione e cristallizzazione di un metodo di progettazione. Esprime in esteso quei concetti, schemi e trucchi che costituiscono il metodo. / 20 02 03 A seguire: Testing, metodi o trucchi? (3) 25/33 Human-Computer Interaction - A.A. / 20 02 03 Testing, metodi o trucchi? (3) Assiomi Regole "eterne", che non dipendono dalle mode, dallo sviluppo tecnologico, e che presumibilmente saranno vere ancora a lungo nel futuro. Ad esempio: "Minimizzare il carico cognitivo richiesto dall'interfaccia aumenta il potenziale cognitivo a disposizione per il task" Paradigmi Schemi globali che forniscono una vera e propria filosofia di progettazione. Vengono rivoluzionati da grandi cambiamenti tecnologici o sociali (invenzioni importanti, cambi generazionali, etc.) Ad esempio: Metafore negli anni '80, Internet negli anni '90, mobilità negli anni '00. Regole Singoli, specifici dettami, più o meno dettagliati, che portano il paradigma a effettiva realizzabilità. Ad esempio: usa un font senza grazie per i titoli; fornisci sempre un link alla home page. Font con grazie A seguire: I bias del vostro docente 26/33 Human-Computer Interaction - A.A. Mi piacciono i contributi di individui geniali… Controversi Per lo più inutili o senza sbocco Paradigmatici Peggiorano le cose prima di migliorarle Miglioramenti di ordini di grandezza Non prevedibili, non ricercabili … ma bisogna anche tener conto dei contributi della comunità di scienziati. Non controversi Sempre utili Di dettaglio o tassonomici Migliorano comunque, ma poco alla volta Prevedibili e ricercabili / 20 02 03 I bias del vostro docente A seguire: 4 regole d’oro 27/33 Human-Computer Interaction - A.A. Pensare agli utenti Il 90% degli sforzi di un esperto in HCI è ricordare al progettista del sistema che ci sarà un utente ad usare il sistema. Provare sul campo Un sistema che in laboratorio è facile e piacevole da usare può non esserlo nella situazione reale: le autoradio o i telecomandi vanno usati senza essere guardati, le radiosveglie da persone addormentate. Coinvolgere gli utenti Gli utenti (soprattutto per i task specializzati) hanno conoscenze importanti e non formalizzate. Una interfaccia di prova (mock-up) compie il miracolo che mille studi su carta non riescono a fare. Iterare (e iterare e iterare e iterare e iterare e iterare e iterare e iterare e iterare e iterare) Nessuna interfaccia riesce giusta al primo tentativo. Piccoli prototipi a basso costo e sacrificabili sono cruciali. Esistono molte tecnologie che permettono di creare finte interfacce a basso costo. / 20 02 03 4 regole d’oro A seguire: La siringa automatica (1) 28/33 Human-Computer Interaction - A.A. Si dovette progettare l'interfaccia di una siringa automatica: l'infermiera digita la quantità di liquido da iniettare, e attiva la siringa. I progettisti immediatamente pensano alle tastiere di computer e telefoniche, e progettano questo: 99999 7 8 9 4 5 6 1 2 3 0 / 20 02 03 La siringa automatica (1) A seguire: La siringa automatica (2) 29/33 Human-Computer Interaction - A.A. / 20 02 03 La siringa automatica (2) Quello a cui i progettisti non pensano, e gli utenti sì, è l'applicazione dell'interfaccia nel mondo reale. Ad esempio, qual è l’effetto se si preme per errore un tasto in più nell’inserire il valore numerico 1372? 13672 1 4 7 2 6 + + + + 3 - - - - 7 8 9 4 5 1 2 0 Tastierino progettato senza coinvolgere gli utenti A seguire: Una meta-teoria dell’HCI Tastierino progettato con il coinvolgimento degli utenti 30/33 Human-Computer Interaction - A.A. Una meta-teoria dell’HCI Al fine di produrre sistemi informatici con una buona usabilità, gli specialisti di HCI debbono: capire i fattori psicologici, economici, ergonomici, sociali e dell’organizzazione connessi con l’operare degli utenti sul sistema al fine di • sviluppare tool e tecniche per aiutare i progettisti a creare sistemi usabili per le attività previste, al fine di • raggiungere livelli di interazione efficienti, efficaci e sicuri sia in termini di interazione individuale che di gruppo. / 20 02 03 A seguire: Conclusioni 31/33 Human-Computer Interaction - A.A. Conclusioni Qui abbiamo parlato di Descrizione dell’HCI Ambito dell’HCI Una breve meta-teoria dell’HCI Alcuni termini chiave dell’HCI Una visione del corso di IPC / 20 02 03 A seguire: Riferimenti 32/33 Human-Computer Interaction - A.A. Riferimenti A. Dix et alii, HCI, Prentice Hall, 1998, Introduzione S. Greenberg, Map of Human Computer Interaction, http://www.cpsc.ucalgary.ca/~saul/481/index.html Keith Andrews, Human-Computer Interaction Lecture Notes, Final Version of 13 July 1999, Graz University of Technology, http://www.iicm.edu/hci/ / 20 02 03 Fine Presentazione