CAPITOLO TERZO

Il computer



Input devices
Input per disabili
Output devices
Stili di interazione




Lo scopo di questo capitolo è di fornire una descrizione del sistema computerizzato in modo da introdurre alcuni concetti chiave che determinano l'interazione.

Input devices


Per interagire con il sistema, gli utenti devono essere capaci di comunicare le loro intenzioni in modo tale che la macchina le possa interpretare. Si può definire "input device" uno strumento che, insieme ad un software adeguato, trasforma le informazioni fornite dall'utente in dati che il computer può processare. Uno degli scopi chiave nel selezionare un "input device" e nel decidere come esso sarà usato per controllare gli eventi nel sistema, è aiutare gli utenti a svolgere il proprio lavoro in modo sicuro, effettivo ed efficiente e, se possibile, anche piacevole. La scelta di un particolare strumento di input dovrebbe contribuire quanto più possibile all'usabilità del sistema. In generale gli strumenti di input dovrebbero avere le seguenti caratteristiche:
a) correlarsi alle caratteristiche fisiologiche e psicologiche degli utenti, alla loro formazione e al loro grado di expertise. Per esempio, gli adulti anziani potrebbero essere affetti da artrite e quindi inpossibilitati nello scrivere a macchina; un utente inesperto potrebbe invece avere problemi con una tastiera che non conosce.
b) Essere appropriato per i compiti che tramite esso devono essere eseguiti. Per esempio, per disegnare con il computer è necessario uno strumento di input che permetta il movimento continuo; selezionare invece una opzione da una lista richiede invece un movimento discreto.
c) Essere adatto con il lavoro e con l'ambiente; per esempio uno strumento che accetta il parlato potrebbe essere utile in un ambiente dove non c'è una superficie su cui poggiare una tastiera, ma sarebbe inopportuno in un ambiente rumoroso.
Gli strumenti di input non solo devono essere facili da utilizzare ed efficaci nel trasmettere i dati al sistema, ma devono anche fornire un sistema appropriato di feed-back (Norman, 1988) per guidare, assicurare, informare e, se necessario, correggere gli errori dell'utente. Questo feed-back può avere numerose forme. Può essere un display visivo su uno schermo, un testo che appare ad intermittenza, una icona che si espande nella finestra dello schermo, un cursore che si muove lungo lo schermo, un cambio completo nell'interfaccia. Può essere uditivo: un allarme, un commento parlato o qualche altro stimolo uditivo come un suono o una musica. Può essere tattile: il ritorno di forza di un bottone premuto, un cambiamento nella pressione tattile, come avviene quando si usa un particolare strumento di input detto "joystick". In molti casi il feed-back può essere una combinazione di risposte visive, uditive e tattili.

La tastiera
Il metodo più comune per veicolare informazioni al sistema è attraverso la tastiera. Definita in modo generale, la tastiera è un insieme di bottoni "on-off", che sono usati sia in combinazione che separatamente. Questo strumento è un "discrete entry device" in quanto l'interazione con i bottoni non è continua. Per esempio, per inserire una parola in un testo, l'utente preme i bottoni uno dopo l'altro. Durante questa operazione i bottoni si trovano alternativamente o sulla posizione "on" o sulla posizione "off". Altri strumenti sono invece definiti come "continuous entry devices"; per esempio le penne con la tavoletta digitalizzata, il joystick mobile, il mouse rotondo (rollerballs) in quanto includono un contatto continuo dell'utente con tali strumenti.

Figura 5. Tastiera e mouse.

Esistono diversi tipi di tastiera (ASCII, che ha la versione Querty e Dvorac; la tastiera numerica, le chiavi cursori, le tastiere MIDI). Questo può provocare confusione nell'utente in quanto nelle diverse tastiere non sempre le chiavi sono messe nella stessa posizione. L'alterare l'arrangiamento delle chiavi influenza la velocità e l'accuratezza dell'utente. Infatti numerosi studi hanno mostrato che l'attività del battere a macchina include una grande capacità di anticipare le chiavi che devono essere battute. Questo ovviamente vuol dire che le dita devono essere disposte e pronte sulle chiavi che dovranno essere battute. L'atto del battere a macchina non è un atto sequenziale. In realtà il dattilografo processa il testo in un gruppo significativo di parole, dopodichè lo batte come un unico gruppo di parole. Per testi alfabetici il gruppo è di tre parole, per testi numerici tre o quattro caratteri.

