Prefazione

 

Questo libro fornisce un’introduzione generale all’ingegneria dell’usabilità, per la progettazione di prodotti facili da usare, in particolare sistemi interattivi ad alto contenuto di software. È nato come libro di testo per corsi universitari di carattere introduttivo per le discipline dell’interazione uomo macchina o dell’interaction design, oggi presenti in quasi tutti i corsi di laurea in Informatica, ma può essere letto anche da chi non si occupi specificamente di informatica. Infatti, a parte una generica comprensione dei concetti generali dell’informatica e del software, il libro non presuppone nel lettore particolari nozioni di carattere tecnico. Può quindi essere usato senza difficoltà anche da studenti di orientamento diverso, per esempio dei corsi di laurea in Scienze della Comunicazione o Disegno Industriale, o da chiunque desideri avere un inquadramento introduttivo a questi argomenti.

La disciplina dell’interazione uomo macchina ha più di un quarto di secolo, ed è oggi vasta e diversificata.  Attinge alle conoscenze di numerose altre discipline, e si declina in molte specializzazioni diverse, alcune orientate al “fare”, altre al “conoscere”.  Questo libro è fortemente orientato al “fare”, ed ha un tema molto specifico: si occupa della progettazione di sistemi interattivi che possano dirsi usabili, cioè sistemi che supportino l’essere umano nell’esecuzione delle sue attività quotidiane, rendendole più efficaci, meno faticose e più gradevoli. In ultima analisi, sistemi che migliorino la qualità della nostra vita. Il libro adotta un approccio elementare, anche se concettualmente preciso e non riduttivo, cercando di focalizzarsi sulle idee fondamentali e di arrivare al punto in un numero limitato di pagine. Per non ridurre lo spessore della disciplina, che è notevole, ogni capitolo propone poi alcuni approfondimenti, prevalentemente accessibili in rete, che sono lasciati all’iniziativa del lettore.

Il sottotitolo di questo libro è “Un’introduzione moderna all’ingegneria dell’usabilità”. La parola “moderna” merita qualche spiegazione. Anche se l’ingegneria dell’usabilità ha un paio di decenni di vita, il contesto è completamente cambiato da quando Jakob Nielsen, con il suo testo Usability Engineering, nel 1993 portò questo termine all’attenzione di un vasto pubblico – almeno nell’ambito dell’informatica. Nel 1993 Internet era nella sua infanzia, la telefonia mobile pure. Il cambiamento introdotto da questi due strumenti, e dalle tecnologie che li hanno resi possibili, è di natura epocale, ed ha modificato profondamente, da allora, non solo il modo con cui ci rapportiamo ai sistemi interattivi, ma anche i nostri comportamenti quotidiani. Oggi – e sempre di più con il passare del tempo – l’impatto della tecnologia è pervasivo, ed ha profonde ripercussioni sulla vita di tutte le persone in tutti gli ambiti, dal lavoro al tempo libero. Inoltre la tecnologia genera continuamente nuova tecnologia, e l’accelerazione in questi ultimi anni si è fatta frenetica. Sul mercato vengono continuamente immessi nuovi strumenti, che si propongono di modificare, a volte radicalmente, le nostre abitudini e i nostri comportamenti. 

Tutto ciò, se non cambia i principi di base dell’ingegneria dell'usabilità, attribuisce a questa disciplina un ruolo significativamente diverso dal passato, quando costituiva una nicchia seguita da un piccolo numero di addetti. A chi progetta sistemi interattivi, si richiede un atteggiamento molto più consapevole di quanto non lo fosse in un passato non lontano, quando la tecnologia si rivolgeva a un pubblico di utenti molto più ristretto, e relativamente specializzato. Il progettista deve ora essere in grado di collocare i prodotti del suo lavoro nel contesto in cui saranno utilizzati, e di valutarne gli effetti su chi li utilizzerà. Deve essere in grado di scegliere le soluzioni migliori, non solo e non tanto dal punto di vista tecnico – la tecnologia in molti casi è oggi una commodity – quanto dal punto di vista complessivo dell’impatto sulla qualità della vita degli utilizzatori. Lo studio della tecnologia fine a se stessa può produrre mostri o, nel caso migliore, gadget sofisticati. In un pianeta in cui la metà della popolazione – più di tre miliardi di persone – vive con meno di 2,5 dollari al giorno, questo, semplicemente, non può essere accettato. 

