Quella che per molti può sembrare una lotta al cattivo design, è per Nielsen una “battaglia per il buon design”: per cercare di rendere un’applicazione web usabile ci si può riferire alle sue 10 linee guida, generali ed adattabili ad ogni realtà digitale, anche conosciute come il “decalogo dell’usabilità”:
Coerenza: l’utente che naviga fra i documenti, non dovrebbe mai chiedersi se parole, immagini, pulsanti, situazioni o azioni diverse hanno lo stesso significato; “situazioni simili” devono essere coerenti nelle azioni, nella terminologia, nei colori, nello stile, nei caratteri e così via; la coerenza va applicata alla grafica (stessa presentazione grafica = stessa informazione), agli effetti (stesso comando = stesso effetto, stessa azione conseguente), alla presentazione (stessa informazione = stessa posizione).Ci vuole coerenza anche rispetto agli standard e alle convenzioni, ciò significa, che l’utente si aspetta di poter interagire con il nostro sistema allo stesso modo in cui fa con altri siti (ad es. quando si trova una frase sottolineata e, magari contrassegnata dal colore blu, si presume di avere a che fare con un link). La mancanza di coerenza porta ad una perdita di affidabilità e genera confusione.
Feedback: il feedback rappresenta l’informazione di ritorno in risposta a qualsiasi azione dell’utente sull’interfaccia ed ha lo scopo di rendere visibile all’utente lo stato corrente del sistema, in modo da evitare errori, incomprensioni o blocchi nell’interazione (ad es. quando si invia una form, il sistema dovrebbe dare il messaggio d’invio avvenuto, la comparsa di un indicatore d’avanzamento che indica il tempo necessario per eseguire un’operazione, emissione di un segnale sonoro che indica che si sta cercando di compiere un’azione non consentita ecc…). Importantissimi sono gli indicatori di “progress” per indicare la transazione in corso, poiché è stato appurato che già dopo un secondo l’utente avverte il ritardo del sistema nella risposta e, dopo 8 secondi il 50% di questi, abbandona il sito.
Uscite chiaramente indicate: il sistema non deve mai imprigionare l’utente in situazioni che non hanno via d’uscita visibili (ritorni alla pag. precedente, successiva, all’home page…), né limitare la sua libertà di movimento. L’utente deve avere la sensazione di avere tutto sotto controllo; deve poter prevedere gli effetti delle proprie azioni (es. avvertire delle dimensioni di un file prima di scaricarlo).
Prevenzione degli errori: è meglio evitare che un problema si presenti piuttosto che prevedere vari messaggi di errore, ma commettere degli errori nell’interazione con un prodotto è naturale. L’errore non è altro che un’azione specificata in modo incompleto o inesatto e, proprio perché gli errori sono sempre possibili, è importante che il sistema sia progettato in modo da diagnosticarli e facilitarne la correzione (es. fornire funzionalità d’annullamento delle operazioni, fornire una messaggistica efficace, evitare di presentare pagine senza opzioni di navigazione, rendere sempre disponibili le funzioni per uscire dal programma o per ritornare all’home page).
Messaggi d’errore semplici: in caso di errore i messaggi devono essere costruttivi, in altre parole orientare l’utente alla soluzione e non all’individuazione di colpe e deve essere data la possibilità di riscrivere solo la parte errata; fornire dunque anche funzionalità di ripristino delle condizioni di default.
Parlare il linguaggio dell’utente: il linguaggio utilizzato a livello d’interfaccia deve essere semplice e familiare per l’utente e rispecchiare i concetti e la terminologia a lui noti. Va evitato il più possibile un linguaggio tecnico od orientato al sistema, che utenti non esperti di informatica possono non comprendere (es. da evitare frasi come “il doc. è disponibile in formato .rtf” o “doc. zip trasferibile via ftp”). Rientrano in questo punto anche le icone e le metafore, forme per rappresentare concetti in forma grafica e simbolica, che se ben strutturate agevolano la comprensione, forse più delle parole.
Ridurre il carico di memoria per l’utente: è più facile riconoscere una cosa vedendola direttamente piuttosto che recuperarla dalla memoria, dunque nel definire gli strumenti in grado di agevolare la flessibilità e l’efficienza, va considerato che le esigenze degli utenti variano in relazione al loro livello d’esperienza rispetto al compito e alle tecnologie informatiche. Gli utenti non esperti, ad esempio, amano essere guidati passo dopo passo, mentre quelli più esperti, preferiscono utilizzare delle scorciatoie , delle quali anche utenti meno esperti, man mano che il loro livello di esperienza cresce, possono usufruire.
Scorciatoie: sarebbe utile quindi includere nel sistema anche scorciatoie come tasti o pulsanti che consentano una navigazione più rapida “accesskey” che permettono, con una combinazione di pulsanti, di passare direttamente in una determinata posizione della pagina; “facilities d’inserimento” ossia l’anticipazione del sistema nell’inserimento di un termine e così via.
Aspetto gradevole ed essenziale: le interfacce non dovrebbero contenere elementi irrilevanti o ridondanti poiché, ogni informazione superflua distrae dalla visibilità delle informazioni più importanti. Limitare la possibilità di scelta dell’utente perché, se in una pagina ci sono 50 pulsanti, esiste una possibilità su 50 che l’utente compia l’azione giusta per raggiungere il suo scopo.
Fornire help e manuali: normalmente un buon prodotto non dovrebbe aver bisogno di documentazione per essere utilizzato, però in certi casi può essere necessario fornire help e manuali. Nei casi in cui si ritiene necessario ciò, l’informazione va realizzata con l’obiettivo di garantire: facilità di consultazione; comprensibilità e brevità dei testi; orientamento dell’attività dell’utente; efficacia nella risoluzione del problema.