quaderni di usabilità TILS: Scuola Superiore Guglielmo Reiss Romoli

appuntamenti, strumenti di lavoro, personaggi, la rassegna stampa strumenti per approfondire gli argomenti scambia le tue idee ricerche bibliografiche, commenti e suggerimenti, libro degli ospiti consulta i quaderni

vai all'indice del quaderno n° 1

Architettura ed Evoluzione del World Wide Web
XEROX Alto/Star/ViewPoint

Quello che è lo stato dell’arte dell’informatica individuale è dovuto alle attività svolte negli anni ’70 alla Xerox. Queste erano rivolte a portare l’uso dei computer fuori dalle applicazioni di calcolo ("number crunching") fino ad allora principalmente indirizzate, per introdurli nel contesto dell’automazione d’ufficio, con utenti occasionali, connessi in rete ed interessati essenzialmente al loro lavoro piuttosto che ai computer [XER].

Il risultato fu lo sviluppo di sistemi dotati di interfacce in grado di nascondere il dettaglio della struttura del computer, dei quali fosse facile impararne e ricordarne le modalità di utilizzo. Queste idee, utilizzate per i sistemi Alto (1973), Star (1981) e ViewPoint di Xerox, furono in seguito seguite anche da Apple, per i sistemi Lisa (1983) e Macintosh (1984), e Microsoft, per l’interfaccia Windows (1983), rappresentando attualmente lo standard per l’interazione uomo-macchina.

E’ opportuno analizzare le innovazioni introdotte dalla Xerox sia negli aspetti hardware che nell’interfaccia utente.

Dal punto di vista dell’hardware, i sistemi della Xerox costituirono il passaggio dal mainframe al personal computer, termine coniato nel 1973 da Alan Kay, quando era a capo del Learning Research Group del Palo Alto Research Center di Xerox (fondato nel 1970). La possibilità di dare localmente a ciascun utente la capacità di calcolo di un sistema di elaborazione, piuttosto che condividere quella di un sistema centralizzato, costituiva un notevole passo in avanti in termini di prestazioni.

Contemporaneamente, però, nascevano anche problemi di consistenza tra i dati posseduti dagli utenti, tanto che parallelamente allo sviluppo del personal computing, si ebbe lo sviluppo di sistemi di comunicazione su rete locale, che portarono alla definizione dello standard Ethernet, e di comunicazione e collaborazione (es.: e-mail).

Per quanto riguarda l’accesso utente, i sistemi Xerox erano basati su una forte interazione uomo-macchina (come descritto nel seguito). Questo richiedeva l’utilizzo di nuove periferiche, quali il mouse e interfacce grafiche bit-mapped.

Interfaccia Xerox

Sicuramente, la maggiore innovazione di Xerox si ebbe, però, nell’interfaccia utente.

La caratteristica più evidente dell’interfaccia è l’utilizzo di una visualizzazione delle risorse tramite una metafora della scrivania (desktop). Le risorse, in pratica, venivano rappresentare graficamente con oggetti comuni in ambienti d’ufficio (documenti, cartelle, …). I sistemi con metafora desktop, che si contrappongono ai sistemi con metafore basate sugli strumenti (tools metaphor), sono principalmente focalizzati sui file dei dati, piuttosto che sui programmi in grado di elaborarli. Questa scelta, preferibile in contesti di automazione d’ufficio e di publishing, richiede che ciascun dato sia legato alle applicazioni con le quali può essere elaborato, richiedendo estensioni del file system in grado di registrare i legami tra programmi e dati.

figura_17.gif (9561 byte)

Figura 16: Desktop

Altra innovazione introdotta al fine di semplificare la vita degli utenti è stata l’utilizzo di un ristretto numero di comandi generici. Un esempio di questo nei correnti sistemi Windows, può essere l’utilizzo di comandi di Copia/Incolla indifferentemente per spostare parti di testo in un documento o per spostare file su disco.

figura_18.gif (21132 byte)      figura_18bis.gif (24199 byte)

Figura 17: Comandi generici

Il modo con il quale le risorse sono viste ed i comandi impartiti è tramite l’interfaccia grafica e la manipolazione diretta degli oggetti. Questo permette di passare da una modalità di interazione con la macchina del tipo "ricorda e digita" ("remember and type"), nel senso che è necessario ricordare la sintassi dei comandi e scriverli senza errori tramite la consolle, ad una modalità del tipo "vedi ed indica" ("see and point"). Questo favorisce grandemente la possibilità di utilizzo della macchina da parte di utenti occasionali.

Innanzi tutto, essi possono comporre i comandi selezionando delle voci di menu, piuttosto che scrivendoli tramite la tastiera. Inoltre, è possibile interagire direttamente con gli oggetti rappresentati graficamente sul monitor, piuttosto che descrivendo in input delle azioni con dei comandi e guardando sull’output il risultato. Questa distinzione da input ed output non esiste più e, per esempio, si può spostare un file tra due directory trascinandolo con il mouse, vedendo contemporaneamente l’azione da compiere ed il suo risultato. Una conseguenza diretta è che lo stato del sistema deve essere sempre visibile sul display.

Figura 18: manipolazione diretta

Una precisazione importante, a proposito di interfacce grafiche, è relativa al concetto di icona. Un’icona non è un qualsiasi oggetto grafico del desktop, ma è la rappresentazione di un oggetto al quale sono associate delle proprietà, come ad esempio per un file, il programma da utilizzare per visualizzare i dati in esso contenuti.

L’utilizzo di finestre, icone, mouse e cursore è ormai la principale modalità di interazione degli attuali sistemi operativi, che vengono genericamente indicati con il termine WIMP, che sta per "Windows, Icons, Mouse and Pointer".

