350 likes | 550 Views
Introduzione al corso di HCI. Fabio Vitali. … chiedo scusa???. 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
E N D
Introduzione al corso di HCI Fabio Vitali
… chiedo scusa??? A seguire: Introduzione 2/33
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. A seguire: Il corso di IPC 3/33
Il corso di IPC • 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 A seguire: Contattarmi 4/33
Contattarmi • Fabio Vitali • Ufficio al piano terreno delDipartimento di Scienze dell’Informazione • Tel. 051 2094872 • E-mail: fabio@cs.unibo.it • Ricevimento: su appuntamento • Aggiungete la keyword “IPC” nei vostri subject per priorità nelle risposte. A seguire: Contenuti del corso (1) 5/33
Contenuti del corso (1) • 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 System-oriented design 1 Task-oriented design 2 User-oriented design 3 Usage-oriented design 4 Goal-oriented design A seguire: Contenuti del corso (2) 6/33
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 A seguire: Organizzazione del corso 7/33
Organizzazione del corso • 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. A seguire: Invarianti del corso 8/33
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. A seguire: Caveat 9/33
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 accette, purché non sostituiscano i contenuti del corso. A seguire: Human Computer Interaction 10/33
Human Computer Interaction Cos'è Come nasce Come funziona
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. A seguire: Perché HCI (1) 12/33
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 A seguire: Perché HCI (2) 13/33
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. A seguire: Perché HCI (3) 14/33
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) A seguire: Storia del nome (1) 15/33
Storia del nome (1) • 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. A seguire: Storia del nome (2) 16/33
Storia del nome (2) • 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” A seguire: Storia del nome (3) 17/33
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. A seguire: Termini dell’HCI 18/33
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. A seguire: Una mappa dell’HCI (1) 19/33
Una mappa dell’HCI (1) Elaborazione Aspetti sociali Ambiente di lavoro Linguaggio Grafica Ergonomia Dialogo I/O Linee-guida e case studies Valutazione Tecniche e tool A seguire: Una mappa dell’HCI (2) 20/33
Gli esseri umani Elaborazione dell’informazione Linguaggio, comunicazione Ergonomia, caratteristiche fisiche degli esseri umani I computer Device di I/O Tecniche di dialogo Generi del dialogo Computer graphics La progettazione Approcci alla progettazione Tecniche e tool di programmazione Linee guida e case studies Tecniche di valutazione L’ambiente sociale Organizzazione sociale Computer e ambiente di lavoro Una mappa dell’HCI (2) A seguire: Tensioni 21/33
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). Tensioni Di interesse per l’HCI A seguire: Arte, mestiere o scienza? 22/33
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. A seguire: Testing, metodi o trucchi? (1) 23/33
Testing, metodi o trucchi? (1) • 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? A seguire: Testing, metodi o trucchi? (2) 24/33
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. A seguire: Testing, metodi o trucchi? (3) 25/33
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
I bias del vostro docente • 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 A seguire: 4 regole d’oro 27/33
4 regole d’oro • 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 iteraree iterare e iterare e iterare e iteraree iteraree 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. A seguire: La siringa automatica (1) 28/33
La siringa automatica (1) 99999 7 8 9 4 5 6 1 2 3 0 • 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: A seguire: La siringa automatica (2) 29/33
La siringa automatica (2) 1 4 7 2 13672 + + + + 7 8 9 - - - - 4 5 6 1 2 3 0 • 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? Tastierino progettato senza coinvolgere gli utenti Tastierino progettato con il coinvolgimento degli utenti A seguire: Una meta-teoria dell’HCI 30/33
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. A seguire: Conclusioni 31/33
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 A seguire: Riferimenti 32/33
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/ Fine Presentazione