Sono convinto che la formazione che i progettisti di sistemi interattivi ricevono tradizionalmente, nel nostro Paese, nei corsi di laurea in informatica e in ingegneria sia fortemente inadeguata per questo nuovo contesto, perché prescinde totalmente dallo studio dell’uso dei sistemi. Ai progettisti viene insegnato a trovare soluzioni tecniche a problemi tecnici. Non viene mai insegnato a sollevare – sia pure per un momento – lo sguardo dal codice dei programmi o dagli schemi tecnici, per riflettere sul senso di ciò che stanno facendo, e di esaminare l’effetto delle loro scelte progettuali sull’attività degli utenti. A essi non si chiede di pensare, ma solo di trovare il modo migliore per realizzare ciò che altri hanno pensato, senza chiedersi perché. Io non credo che questo sia un modello corretto per il mestiere del progettista. La progettazione, nel senso più nobile del termine, è l’arte di cambiare il mondo. Il progettista deve conoscere approfonditamente le possibilità che la tecnologia offre, e le tecniche per utilizzarla nel modo più appropriato. Ma questa conoscenza è soltanto strumentale, e non un obiettivo in sé. Ciò che conta è lo scopo finale, una visione del futuro che si ritiene desiderabile, e che il prodotto della progettazione rende più vicino.

Questo libro, pertanto – sia pure con l’approfondimento limitato che può fornire un testo introduttivo – invoca un radicale cambiamento di paradigma nelle discipline della progettazione, che da progettazione orientata ai sistemi si trasformi in progettazione orientata all’uso e, possibilmente, all’uso universale. Ciò significa – al di là delle differenze fra le metodologie proposte dai diversi autori – una focalizzazione costante, consapevole, informata e attenta sui bisogni degli utilizzatori dei sistemi che progettiamo, sui diversi contesti del loro uso e sugli effetti che essi producono. Che il progettista alzi, finalmente, lo sguardo dal tavolo di lavoro (o dallo schermo del computer) e si guardi intorno. E che l’università, finalmente, lo aiuti in questo cambiamento di prospettiva.

°  °  °

Ogni libro porta dietro di sé il mondo e l’esperienza del suo autore. La mia formazione di base è l’ingegneria del software. Anche se mi sono a lungo occupato di problemi di organizzazione e di comunicazione, è principalmente dal punto di vista di chi progetta software che, inevitabilmente, affronto i temi dell’ingegneria dell’usabilità e dell’interaction design. In particolare, il libro pone molta enfasi sull’approccio iterativo alla progettazione, con l’utilizzo di prototipi e di prove con gli utenti fin dalle primissime fasi del progetto. Non propone alcuna specifica metodologia di progettazione, ma adotta l’approccio generale alla progettazione human-centred proposto dallo standard ISO 13407. I concetti base sono ispirati agli standard ISO (dai quali si adotta anche la definizione di usabilità) e all’impostazione dei primi libri di Donald Norman. Il libro evita di trattare temi soggetti a una rapida obsolescenza (per esempio i diversi apparati di interazione) e riduce al minimo indispensabile il trattamento dei concetti di psicologia cognitiva e della percezione. Questo non perché io ne sottovaluti l’importanza in relazione ai temi trattati, ma semplicemente perché, provenendo da una formazione differente, ho voluto evitare le approssimazioni del dilettante. Ho prestato molta attenzione – sia pure lasciandole inevitabilmente nel background del testo – alle tendenze recenti del Web, che costituiscono attualmente l’oggetto principale del mio interesse.

