I Terminali
Verso la fine degli anni ’60 e l’inizio dei ’70, l’Olivetti era presente nel mercato dei terminali elettronici, apparecchiature prive di vera capacità di elaborazione locale, ma che permettevano di introdurre dati e inviarli all’elaboratore centrale (questa funzione era svolta, ma senza un collegamento diretto con l’elaboratore, anche dalle macchine contabili con perforatore di nastro integrato). I terminali più evoluti, come i TCV 260 (1971) e TCV 270 (1973) si presentavano nella configurazione tastiera-video, svolgevano alcune semplici funzioni di controllo dei caratteri e dei dati inseriti, erano collegati per via telefonica a elaboratori con cui colloquiavano per mezzo di protocolli di comunicazione. Questi terminali emulavano quelli IBM, che erano lo standard di mercato; offrivano qualità intrinseche migliori, ma non funzionalità additive. In tal modo l’Olivetti era riuscita a penetrare nelle sedi periferiche delle organizzazioni più evolute, laddove era presente un Centro Elaborazione Dati.
L’idea del TC 800
Ancorché positiva, la posizione della Olivetti in questo segmento era pur sempre di “follower” e come tale estranea ad una azienda che mirava sempre a posizioni di leadership, per cui, quando la Pianificazione Prodotti (Marisa Bellisario) e la R&S (Pier Giorgio Perotto) si posero il problema di progettare una nuova linea di terminali, ci si orientò a soluzioni veramente innovative.
a) modularità e scalabilità
In quegli anni era maturata l’idea di realizzare moduli progettati, prodotti e testati, indipendentemente. CPU, memorie, dischi, stampanti, ecc. non appartenevano necessariamente a questo o quel prodotto, ma venivano “messi assieme” in opportune configurazioni e generavano i “sistemi”. Questo concetto, che ora appare semplice e scontato, in quella fase rivoluzionava sia i modi della progettazione, sia quelli della produzione, della vendita e dell’assistenza.
Fu quindi naturale, anche per i terminali, pensare a prodotti modulari e “scalabili”, ossia tali che il sistema potesse crescere al crescere delle esigenze applicative del cliente, senza dover cambiare hardware e software, ma semplicemente aggiungendo moduli e riconfigurando il tutto.
b) capacità di elaborazione
Si pensò anche a terminali intelligenti, che non si limitassero a gestire l’introduzione dei dati e il loro invio, ma che potessero elaborare localmente tali dati, svolgendo una parte delle funzioni fino ad allora affidate all’elaboratore centrale. Tali terminali dovevano quindi essere dei veri e propri elaboratori indipendenti, con CPU, dischi, stampanti.
c) architettura a cluster
Per essere più competitivi nei costi, inizialmente si svilupparono versioni bitastiera, che permettevano a due operatori di condividere le risorse della stessa macchina e svolgere contemporaneamente operazioni diverse. Ma il passo più innovativo fu quello di pensare a soluzioni capaci di “mettere insieme” più terminali intelligenti in una architettura che consentisse loro di colloquiare e di condividere le risorse più pregiate, aumentando la potenza di elaborazione locale e le possibilità applicative, specie in particolari settori di mercato, quali quello bancario e finanziario .
Si sviluppò allora un progetto architetturale complessivo (hardware e software) che assegnava a un terminale (master) il compito di gestire e amministrare alcune risorse (dischi, linea esterna verso il mainframe, stampante) che venivano messe a disposizione anche di altri terminali (slave) collegati ad esso tramite una linea interna. In pratica il programma applicativo che girava su un qualunque terminale slave doveva poter effettuare nello stesso modo sia operazioni svolte con le sue risorse (per esempio un disco o stampante), sia con quelle gestite dal master, in completa trasparenza, ossia senza dover sapere dove i dati erano effettivamente collocati.
Tale architettura, realizzata con la tecnologia allora disponibile, di fatto era quella, che si impose anni più tardi, di client-server uniti da una LAN (local area network).
d. Cosmos, sistema operativo d’avanguardia
Mentre dal punto di vista dell’hardware, la modularità era ormai un traguardo raggiunto, sul versante del software la tecnologia in Olivetti non era altrettanto pronta e nel 1973 il sistema operativo più evoluto disponibile in Olivetti, quello della A7, non era in grado di affrontare tali problemi di condivisione.
Si decise allora di sviluppare internamente un nuovo Sistema Operativo, creando un gruppo ad hoc sotto la guida di Alessandro Osnaghi, proveniente dalla Laben, azienda di Montedel (Montecatini Edison Elettronica) che aveva progettato il primo minicomputer italiano. In pochi mesi venne realizzato Cosmos, sistema operativo fortemente anticipatore rispetto a quelli realizzati qualche anno più tardi (es. Unix); permetteva, infatti, la realizzazione e l’esecuzione dell’applicazione dividendola tra Programma Applicativo Locale (PAL), che girava sui terminali slave, e Programma di Concentrazione (PAC), che girava sul master.
Il prodotto TC 800
Il TC 800, annunciato al salone Sicob di Parigi nell’autunno 1974 e commercializzato l’anno seguente, venne presentato come “sistema terminale intelligente modulare e programmabile per l’automazione dei servizi on-line e off-line”; prevedeva configurazioni stand alone (un terminale autosufficiente) o clustered (a grappolo, ossia più terminali collegati tra loro).
Ciascuna macchina poteva essere configurata con unità centrale, tastiera e console, display o unità video, governo linea, floppy disk e dischi rimovibili da 9.8 Mbyte, unità a nastro, lettore di badge, stampante ausiliaria, lettore di documenti magnetici, lettore e perforatore di nastro, lettori di schede. Insomma una modularità e configurabilità veramente elevate.
Dal punto di vista del software, la disponibilità di DIFAS (Distributed File Access System), ospitato sul master, permetteva l’accesso ad archivi di tipo index-sequential e sequenziali, garantendo una serie di importanti funzioni, quali la protezione dati in aggiornamento, la gestione della linea esterna, il bilanciamento del carico elaborativo tra master e satelliti. Importanti erano anche la disponibilità del linguaggio di programmazione evoluto PL 1 e di procedure di recovery in caso di cadute del sistema.
Commercialmente il TC 800 venne presentato nelle versioni:
- TC 800 FTS (Financial Terminal System)
- TC 800 ATS (Automatic Teller System)
- TC 800 MTS (Modular Terminal System).
I prodotti erano pensati soprattutto per l’ambiente finanziario e bancario di agenzia, dove la presenza di sportelli distribuiti sul territorio creava l’esigenza non solo di scambiare dati con l’elaboratore centrale, ma anche di disporre di una certa autonomia operativa ed elaborativa a livello locale. Particolare attenzione venne data alla creazione di numerosi Centri di Sviluppo di Software Applicativo, dislocati presso le varie consociate commerciali, per offrire soluzioni personalizzate; è significativo è che già alla metà degli anni ’70 in Olivetti operassero ben 3.000 addetti al software.
Il TC 800, grazie al suo carattere fortemente innovativo, ebbe un successo straordinario sia di vendite che di durata nel tempo e permise all’Olivetti di conquistare posizioni di leadership nel settore dell’automazione bancaria di agenzia, posizioni poi mantenute per oltre vent’anni.