Strumenti di puntamento
Gli strumenti di puntamento sono quelli che possono essere usati per specificare un punto o una traccia in uno spazio unidimensionale, bidimensionale o tridimensionale. Esempi di strumenti di puntamento sono il joystick, il trackball, e il mouse, la pen tablet, il data glove, ecc. Gli strumenti di puntamento sono definiti "continuous entry devices", sebbene uno strumento come il mouse utilizzi movimenti continui e discreti (attraverso il bottone che il mouse ha).
Il joystick opera in due direzioni ed è spesso utilizzato per compiti in cui devono essere indicate la direzione e la velocità, piuttosto che una locazione da puntare. Il track ball (come si vede nella figura 6) è una pallina, fissata ad una base, che l'utente può muovere in ogni direzione. Il mouse è simile al track ball ma non è fisso e l'utente lo può muovere su una superficie piatta. Alcune chiavi particolari con frecce, disposte di solito sulla destra della tastiera, possono essere utilizzate come strumenti di puntamento, per esempio per ritrovare una parola in un testo e modificarlo, oppure per posizionarsi in un posto dello schermo.

Figura 6. Track ball.

Mouse
Il mouse è uno dei più comuni strumenti di puntamento per le interfacce grafiche. Può avere diverse forme ed essere equipaggiato con uno, due o tre bottoni, che sono usati per compiti di posizionamento e selezionamento. Il mouse può lavorare sia elettronicamente che dal punto di vista ottico. Le azioni che può compiere il mouse sono le seguenti:
a) sullo schermo sono posizionati alcuni bottoni come OK o CANCEL. Muovendo il mouse verso questi bottoni e cliccando il suo bottone, parte l'azione desiderata. Attraverso il mouse si può anche cambiare la visualizzazione (mode change). Questa azione può essere eseguita cliccando su particolari bottoni o icone, ma anche su finestre per selezionarle. La navigazione è l'uso più naturale del mouse, per la quale è stato costruito. Attraverso il mouse si può anche selezionare un item, tenere premuto il bottone del mouse e trasportare l'oggetto selezionato in un altro posto dello schermo (dragging). L'effetto di questa azione permette di muovere e/o copiare un item in una nuova sede.

Pen tablet
La penna digitale è un particolare strumento, di solito associato con una tavoletta che digitalizza quanto scritto dall'utente, siano essi disegni o testi (vedi figura 7).

Figura 7. Pen tablet.