Detto questo, l’organizzazione del libro in capitoli non richiede particolari spiegazioni. Dopo un’introduzione generale sul concetto di interfaccia utente e sulla disciplina della human-computer interaction (Capitolo 1), si prosegue con una rapida rassegna dei principali paradigmi di interazione che si sono consolidati negli anni. Segue una introduzione alla nozione di usabilità (Capitolo 3), alle motivazioni alla base di una progettazione human-centred (Capitolo 4) e qualche approfondimento sull’utente, che da concetto astratto deve incarnarsi, e diventare il fulcro della progettazone. I capitoli 6,7,8 e 9 approfondiscono i metodi dell’ingegneria dell’usabilità, descrivendo inizialmente l’approccio iterativo alla progettazione dei sistemi (Capitolo 6), quindi i metodi utilizzati per la definizione dei requisiti (Capitolo 7), e la costruzione di prototipi (Capitolo 9). Il Capitolo 8 discute il rapporto fra ingegneria e creatività, mostrando esempi delle tecniche utilizzate nell’invenzione di nuovi prodotti. I quattro capitoli successivi discutono, con numerosi esempi, i principi e le linee guida da seguire nella progettazione dei sistemi usabili. In particolare, il Capitolo 10 descrive dettagliatamente i sette principi del dialogo proposti dallo standard ISO 9241-Parte 110; il Capitolo 11 approfondisce le linee guida per il trattamento degli errori dell’utente; il Capitolo 12 si concentra in particolare sulla progettazione grafica e, infine, il Capitolo 13 indica come progettare testi dotati di buona leggibilità. Il Capitolo 14 tratta le principali tecniche per la valutazione dell’usabilità e, in particolare, i test di usabilità. Il libro non riporta una bibliografia estesa, che spesso serve solo a dimostrare la cultura dell’autore, e non è di aiuto a chi vuole approfondire. Per evitare questo problema, mi sono  limitato a indicare alcuni libri che ritengo utili per approfondire i temi trattati. L’appendice descrive la notazione degli state-chart, strumenti formali molto utili per la descrizione non ambigua dei dialoghi fra utenti e sistema.

°  °  °

Il libro nasce dall’esperienza di dieci anni d’insegnamento del corso di Interazione uomo-macchina per la laurea in Informatica dell’Università degli Studi di Milano Bicocca. Questo corso ha l’obiettivo di trasmettere agli studenti (in buona parte futuri progettisti di sistemi) una sensibilità alle problematiche della costruzione di sistemi usabili - e in particolare di prodotti software, o con un significativo contenuto di software. A questo scopo, insiste sui concetti di usabilità, di progettazione human-centred e sui metodi di valutazione dell’usabilità che coinvolgono l’utente.

Un corso con quest’obiettivo deve dare spazio consistente a esperienze pratiche di progettazione, senza le quali non sarebbe di alcuna utilità. Infatti, l’esperienza mostra che gli studenti tendono a sottovalutare questi concetti, considerandoli quasi banali, nel contesto degli altri corsi a orientamento più tecnico e formale presenti nei curriculum delle lauree in Informatica, senza soffermarsi a esaminarne con la necessaria attenzione il senso profondo, che banale certamente non è. Per superare questa difficoltà, è indispensabile affiancare alla presentazione dei concetti un laboratorio di tipo pratico, in cui gli studenti possano vederne le applicazioni e le implicazioni concrete. Secondo la mia esperienza, il modo più proficuo è organizzare gli studenti in piccoli gruppi di lavoro che progettino, con l’impostazione iterativa descritta nel testo, il prototipo di un semplice sistema, sottoponendolo, a ogni ciclo d’iterazione, a test con gli utenti o a valutazioni di usabilità effettuate assieme al docente.[1]

