Interfaccia E’ il punto di incontro tra l’uomo e la macchina e ha come obbiettivo principale quello di garantire un’efficace comunicazione e controllo della macchina da parte dell’uomo.

Need-finding Identificare le necessità degli utenti e le lacune di alcuni sistemi, per trovare delle opportunità di miglioramento. E’ importante perché permette ai progettisti di rispondere a domande importanti come “Chi sono gli utenti?” o “In quale contesto lo usano?”

Metodi need-finding

  • Osservazione: si osserva il comportamento degli utenti in modo naturale e senza interferenze. L’obietivo è quello di raccogliere dati che influenzano i redesign dell’interfaccia, imparando il “linguaggio” dell’utente e del suo ambiente
  • Diario: utilizzato quando non è possibile osservare direttamente gli utenti per lunghi periodi di tempo. Si chiede all’utente di tenere traccia delle sue attivitĂ  annotando le azioni rilevanti.
  • Interviste: possono essere condotte faccia a faccia o in gruppo. Permettono di ottenere conoscenze piĂą profonde e dettagliate, ma richiedono molto tempo. Si deve creare un ambiente confortevole per l’utente e introdurre chiaramente l’obiettivo dell’intervista. E’ preferibile porre domande aperte e concrete, focalizzandosi su situazioni reali e ben conosciute dall’intervistato.
  • Sondaggi: tendono a definire una visone piĂą superficiale rispetto a metodi come interviste o le osservazioni. E’ fondamentale definire l’obiettivo del sondaggio prima di progettare le domande, in modo da raccogliere dati rilevanti. Non prevedono domande di approfondimento e possono generare dati distorti. Un buon sondaggio deve essere diviso in sezioni dedicate ed è fondamentale chiedere all’utente domande di background (etĂ , livello di istruzione, ecc..)
  • Inchiesta contestuale: combina l’osservazione con l’intervista, permettendo di osservare gli utenti nel loro ambiente naturale mentre descrivono ciò che stanno facendo.

Tecniche principali di need-finding

  • Interviste specifiche:
    • Lead user: utenti avanzati
    • Extreme user: spingono ai loro limiti i sistemi, rivelando problemi e necessitĂ  che normalmente sarebbero difficili da trovare
    • Interviste con esperti Oltre alle classiche interviste, esistono altri formati utili per raccogliere informazioni:
    • History interviews
    • Process mapping: richiedono all’intervistato di descrivere l’intero processo per compiere un’azione
    • Laddering: una tecnica basata sulla ripetizione della domanda ”PerchĂ©?” per approfondire i motivi alla base di un comportamento
    • Cultural context: interviste non strutturate per comprendere il contesto culturale dell’utente
    • Intercepts: rapide interviste che pongono una singola domanda per raccogliere dati immediati
  • Questionari: si tratta di un insieme di domande uguali per tutti, che può essere analizzato in modo rigoroso. Servono per raccogliere informazioni da un ampio numero di utenti
  • Diario: si utilizza per raccogliere informazioni su attivitĂ  che si verificano sporadicamente o per studi longitudinali
  • Pager studies: chiedono agli utenti di interrompere le loro attivitĂ  quotidiane in determinati momenti per annotare le loro esperienze
  • Camera studies: negli studi con videocamere, agli utenti viene fornita una videocamera per riprendere le loro attivitĂ 

Task analysis E’ un metodo di analisi usato per comprendere come gli utenti eseguono determinate attività, con l’obiettivo di progettare sistemi interattivi che rispondano efficientemente ai loro bisogni. Serve a rendere espliciti i bisogni degli utenti e a rappresentare i risultati delle analisi. I bisogni vengono tradotti in obiettivi concreti, che a loro volta vengono trasformati in azioni. E’ lo studio di come le persone svolgono le loro attività. Gli obiettivi principali sono:

  • Cosa fanno
  • Quali strumenti usano
  • Quanto bene riescono a completare l’attivitĂ 

Attraverso il task analysis si ottengono informazioni dettagliate su cosa gli utenti cercano di ottenere, come eseguono i task e quali esperienze personali, sociali e culturali influenzano il loro lavoro.

Personas Rappresentano modelli astratti di utenti reali, basati su dati concreti e vengono create per comprendere meglio le esigenze e i comportamenti degli utenti durante il processo di design.

Storyboards Sono una rappresentazione grafica che mostra come una persona può portare a termine un task attraverso l’interazione con un sistema o un’interfaccia. La loro natura “fumettistica” rende il processo immediato, permettendo ai progettisti di concentrarsi sul flusso del task, piuttosto che sui dettagli tecnici o visivi dell’interfaccia.

  1. Illustrazione di un obiettivo (cosa l’utente cerca di ottenere con il task rappresentato)
  2. Mostrare come il task si sviluppa (come l’utente interagisce con il sistema)
  3. Esito finale (come l’utente raggiunge il proprio obiettivo)

Prototyping E’ un’opportunità per esplorare e testare diverse soluzioni, valutare l’usabilità dell’interfaccia e raccogliere feedback da parte degli utenti prima di implementare il sistema finale.