Uno dei problemi fondamentali è stabilire la condizione di scrittura (inking condition). Normalmente, quando scriviamo con penne tradizionali, il processo di scrittura (e la conseguente fuoriscita dell'inchiostro) comincia quando la punta della penna poggia sul foglio. Con la penna elettronica, si può fare una distinzione tra due dimensioni: il peso della punta della penna sulla superficie di scrittura, e la forza esercitata dalla penna sul piano, dopo che il contatto è stato fatto. Un altro metodo per misurare la forza è quello di utilizzare dei transduttori posti sotto la superficie di scrittura, oppure posizionati nella stessa punta della penna. Il problema della rilevazione della posizione di scrittura è stato risolto attraverso un particolare strumento detto "Electronic Paper" (EP), che consiste di un display integrato a cristalli liquidi, e di un digitalizzatore. Altri problemi relativi alla pen tablet si riferiscono al riconoscimento della scrittura (hand-writing recognition), che è una modalità di input che viene considerata nelle interfacce multimodali.

Touch screen
Un altro importante strumento per inviare informazioni al computer da parte dell'utente è il cosidetto 'touch screen", ovvero uno schermo che è stato reso sensibile alle pressioni esterne. In questo senso il computer diviene uno strumento bidirezionale in quanto riceve informazioni dall'utente e visualizza l'output del sistema. Il vantaggio del touch screen è che non richiede alcuna particolare istruzione per apprendere il suo funzionamento, non richiede uno spazio ulteriore di lavoro, non ha parti mobili da gestire. Il touch screen può fornire una interazione diretta. Gli svantaggi sono: la mancanza di precisione, un alto tasso di errori, una enorme fatica per le braccia dell'uomo e il fatto che le dita possono oscurare alcuni dettagli della zona puntata.

Figura 8. Touch screen.

Image input: camera
Questo strumento può, in dipendenza della velocità dei frame utilizzati, fornire immagini fisse o in movimento al computer. Poichè il numero di dati, provenienti da tale strumento di acquisizione è molto grande, attualmente sono possibili o un "display live" sulla finestra dello schermo, oppure un pacchetto di dati compressi che saranno visualizzati in differita, come una registrazione. Per avere campioni di dati immagini più avanzati, è necessario che il computer sia dotato di una grande capacità di memoria e di un potente processore, che attualmente comunque sono entrambi disponibili. In queste ultime condizioni è possibile utilizzare la telecamera per leggere le labbra (lip- reading) e per fare esperimenti con il videofono.
Inoltre, i parametri della telecamera come il fuoco, lo zoom, il diaframma, ecc., possono essere controllati remotamente dal computer.

Sound input: microfono
Il microfono e la telecamera hanno in comune che la registrazione e lo stivaggio, così come la ripetizione attraverso il play-back dei dati, devono essere stivati nella memoria del computer. In ogni caso, i dati audio hanno una richiesta più bassa di memoria rispetto ai dati video. Il microfono serve per inserire i dati (soprattutto parlato) che riguardano le iterfacce multimodali che utilizzano appunto il riconoscimento del parlato. Alcune applicazioni sono comunque controllate proprio dai riconoscitori di parlato. Quando non sono utilizzati tali riconoscitori, i dati devono essere processati comunque atttraverso dei filtri. Diversi metodi sono attualmente capaci di attuare il riconoscimento del parlato in tempo reale. Soprattutto le Hidden Markov Model (HMM), un tipo particolare di rete neurale.

3D input devices
Di solito, gli strumenti di input tridimensionali vengono utilizzati per applicazioni speciali (soprattutto di realtà virtuale). I principali strumenti di questo tipo sono:
Spaceball: uno strumento che fornisce tre traslazioni e tre gradi di libertà per effettuare la rotazione. Viene di solito utilizzato nei CAD (Computer Aided Design) e nelle applicazioni della robotica. Esempi significativi di tali strumenti sono le applicazioni SPACEMASTER e SPACEMOUSE.
Data glove: il data glove è un guanto che è equipaggiato con sensori di tracce. I movimenti (non limitati) della mano dell'utente in uno spazio tridimensionale sono rilevati da questi sensori e usati per controllare l'applicazione. Il data glove è molto spesso utilizzato in applicazioni di realtà virtuale. Esso può essere equipaggiato con sensori che rilevano il feed-back (in particolare il ritorno di forza).
Tracker: il tracker è molto simile al data glove, ma invece di essere indossato, deve essere tenuto in mano. Tale strumento non ha però alcun sensore per il feed-back. Il più popolare tracker è il Polhemus Tracker che è utilizzato per applicazioni di realtà virtuale. Sia il data glove che il tracker, sono spesso utilizzati in combinazione con il display che si mette in testa come un elmetto o "head-mounted display" (HMDs).
Joy-stick: è principalmente usato nell'industria dell'intrattenimento e soprattutto nelle applicazioni che riguardano i video-giochi. Il joy-stick è utilizzato per controllare i movimenti del cursore in ambienti bidimensionali e di solito è equipaggiato con uno o più bottoni.
Eyetracker: questo strumento è controllato dal movimento degli occhi dell'utente attraverso dei sensori a luce infrarossa. E' possibile per l'utente controllare il cursore sul display semplicemente guardando nella direzione desiderata.

Input per disabili


I computer possono permettere a persone disabili di comunicare con altri. Per esempio i sintetizzatori di parlato, i sistemi di scrittura e altre tecnologie possono essere attuate attraverso una tastiera o particolari strumenti di input per persone fortemente disabili. Questo tipo di tecnologia è detta "assistiva". Attualmente, in tutti i paesi civilizzati, nei luoghi di lavoro automatizzati, esistono particolari apparecchiature proprio per disabili. Si possono addirittura progettare speciali strumenti per particolari necessità. Alcuni strumenti di input utilizzano i movimenti degli occhi e del capo, quando gli utenti hanno le mani paralizzate o in qualche modo occupate. In questo caso, il computer presenta un menu che l'utente fissa e sceglie la voce che gli interessa facendo un suono con la bocca, o premendo un pedale con un piede. Esistono sostanzialmente due modi per registrare i movimenti degli occhi e convertirli in dati di input. Il primo modo è elettrofisiologico e registra i movimenti dei muscoli che controllano l'occhio. Il secondo usa la riflessione fotoelettrica per registrare i movimenti nella luce riflessa dall'occhio. Uno dei più importanti problemi con la prima modalità, che attualmente è diventata obsoleta, è che gli elettrodi devono essere ben fissati sulla pelle per individuare i movimenti dei muscoli e in ogni caso tali elettrodi sono soggetti anche ai movimenti di tutto il corpo. Con la seconda tecnica, ad un utente viene richiesto di tracciare un oggetto sulla schermo muovendo i suoi occhi per mantenere una immagine stabile sulla parte centrale della retina, dove la visione è più acuta. Questo non è sempre facile da ottenere in quanto gli occhi hanno una estrema mobilità. Anche movimenti del corpo possono essere un problema con questa seconda tecnica, che è stata ampiamente sperimentata con piloti di caccia militari in congiunzione con elmetti che contengono strumenti che individuano l'orientamento dei movimenti della testa.
Altri strumenti di input, come il riconoscimento della scrittura ("handwriting recognition" e "pen-based system") possono diventare molto importanti per svolgere alcuni compiti particolari, per particolari tipi di utenti e da utilizzare in particolari situazioni o luoghi in cui non sono disponibili altri strumenti. Attualmente tutti questi strumenti sono in fase di implementazione e di sperimentazione; si stanno studiando soprattuto i loro limiti per arrivare a delle soluzioni soddisfacenti.
Anche i sistemi di riconoscimento del parlato (di cui si parlerà ampiamente nel capitolo dedicato a questo argomento) si adattano molto bene per svolgere alcuni compiti e per particolari situazioni. Ma per un loro uso effettivo e diffuso è necessario capire le loro potenzialità e le debolezze. Il riconoscimento del parlato sta diventando comunque molto importante.

Output devices


Con il termine "modalità di output" si intendono gli strumenti (devices) e le modalità (canali di comunicazione) che sono usati dal computer per comunicare con gli umani. Poichè i canali di comunicazione del computer sono stati organizzati sulle modalità di input degli umani, vengono definiti "output devices" quegli strumenti che convertono l'informazione che proviene da una rappresentazione elettronica interna di un sistema computerizzato in una forma percettibile da un essere umano. Quest'ultima viene detta output. Fino a poco tempo fa, quasi la maggior parte dei computer possedevano output visivi e bidimensionali. Tali forme percettive erano di solito presentate su uno schermo. Sicuramente queste forme di output rimarranno le più comuni e le più usate. Anche se, recentemente, nuove possibilità nel maneggiare gli output, stanno emergendo.
Le interfacce grafiche (Graphical User Interface o GUI) stanno diventando molto usate. La visione, le immagini mobili, il suono e in alcuni casi gli output tattili sono stati combinati in sistemi ipermediali e in casi estremi, in sistemi di realtà virtuale. Varie forme di output tridimensionali sono attualmente disponibili per specifiche applicazioni. L'uso di output sonori e parlati stanno diventando più comuni, con l'utilizzo di campioni di parlato sintetizzato o campioni sonori. Forme specializzate di output che stimolano il senso del tatto sono anche disponibili. Molti di questi strumenti sono ancora sperimentali o in uso solo per particolari categorie di persone come i disabili.

Visual output
Il display visivo di testi o dati è la forma più comune di output. Le necessità di base per la progettazione è che le informazioni visualizzate siano leggibili e che sia facile per un utente localizzarle e processarle, in riferimento alle leggi sulla percezione. Infatti, tre sono gli aspetti più importanti correlati all'utente: gli aspetti fisici della percezione (la lucentezza, la combinazione dei colori e la selezione dei colori rispetto ai soggetti daltonici); il modo in cui l'informazione è visualizzata (per esempio la grandezza di un testo, l'ordine degli item in un menu e il modo in cui le icone sono progettate) e il modo in cui le informazioni sono utilizzate. L'utente deve sapere cosa sta accadendo nel computer durante l'interazione. In particolare, un sistema deve fornire all'utente risposte significative sull'andamento dell'interazione. Un sistema deve essere capace di dire all'utente dove si trova, se in un documento o in un processo; indicargli come progredire nello svolgimento di un processo; evidenziare che è il turno dell'utente nel fornire input al sistema; confermare che l'input è stato ricevuto; dire all'utente che l'input ricevuto non è processabile. Se il feed-back non è tempestivo, corretto o espresso chiaramente l'utente può pensare che sta procedendo in modo sbagliato, perdendo il controllo dell'interazione.
Di particolare importanza sono le visualizzazioni dinamiche attraverso immagini in movimento, immagini tridimensionali, soprattutto in numerosi contesti applicativi. Tra le più importanti vi sono la visualizzazione dei dati, dei programmi, degli algoritmi, dei processi industriali, dei fenomeni scientifici, dei dati finanziari, ecc. Un problema chiave nella visualizzazione è trovare una struttura consistente che renda salienti dal punto di vista percettivo tutti i concetti significativi, utili per la comprensione delle informazioni da parte dell'utente. La tecnologia dei display dei moderni computer può generare stimolazioni che coprono una parte significativa della proprietà del sistema visivo umano come la percezione del colore e la risoluzione temporale. Nel futuro lo sviluppo della tecnologia promette una integrazione degli schermi della TV ad alta definizione e dei computer, che integreranno e miglioreranno le informazioni in output da fonti differenti. Inportanti, fra i display, i visualizzatori tridimensionali che permettono la visione delle "talking faces" (vedi capitolo nono).

Sound output
Gli usi correnti del suono nelle interfacce hanno lo scopo di fornire un feed-back all'utente. Varie forme di suono sono utilizzate per indicare all'utente che quello che sta inserendo è un comando non corretto, o che c'è un processo di elaborazione in corso, ecc. Fino a poco tempo fa erano disponibili solo questi segnali di avvertimento. Attualmente, la maggior parte dei computer ha diversi tipi di suoni, ognuno dei quali può essere sia sintetizzato che campionato (cioè, registrato in formato digitale e ascoltato). Tali tipologie di suono sono: il parlato, i suoni musicali e i suoni naturali. Buxton et al. (1989) hanno suggerito che il suono può essere utilizzato per rendere più ricca l'informazione dell'interfaccia e per mostrare cosa sta accadendo nel sistema. Questi Autori suggeriscono che, avendo l'uomo un sistema uditivo capace di collezionare informazioni molto dettagliate circa l'ambiente, esiste un grande potenziale nel migliorare le interfacce sfruttando queste capacità. L'uso del suono in una interfaccia è particolarmente significativo quando gli occhi sono impegnati in un altro compito, o dove una situazione interessante non può essere percepita in un sol colpo. Un uso importante del suono è quello di fornire informazioni sui processi che avvengono sullo sfondo dell'interfaccia. Inoltre, l'importanza del suono come strumento per fornire un feed-back attivo durante l'interazione può avere differenti aree di applicazione fra cui: sistemi computerizzati dove gli occhi e l'attenzione non sono concentrati sullo schermo, come le applicazioni mediche, il volo, il trasporto e le industrie. Applicazioni dove è necessario un controllo visivo continuo, che porta alla monotonizzazione, come nelle banche. Applicazione per utenti ciechi. Applicazioni in cui i dati possono essere esplorati con l'ascolto, ecc. Nella vita reale, gli umani sono capaci di ottenere molte informazioni attraverso la modalità uditiva. La comunicazione per mezzo del parlato è praticamente il principale strumento di scambio sociale. Inoltre, gli umani utilizzano un range enorme di suoni che provengono dall'ambiente per ottenere informazioni. Quando si utilizza nelle interfacce multimodali il suono serve come potente strumento per trasferire informazione. I principali strumenti di output sono gli "speech output", i "non speech audio output" e i "sound spazialization".
Nella prima categoria di output, se il medium utilizzato è il parlato, viene sfruttato l'intero repertorio del lessico e dei significati di una lingua naturale. Per offrire una certa intellegibilità dell'output, la lunghezza di banda dello strumento non dovrebbe essere inferiore a 3 Khz, ma una larghezza di banda più alta porta ad una migliore qualità. Il parlato può essere utilizzato come interfaccia macchina-uomo. Parole registrate o frasi possono essere emesse per informare l'utente sullo stato del sistema. Anche informazioni stivate in formato testuale possono essere trasformate in parlato per mezzo di sofisticati algoritmi di sintesi (vedi il capitolo sullo Speech Recognition). Un'altra applicazione interessante del parlato è l'uso di questo medium all'interno dei documenti testuali.
Alla seconda categoria appartengono: "icone uditive" (che riportano i suoni dell'oggetto o della funzione che rappresentano). "Earcons" (questo è il nome che è stato coniato per tale tipo di suoni), ovvero insiemi di simboli basati sul alcuni toni musicali, dove il linguaggio verbale è rimpiazzato da combinazioni di altezze e strutture ritmiche, ognuna delle quali denota qualche proprietà dei dati dell'ambiente del sistema. Tali oggetti si traducono per esempio, in una melodia per indicare uno status di errore.
"Sonification", ovvero l'uso di dati per controllare un generatore di suono con il proposito di monitorare e analizzare i dati. "Audification", ovvero una traduzione diretta dei dati di una forma di onda nel dominio uditivo.
Nella terza categoria, quella che si riferisce agli strumenti di output che localizzano il suono, un suono può essere filtrato in modo tale che esso sembri provenire da una specifica direzione quando suonato attraverso una cuffia (headphone). I filtri simulano la distorsione del suono causata dai movimenti del corpo, della testa e dell'orecchio esterno. Oggigiorno, veloci strumenti hardware che processano il segnale digitale (DSP) permettono un filtraggio in tempo reale e un aggiornamento dinamico delle proprietà del filtro, così che si crei un processo interattivo per la localizzazione del suono in tempo reale. Il numero di fonti sonore che possono essere presentate simultaneamente è limitato dalla capacità di processo degli strumenti DPS.

Strumenti di output tattile
Molti strumenti di output tattile, che si indirizzano verso i sensi cinestetici dell'operatore umano, sono stati sviluppati negli ultimi 30 anni ma soltanto alcuni sono diventati disponibili, forse a causa dei costi veramente proibitivi. Tali strumenti sono stati realizzati soprattutto nel campo della robotica e della Realtà Virtuale. Per una rassegna su tali strumenti e una visione di questo settore di ricerca, si rimanda a Krueger (1990).

Stili di interazione


Un numero di concetti differenti è stato utilizzato nello Human Computer Interaction per descrivere la comunicazione che avviene tra utenti e computer. Fino a poco tempo fa, la maggior parte delle interazioni con un computer prevedeva una organizzazione dell'interazione strettamente definita. Per esempio, in un sistema per editare un testo, l'utente inserisce delle parole attraverso la tastiera, che vengono visualizzate sullo schermo. Questo è un modo molto comune e importante di interagire con un computer. Per questo tipo di interazione è stato utilizzato il termine dialogo riferendosi allo scambio di istruzioni e di informazioni che ha luogo appunto tra l'utente e il sistema. Se si guarda questo tipo di interazione dal punto di vista dell'utente, come prima cosa egli deve specificare le istruzioni da inviare al computer. Questo include il parlare, il puntare, il battere sulla tastiera, e così via. L'utente spera che le sue intenzioni siano correttamente specificate e che il computer le processi e le visualizzi come richiesto. Allora il sistema, se è stato pensato attentamente e accuratamente programmato, produrrà un feed-back. L'utente spera di ottenere i risultati desiderati. Se qualcosa non è andato nel modo giusto, un messaggio che spiega cosa sta avvenendo, viene visualizzato sullo schermo del computer. In questo paragrafo il termine "stili di interazione" sarà utilizzato per indicare tutte le modalità attraverso le quali gli utenti comunicano o interagiscono con i sistemi computerizzati.

Command entry
Attraverso questa forma di interazione, nessun dialogo con il computer è possibile se l'utente non conosce esattamente il protocollo di comandi che deve inserire per comunicare col sistema. Tutto questo stile di interazione è particolarmente criptico. In un sistema che utilizza questo tipo di linguaggio a comandi, lo schermo visualizza il simbolo ">", detto "prompt" per indicare che il sistema sta aspettando di ricevere una "frase", appunto un comando che gli dica cosa deve fare. Un tipo di comando è il seguente: "DIR", attraverso il quale il sistema visualizza la lista dei titoli di un particolare gruppo di documenti; tale lista è detta "directory". Tali comandi forniscono un modo per esprimere istruzioni direttamente al computer. Essi hanno di solito la forma di funzioni, di singoli caratteri, di abbreviazioni, parole intere: in pratica un linguaggio specializzato, senza sapere il quale non è possibile interagire.

Menus
Un menu è un insieme di opzioni visualizzate sullo schermo, dove la selezione e l'esecuzione di una delle opzioni risulta nel cambio dello stato dell'interfaccia (Paap e Roske-Hofstrand, 1988). Al contrario del sistema descritto nel paragrafo precedente, il menu ha il vantaggio che gli utenti non hanno bisogno di ricordare l'item che desiderano, essi hanno bisogno soltando di riconoscerlo. Questo vuol dire che perchè il menu sia efficace, il nome o l'icona selezionata dall'utente deve essere auto-esplicante (o significativo/a), e questo non sempre succede. Esistono diversi tipi di menu. Nel passato, il problema che i menu ponevano era che occupavano troppo spazio sullo schermo; tale problema è stato risolto con l'introduzione dei menu cosiddetti "pull-down" e "pop-up". Nel primo tipo il menu è visualizzato puntando il mouse su un singolo titolo, che si trova di solito in alto sullo schermo: un item viene selezionato ed automaticamente il menu ritorna al suo titolo originale. Il menu pop-up appare quando una particolare area dello schermo, che può essere designata da un icona, è "cliccata" (per mezzo del mouse) e il menu viene visualizzato e rimane in questa posizione fino a quando l'utente non lo fa sparire con un nuovo "click".
Un particolare tipo di menu è quello indicato dall'espressione "dialoghi con domande e risposte". L'interazione consiste in una domanda che l'utente invia al sistema attraverso questo tipo di menu. Solo una domanda alla volta può essere fatta. Il computer fornisce informazioni sulla richiesta dell'utente con una serie di risposte preconfezionate, stivate in un database. Dialoghi di questo tipo sono spesso utilizzati dove l'informazione è elicitata dall'utente in una forma prescritta e limitata, come può avvenire quando l'utente chiede informazioni circa il catalogo di una biblioteca.

Form- fill and spreed-sheet
Quando differenti categorie di dati sono utilizzate in un sistema che si serve di una tastiera, è spesso utile progettare lo schermo come se fosse una scheda da riempire (form-fill), particolarmente se lo stesso tipo di dati devono essere inseriti ripetutamente. Il vantaggio di questo tipo di data-entry è che le informazioni possono essere inserite esattamente nella stessa posizione, evitando errori e procedendo nell'immissione più speditamente. Infatti, quando una parte della scheda è completata, il cursore si muove direttamente sulla posizione dove deve essere inserito il dato successivo.
I programmi "spreed-sheet" o fogli elettronici sono stati progettati utilizzando il principio dell'organizzazione dei dati (soprattutto numerici) in tabelle. Tali programmi, combinati con elementi di manipolazione diretta, permettono di fare calcoli, somme, percentuali, ecc., che vengono eseguiti automaticamente. Il vantaggio di questi programmi è che l'utente può inserire i dati e vedere i risultati immediatamente.

Natural language dialogue
L'uso del linguaggio come mezzo di comunicazione con il computer è considerato molto utile grazie alla sua naturalezza. Questa forma di interazione prevede l'invio di informazioni al computer, in una lingua naturale, attraverso una tastiera. Il sistema ha bisogno di essere capace di far fronte a tutte le ambiguità che pongono le costruzioni verbali. L'utilizzo della tastiera, rispetto all'utilizzo del parlato, elimina i problemi dell'accento e dell'intonazione, ma introduce il problema delle variazioni ortografiche (spelling variations) e degli errori. Se non sono stati ancora sviluppati sistemi che comprendano il linguaggio scritto, diversi tipi di sistemi esperti sono stati sviluppati usando alcune forme di sottoinsiemi strutturati di linguaggio naturale.

Manipolazione diretta
Il termine "manipolazione diretta", inventato da Shneiderman (1983), descrive sistemi che hanno le seguenti caratteristiche: gli oggetti di interesse sono tutti visibili; l'utente può compiere azioni rapide, reversibili e incrementali; l'utente può utilizzare gli oggetti dello schermo per eseguire dei compiti, attraverso una manipolazione diretta, al posto di una complessa sintassi di un linguaggio di comandi. I sistemi che permettono la manipolazione diretta da parte degli utenti, hanno icone che rappresentano oggetti. Tali icone possono essere mosse sullo schermo, manipolate controllando il cursore con un mouse. La Apple Macintosh è stata la prima casa produttrice di computer che ha lanciato sul mercato questo tipo di sistema. Tale sistema, basato sulla metafora della scrivania di un ufficio (desk-top), presenta tutte le icone che di solito sono associate all'uffico (un classificatore di documenti , un blocco appunti, un cestino per buttare i documenti, ecc.). Sempre Shneiderman ritiene che il successo di tali sistemi è dovuto ai seguenti fattori:
a) coloro i quali usano il computer per la prima volta possono imparare le funzioni di base velocemente.
b) Gli utenti esperti possono lavorare in modo estremamente rapido, eseguendo numerosi compiti, e definendo persino nuove funzioni e caratteristiche del sistema. La manipolazione diretta permette infatti, anche una programmazione diretta delle funzioni da parte dell'utente.
c) Utenti che utilizzano il computer in modo intermittente possono velocemente richiamare e utilizzare i concetti di base sul funzionamento del sistema.
d) Gli utenti possono immediatamente vedere se le loro azioni raggiungono gli scopi e, se non lo fanno, possono cambiare la direzione delle loro attività, o trovare dei rimedi opportuni.
e) Gli utenti sperimentano un approccio meno ansioso all'uso del sistema in quanto quest'ultimo è realmente più comprensibile e perchè le azioni che si possono fare sono reversibili.
f) Gli utenti guadagnano fiducia in se stessi e padronanza dello strumento, in quanto iniziano una azione, sentono il controllo e possono predire le risposte del sistema.
Uno dei problemi con i sistemi a manipolazione diretta è che non tutti i compiti possono essere descritti da oggetti concreti e non tutte le azioni possono essere eseguite direttamente. Questi sistemi di solito richiedono un display grafico e un sistema di puntamento che utilizzi il mouse per poter permettere all'utente di selezionare, muovere e trascinare gli oggetti sullo schermo. Uno dei principali obiettivi nella progettazione di una interfaccia che permetta la manipolazione diretta, è lo sviluppo di una immagine del sistema che venga capita dall'utente. L'immagine del sistema è realizzata dall'interfaccia fisica, dal comportamento del sistema e dalla documentazione esterna a cui l'utente può accedere. La relazione tra l'utente e il sistema può essere concettualizzata nei termini del golfo dell'esecuzione e del golfo della valutazione, che ha bisogno di essere colmato attraverso un ponte (Norman e Draper, 1986). I quattro principi per la progettazione di interfaccia a manipolazione diretta sono: le affordances, i limiti, il mapping naturale e il feed-back.