Anche con questa impostazione, si scopre ben presto che trasmettere, nell’ambito di un corso della durata di 6 o 8 crediti formativi, una ragionevole capacità di impostare consapevolmente l’interfaccia di un semplice sistema interattivo, è compito didattico non banale. Naturalmente, non mancano gli studenti in grado di produrre prototipi eccellenti. Questo deriva quasi sempre dalla disponibilità di prodotti interattivi di qualità, che vengono presi a modello o che comunque costituiscono precise fonti di ispirazione. Ma non basta che il progettista software sia in grado di progettare una buona interfaccia copiandola dal suo cellulare o dal suo iPhone: così non produrrà mai innovazione. Il buon design è la risultante dell’applicazione consapevole di principi generali e ben noti, e dell’applicazione, ancora una volta consapevole, di un processo di progettazione pianificato per questo specifico scopo. Questo il progettista inesperto non lo sa fare, e non serve che, qualche giorno prima, il docente gli abbia spiegato, in astratto, come si fa. La difficoltà sta nel fatto che i principi del buon design sono molto generali, e per riconoscerli e applicarli nelle situazioni specifiche serve molta esperienza. Il principiante vedrà le difficoltà, ma non sarà in grado di individuarne le cause, cioè le decisioni di progetto sbagliate che, spesso, producono conseguenze negative che si manifestano molto più avanti.  Il bravo designer sa che una deroga a un principio importante produrrà inevitabilmente, prima o poi, dei problemi, ed eviterà di farla. Lo studente non riconosce queste trappole, per le quali serve un occhio allenato. In pratica è necessario che il docente, seguendo da vicino ogni singolo progetto, gli mostri di volta in volta le conseguenze delle sue scelte e lo aiuti a dipanare le situazioni più complicate, spiegandogli perché si sono verificate e mostrandogli che, con scelte diverse, l’usabilità del prodotto migliora.

In conclusione, un corso sull’ingegneria dell’usabilità deve dare uno spazio consistente ad attività di laboratorio, senza le quali non sarebbe di alcuna utilità. Ecco perché questo libro, da solo, non è sufficiente. I concetti illustrati devono essere “fatti vivere”  nella pratica della progettazione e della valutazione critica di specifici  sistemi.  La relativa snellezza di questo libro – al confronto con i testi più noti di Interazione Uomo Macchina, sempre molto corposi – è stata concepita proprio per lasciare spazio alla sperimentazione di laboratorio. In pratica, ciascun capitolo può essere svolto in una o due lezioni di due ore ciascuna, secondo il livello di approfondimento scelto, per un totale di circa 35-40 ore di lezione, corrispondenti a 4 o 5 crediti formativi. Questo lascia ampio spazio alle attività di progettazione (e, soprattutto, al confronto periodico con il docente) e, a seconda dell’ampiezza del corso, ad approfondimenti o complementi che potranno essere scelti a discrezione del docente.

°  °  °

Questo libro è pubblicato in due edizioni: una edizione a stampa, acquistabile in libreria, e una edizione elettronica. Per la edizione a stampa, tutti i diritti sono riservati, a norma di legge, all’editore. La edizione elettronica è resa disponibile, gratuitamente, sul Web con licenza Creative Commons “Attribuzione - Non commerciale - Condividi allo stesso modo - 2.5 Italia”:[2]

 

 

Questo significa, in pratica, che il testo può essere liberamente modificato, aggiungendo o eliminando delle parti per adattarlo a specifiche esigenze didattiche, a patto che il prodotto risultante sia reso disponibile gratuitamente con lo stesso tipo di licenza, e che ne sia citata la fonte e l’autore originale. La versione è elettronica è raggiungibile a partire dal sito dell’autore www.rpolillo.it o dell’editore www.apogeonline.com.

°  °  °

Nella stesura di questo libro ho usato diverso materiale pubblicato in miei precedenti lavori. In particolare, il libro è un ampliamento del mio capitolo sull’Introduzione all’Ingegneria dell’Usabilità, contenuto nel libro Human Computer Interaction – Fondamenti e prospettive, a cura di Alessandro Soro, pubblicato nel 2008 dalla casa editrice Polimetrica, anche accessibile gratuitamente  in rete. Questo testo, composto da una serie di rassegne monografiche a scopo didattico sui principali temi della HCI, può essere adottato come utile complemento al presente libro. Inoltre, l’appendice sugli state-chart è tratta dal mio precedente Plasmare il Web – Road map per siti di qualità, edizioni Apogeo, 2006. Da quest’ultimo testo, che adotta un approccio e una terminologia completamente coerenti con questo libro, sono state tratte anche diverse pagine del capitolo relativo alla stesura dei requisiti. 