Altre caratteristiche dei sistemi Xerox sono meno evidenti, ma parimenti importanti dal punto di vista dell’utente.

Una modalità importante per il funzionamento della macchia è la riduzione dei "modi", cioè di stati di funzionamento che fanno si che una determinata azione abbia risultati differenti in funzione dello stato nel quale si trova la macchina. Questo è ottenuto innanzitutto sia tramite l’utilizzo di comandi generici, sia tramite la possibilità di utilizzare contemporaneamente più programmi, come ad esempio accedere al desktop per eseguire operazioni su file all’interno di un editor. Inoltre, la manipolazione diretta degli oggetti permette di utilizzare dei comandi del tipo "nome-verbo", piuttosto che il formato "verbo-nome", normalmente utilizzato nei sistemi con interfaccia a carattere, con il comando che precede i parametri. In questo modo, selezionando un oggetto non si entra in un modo, come avviene se si impartisce un comando, e l’azione può essere abortita più facilmente.

Altra caratteristica importante dei sistemi Xerox è che gli oggetti hanno delle proprietà (come ad esempio l’ordine dei nomi di file per una directory o il font per un carattere), visualizzabili tramite "property sheet".

Legato alla gestione delle proprietà è quello della visualizzazione progressiva dei dettagli degli oggetti ("Progressive disclosure"), fino a che non vengano direttamente richiesti dall’utente. Un esempio è l’utilizzo di stili di default, che vengono utilizzati non complicando eccessivamente la vita degli utenti.

La consistenza dell’interfaccia utente tra le differenti applicazioni, nel caso dei sistemi Xerox è stata abbastanza semplificata dal fatto che tutte le applicazioni sono state sviluppate internamente. In sistemi aperti, questo ha portato generalmente alla definizione di linee guida da seguire durante lo sviluppo.

Figura 19: Property sheet

Per quanto riguarda il progetto grafico, i principi più importanti sono stati:

illusione di manipolare gli oggetti;
gestione dell’intensità e del contrasto per gestire l’ordine degli oggetti e catturare l’attenzione dell’utente;
possibilità di "rilevare la struttura", nel senso di permettere di poter immaginare quale sia il risultato di una determinata azione;
vocabolario grafico consistente ed appropriato
considerazione dei mezzi disponibili.

Questi principi furono sviluppati nel Palo Alto Research Center dalla Xerox (indicato come Xerox PARC) fondato nel 1970 per attività collaterali a quella principale della Xerox, orientata sulle fotocopiatrici, quali quelli delle tecnologie laser, circuiti integrati, interfacce utente, computer, e cosi via.

Nel 1973 venne realizzato l’Alto. Nato come dimostratore all’interno del PARC, dopo che fu disponibile del software, si passò dalle poche unità all’interno del PARC, ad oltre mille macchine utilizzate all’interno della Xerox, ed anche per qualche cliente esterno. La macchina era un mini-computer con un hard disk da 2.5 Mbyte, 128/256 kbyte di RAM, un display grafico in bianco e nero, con una risoluzione da 600*800 pixel e 50 kbyte di RAM video, ed una connessione Ethernet. Parallelamente allo sviluppo della macchina, vennero sviluppate applicazioni in linea con la filosofia della stessa, tra le quali si possono citare:

Smaltalk: primo linguaggio di programmazione ed ambiente di sviluppo object oriented, realizzato dal LRG otto la guida di Alan Kay. L’obiettivo era quello di permettere all’utente la combinazione di blocchi basi messi a disposizione dalla macchina, per realizzare gli strumenti dei quali aveva bisogno;
Pygmalion: applicazione Smaltalk, sviluppata come tesi da David Smith, avente l’obiettivo di dimostrare come fosse programmare un computer senza la scrittura di un programma, ma interagendo con la sua interfaccia grafica. In questo contesto venne sviluppato il concetto di icona;
Bravo: editor WYSIWYG (What You See Is What You Get), che permetteva all’utente di comporre un documento visualizzando sullo schermo il risultato finale della sua composizione. Uno dei responsabili del gruppo che realizzò Bravo, Charles Simonyi, sviluppò alla Microsoft il Word. Un altro membro del gruppo, Tom Malloy, realizzò LisaWrite per la Apple;
Draw e SIL: editor per grafica vettoriale che sviluppò le idee presentate con lo Sketchpad;
Markup: editor per grafica bitmap, dal quale derivò il Free-Hand;
Press: linguaggio di descrizione di pagina per stampa laser, dal quale derivarono Interpress e, da parte di alcuni membri del PARC che fondarono l’Adobe, il Postscript.

 

 

 

 

 

 

 

 

Figura 20: Xerox Alto

Terminata la sperimentazione dell’Alto, il System Development Department (SDD) della Xerox sviluppò nel 1981 lo Star, una macchina destinata alla commercializzazione. La macchina disponeva di 384 kbyte di RAM, hard disk da 10, 29 o 40 Mbyte, monitor da 17 pollici e connessione Ethernet. Il costo era di 16.500 $.

Questa macchina non ebbe successo commercialmente. Tra le ragioni dell’insuccesso si possono ricordare:

il costo elevato;
prestazioni insoddisfacenti;
architettura software chiusa (per garantire consistenza) e scarsa disponibilità di applicativi (es.: mancanza di uno spreadsheet);
aderenza "eccessiva" alla metafora della scrivania (es.: mancanza della possibilità di utilizzare comandi per alcune operazioni)
figura_22.gif (7405 byte)

Figura 21: Xerox Star

Per superare questi problemi, la Xerox realizzò il ViewPoint, una macchina più economica, con migliori prestazioni ed architettura aperta, che ereditava le caratteristiche dello Star dal punto di vista dell’interfaccia utente [PAR].