Prototipo E’ un modello di un sistema interattivo che simula o anima alcuni aspetti o funzionalità del sistema finale, ma non tutti. Può essere utilizzato per testare i concetti e le idee in un ambiente controllato e per raccogliere feedback prima della fase di sviluppo completa.

Approcci al prototyping

  • Throw away: il prototipo viene creato per esplorare un’idea e una volta ottenuto le informazioni necessarie, viene scartato
  • Incrementale: le varie funzioni vengono aggiunte una alla volta al prototipo permettendo di testare l’interfaccia in modo progressivo
  • Evolutivo: ogni prototipo si basa su quello precedente, migliorando gradualmente le funzionalitĂ  e il design

Hill climbing Miglioramento continuo del progetto in cui ogni iterazione del prototipo cerca di superare i difetti individuati nella versione precedente.

Low fidelity prototypes Utilizzati nelle prime fasi del processo di progettazione. Sono spesso realizzati con fogli di carta utilizzati per rappresentare le interfacce.

Paper prototype Un’interfaccia disegnata a mano simula l’aspetto visivo di un’app. Le diverse schermate e gli elementi interattivi possono essere rappresentati da pezzi di carta che vengono posizionati e manipolati manualmente, simulando un’interazione reale.

Medium fidelity prototypes Sono utili per simulare l’interazione dell’utente con il sistema, testando la navigazione tra le schermate e il flusso in generale senza concentrarsi su aspetti grafici o estetici. Vengono realizzati tramite software interattivi che simulano l’aspetto di un’interfaccia utente e accettano alcuni input e rispondono agli utenti passando da una schermata all’altra. La grafica nei prototipi a media fedeltà è stilizzata e spesso in bianco e nero o in scala di grigi.

High fidelity prototypes Rappresentano la versione più avanzata dell’interfaccia. Assomigliano in tutto e per tutto all prodotto finale. L’unica cosa che contraddistingue questo prototipo dal prodotto finale sta nel fatto che prototipo è progettato per simulare le interazioni, ma non sempre include l’intero backend.

Metodo Wizard of Oz Consente di testare un’applicazione che sembra completa, con interfaccia e algoritmi finalizzati, ma senza dover scrivere il codice necessario. Un essere umano simula il comportamento del sistema, controllando l’interfaccia dietro le quinte, come un “mago” nascosto dietro il sipario. Per implementare questa tecnica è necessario scegliere le task da simulare, creando mock-up dell’interfaccia che consentono al “mago” di intervenire nei punti critici.

Metodi di osservazione Sono tecniche impiegate per valutare l’usabilità e la funzionalità di un sistema interattivo, testando direttamente il modo in cui gli utenti reali utilizzano l’interfaccia. Gli obiettivi sono:

  • verificare l’efficacia delle funzionalitĂ  del sistema
  • aiutare l’impatto dell’interfaccia dell’utente
  • identificare eventuali problemi specifici di usabilitĂ 

Questi obiettivi aiutano a comprendere se il sistema risponde ai bisogni dell’utente e se ci sono aree da migliorare.

Tipi di metodi di osservazione

  • Think aloud: l’utente è osservato mentre svolge i task e viene invitato a descrivere verbalmente cosa sta facendo e perchĂ©
  • Cooperative evaluation: L’utente e il valutatore collaborano e posso farsi domande a vicenda
  • Protocol analysis: implica la registrazione delle sessioni di valutazione per consentire un’analisi approfondita successiva. Possono includere l’uso di carta e penna, audio, video/vlog su computer
  • post-tal walkthroughs: la registrazione della sessione viene riprodotta per il partecipante, che può commentare e spiegare le proprie azioni

Esperimenti Permettono di condurre test in condizioni controllate, con l’obiettivo di valutare l’effetto di una o più variabili sulle prestazioni degli utenti. Il valutatore stabilisce delle ipotesi da verificare e sceglie le variabili da modificare o misurare, suddividendo i partecipanti in gruppi che sperimentano condizioni diverse. Per progettare un esperimento efficace, ci sono alcuni fattori chiave da considerare:

  • Partecipanti
  • Variabili: possono essere indipendenti (interfaccia, numero di elementi in un menĂą,..) o dipendenti (misure raccolte durante l’esperimento, come il tempo di completamento di una task)
  • Ipotesi: possono essere alternative (afferma che la modifica di una variabile indipendente causi un cambiamento nella variabile dipendente) o nulle (afferma che non ci sarĂ  alcun cambiamento nelle variabili dipendenti a seguito del cambiamento di una variabile indipendente)

Dopo aver definito le ipotesi, variabili e partecipanti, il passo successivo è selezionare i metodo sperimentale. Ci sono due approcci:

  • Between subjects: ogni partecipante sperimenta solo una condizione
  • Withing subjects: ogni partecipante sperimenta tutte le condizioni, eseguendo i test piĂą volte

