A seconda del tipo di problema possiamo impostare diverse interfacce utente.
I paradigmi più seguiti sono gli interpreti di righe di comando, i menù a tutto schermo, i menù pull-down, i menù stile Lotus e le combinazioni di tasti funzione e tasti control.
Se i comandi che devono essere svolti sono molti, con molte possibili varianti e parametri, linterfaccia più usata è quella dellinterprete di command-line. In questo modo, in pratica con un piccolo linguaggio specializzato, è possibile gestire migliaia di funzioni, anche se il tempo necessario a padroneggiare il sistema è molto lungo.
Allestremo opposto troviamo i menù a tutto schermo, che permettono di accedere al massimo a una decina di opzioni senza alcun parametro. Questo schema è così semplice da essere normalmente utilizzato in sistemi che devono essere utilizzati anche senza alcuna guida da chiunque, come per esempio uno sportello Bancomat. Naturalmente il prezzo che si paga è di poter rendere disponibili solo pochissime opzioni.
I pro e contro di questi vari stili sono riassunti nello specchietto.
LIBM ha stabilito delle linee guida per linterfaccia utente, la Common User Access, che entra nellarchitettura più generale della SAA.
Queste linee stabiliscono dei criteri comuni di interfaccia che devono avere tutti i programmi che vogliono essere considerati conformi alla System Application Architecture.
Lo scopo è di fornire agli utenti una interfaccia comune e consistente per tutti i programmi, in modo tale che i tempi di apprendimento di ogni pacchetto siano limitati. Lideale sarebbe una conformità tale che ogni nuovo programma sia praticamente già usabile anche da chi non lo ha mai visto.
| Sistema di Interazione |
Pro |
Contro |
| Inetrprete di command line |
Molto efficente Peremette laccesso a mioltissime funzioni |
Difficile da usare Facile da dimenticare |
| Menu full-screen |
Semplice da usare Semplice da imparare Le opzioni sono sempre visibili |
Lento Permette laccesso a un numero limitato di funzioni |
| Menu pull-down |
I comandi sono raggruppati per logica Permette la costruzione di applicazioni a singolo schermo |
Obbliga allesplorazione Permette laccesso a non molte funzioni |
| Tasti Funzione |
Molto rapido |
Le opzioni non sono sempre visibili Facile da dimenticare |
Più che entrare nei dettagli delle regole CUA, vediamo delle linee guida che portano a programmi di semplice utilizzo.
Gli obiettivi principali della CUA sono due: far si che gli utenti siano sicuri del risultato delle loro azioni e far loro controllare il flusso degli eventi.
Per far si che lutente sia sicuro di ciò che ha fatto bisogna che lapplicazione risponda ad ogni azione in modo consistente e affidabile.
Per fare questo conviene:
Usare metafore: cercare delle attività
che assomiglino a quelle svolte dallapplicazione e dare lo
stesso tipo di modello. Per esempio "buttare nel
cestino" per cancellare un file.
Essere consistenti: cioè far si che
lapplicazione si comporti in modo simile per operazioni
simili. Se bisogna scegliere da una serie di comandi, farlo o
sempre con un menù o sempre con una serie di icone, non
interscambiando i modi a seconda del momento. Per esempio, se la
scelta di un file in una directory deve essere fatta in più
punti di un programma, bisogna farlo sempre allo stesso modo, o
sempre con pick-list o sempre con linput controllato di una
stringa.
Evitare le modalità: i programmi possono
entrare in modalità particolari (si pensi ad un programma di
videoscrittura: insert o overwrite). Conviene sempre evitare le
modalità per operazioni più complesse, o quantomeno segnalare
con un cambiamento del cursore che si è entrati in una serie di
operazioni particolari.
Per far si che lutente possa sempre controllare la sequenza delle operazioni i suggerimenti sono:
Visualizzare la lista delle opzioni:
quando bisogna scegliere tra una serie di possibilità conviene
creare delle liste visuali, o con pick-list o con una serie di
icone, in modo che lutente abbia sottomano tutte le
possibilità che vengono offerte da sistema.
Dare dei segnali di risposta: se
lutente riceve costantemente un feedback dal programma ad
ogni azione che viene intrapresa, sia con messaggi video o
sonori, prende confidenza anche con operazioni complesse
costruendole passo passo con i vari comandi di cui si compongono.
Lanciare una lunga serie di opzioni o menù senza capire cosa sta
succedendo o se almeno tutto va bene, scoraggia anche gli utenti
più curiosi.
Incoraggiare lesplorazione: evitare
la sindrome da foglietto giallo applicato al terminale. I
programmi devono essere abbastanza semplici da invitare chiunque
a percorrere le strade "nuove", a scoprire le
funzionalità mai usate prima. Questa spesso è una via per
ridurre i costi delladdestramento! Bisogna a questo fine
includere sempre una opzione di Undo per permettere di tornare ad
un punto noto senza causare particolari danni.
Le applicazioni che permettono allutente di passeggiare qua e la devono essere particolarmente robuste, non devono cioè mai distruggere i dati su cui lutente sta lavorando o uscire al sistema senza preavviso.