Devo molto agli studenti dei miei corsi di Interazione Uomo Macchina e di Laboratorio Internet all’Università di Milano Bicocca. Non solo perché mi hanno costretto, negli anni, ad approfondire meglio i concetti esposti a lezione ma soprattutto perché mi hanno fornito, con i loro progetti - molte centinaia, ciascuno un piccolo caso di studio – un gran numero di esempi concreti di progettazione di sistemi interattivi. Ciò mi ha permesso di comprendere le difficoltà che un progettista alle prime armi incontra nella progettazione della user experience, e quindi di identificare le priorità dei vari argomenti dal punto di vista didattico. Diverse illustrazioni del libro sono tratte da questi progetti. In particolare, il prototipo delle Errore. L'origine riferimento non è stata trovata.è stato realizzato da Stefano Berbenni, Regina Fantucci e Debora Gerini. Quello della Figura 13 del Capitolo 9 da Marco Brenna, Domenico Pierro Domenico e Simone Songia. Il prototipo di Figura 10 del Capitolo 9 è stato realizzato da Simone Mandelli, Marco Pelucchi e Marianna Riceputi. Il prototipo di Errore. L'origine riferimento non è stata trovata. 9 del Capitolo 9, e le relative registrazioni video dei dei test di usabilità (Figure 4 e 5 del Capitolo 14) sono stati realizzati da Giuseppe Pogliani, Giuseppe Ragno e Giuseppe Maggi, e si riferiscono al prototipo. A tutti vanno i miei ringraziamenti.

I commenti e i suggerimenti di Luca Colombo, e la sua tesi di laurea magistrale sulla New Web Typography (da cui ho tratto diverse figure) mi sono stati molto utili per il capitolo sulla tipografia e la usabilità dei testi.

Devo molto anche all’amico Piero Schiavo Campo, che ha condiviso con me, per molti anni, il compito di esaminare e commentare i progetti di entrambi i corsi, durante le revisioni nelle esercitazioni e negli esami di fine corso. Il fatto che, in queste revisioni, i nostri commenti su uno stesso progetto fossero spesso del tutto differenti, mi ha costretto ad accettare il fatto che, anche in questa disciplina, le certezze assolute non esistono, e la qualità nasce sempre dalla discussione e dal confronto delle diverse opinioni.

Infine, sono molto grato a mia moglie Patricia Caprotti la quale, anche in questo libro, si è sobbarcata il compito di rivedere il testo per renderlo più scorrevole ed eliminare i termini gergali che il mondo dell’ingegneria del software produce a getto continuo.

Sarò molto grato a chi volesse ampliare o produrre versioni successive di questo testo.

Roberto Polillo

polillo@disco.unimib.it

www.rpolillo.it

1.  

<< Torna all'indice | Vai al capitolo 1 >>


[1] Nel caso specifico del corso citato, i prototipi vengono realizzati prima su carta e quindi con PowerPoint (o altro prodotto simile), che permette di definirne in modo piuttosto preciso l’aspetto visivo, e di ottenere rapidamente un prototipo navigabile, collegando fra loro le varie schede con link ipertestuali. Anche se questo strumento non è stato concepito per attività di  prototipazione, i risultati sono eccellenti, e sicuramente superiori rispetto all’uso di altri strumenti che, oltre a richiedere un addestramento specifico, risultano troppo “invasivi”, orientando in modo eccessivo le soluzioni di design (Flash, generatori di pagine Web, ecc.).

[2] Per il significato dei simboli, si veda http://creativecommons.org/licenses/by-nc-sa/2.5/it/. Il testo della licenza si trova in

http://creativecommons.org/licenses/by-nc-sa/2.5/it/legalcode.