Heuristic evaluation E’ una tecnica in cui gli esperti valutano un’inetrfaccia in base a una serie di euristiche (principi generali e regole pratiche per il design dell’usalbilità).

  1. VisibilitĂ  dello stato del sistema
  2. Corrispondenza tra il sistema e il mondo reale
  3. LibertĂ  e controllo da parte degli utenti
  4. Coerenza e standard
  5. Prevenzione degli errori
  6. Riconoscere piuttosto che ricordare
  7. Flessibilità ed efficienza d’uso
  8. Design minimalista ed estetico
  9. Aiutare gli utenti a riconoscere, diagnosticare e correggere gli errori
  10. Aiuto/guida e documentazione

Sviluppo di sistemi interattivi Nel mondo del design di sistemi interattivi, la metodologia utilizzata è cruciale per determinare il successo del prodotto finale. Esistono vari modelli di gestione dei progetti, i principali sono:

  • Modello waterfall
  • Metodo agile

Modello waterfall Ogni fase deve essere scompletata prima che la successiva possa iniziare, creando una struttura rigida per lo sviluppo del progetto. Le fasi principali sono:

  • Analisi del progetto
  • Progettazione
  • Implementazione
  • Testing
  • Manutenzione

Un vantaggio del modello waterfall è la sua struttura chiara. Infatti, le fasi sequenziali e ben definite lo rendono ideale per progetti in cui i requisiti sono stabili e non prevedono cambiamenti significativi.

Metodo agile Introdotto per la necessitĂ  di maggiore flessibilitĂ  nel processo di sviluppo. Questo metodo prevede la suddivisione del progetto in cicli iterativi e incrementali chiamati sprint. Ogni sprint rappresenta una breve fase di sviluppo in cui vengono progettate, sviluppate e testate funzionalitĂ  specifiche. Alla fine di ogni sprint, il team verifica i progressi fatti, raccoglie feedback e adatta il progetto alle richieste emergenti. Le caratteristiche di questo metodo sono:

  • Iterazione continua
  • Collaborazione costante con gli utenti
  • FlessibilitĂ  e adattabilitĂ 

Interfaccia modale Un’interfaccia si definisce modale quando il significato di un gesto cambia a seconda dello stato attuale del sistema.

Content Rappresenta l’insieme delle informazioni presenti nel sistema, significative e utili per l’utente

GID (graphic input device) E’ un dispositivo grafico di input (come il mouse) che permette di comunicare la posizione del cursore

GID button E’ il tasto principale del GID utilizzato per attivare o selezionare elementi

Click, Double-Click, Drag e Swipe Questi termini indicano azioni di interazione comune

Gesture Rappresenta una sequenza di azioni completata automaticamente una volta avviata. Se un’interfaccia interpreta un gesto sempre nello stesso modo, allora si trova in un unico modo. Ma, se l’interfaccia del gesto cambia a seconda dello stato del sistema (per esempio il tasto “invio” potrebbe servire per andare a capo in un documento o per confermare un comando in una finestra di dialogo) ci troviamo di fronte a un’interfaccia in modalità variabile.

Errori di modo Sono errori causati da una valutazione sbagliata dello stato del sistema e possono essere ridotti seguendo alcuni principi:

  • Evitare i modi quando possibile
  • Segnalare chiaramente i modi presenti
  • Distinguere i comandi in base ai modi: in modo tale che un comando emesso erratamente non produca effetti indesiderati

Seconda definizione di interfaccia modale Un’interfaccia è modale se:

  • lo stato corrente dell’interfaccia non è il luogo dell’attenzione dell’utente
  • se rispetto a un gesto può rispondere a quel gesto in diversi modi a seconda dello stato del sistema

Noun-verb e verb-noun

  • Noun-verb: si seleziona prima l’oggetto e poi si decide l’azione da eseguire su di esso
  • Verb-noun: si decide prima l’azione e poi l’oggetto

Affordance e signifiers

  • Affordance: la forma, la dimensione e l’aspetto di un oggetto suggeriscono implicitamente quali azioni l’utente può compiere. Dipende sia dall’oggetto che dall’utente. Se l’utente possiede le capacitĂ  percettive per comprendere come usare l’oggetto, allora l’affordance può guidarlo verso l’azione corretta
  • Signifiers: sono indicatori percettibili che comunicano all’utente quale comportamento adottare con un oggetto

Productivity application App pensate per supportare compiti che richiedono organizzazione e gestione di informazioni dettagliate. Un esempio è Google Photo che organizza e gestisce foto e video

Utility application Servono a compiere comiti semplici che richiedono un minimo intervento dell’utente. Il loro scopo principale è fornire informazioni essenziali su un argomento specifico, come nel caso delle applicazioni delle previsioni meteo

Immersive application Sono app che forniscono un’esperienza immersiva, progettata per trattenere l’utente in un ambiente interattivo unico. Queste app, tipiche dei videogiochi, offrono ambienti ricchi di dettagli e occupano l’intero schermo del dispositivo, permettendo all’utente di esplorare e interagire con il contenuto in modo approfondito