Three-tiered, l’architettura di Immagina

CARATTERISTICHE DI «IMMAGINA»

Oggetto della presentazione è la descrizione delle caratteristiche della soluzione di gestione documentale denominata «Immagina 2».

«Immagina» è un prodotto di proprietà di Generazione Informatica S.r.l. che risulta anche depositaria del relativo marchio.

La soluzione di gestione documentale «Immagina 2» è caratterizzata da un’architettura software particolarmente sofisticata.

Tale architettura, denominata three-tiered, permette di realizzare una distribuzione del carico di lavoro del software come rappresentato in seguito.

Le componenti di un generico sistema informatico interessate, in forma differente, ad accedere alle informazioni della soluzione di gestione documentale devono poter essere le più disparate, a puro titolo esemplificativo indichiamo le seguenti:

  • utenti PC (sia in rete che stand alone);
  • eventuali altri utenti locali o remoti via rete;
  • eventuali altri utenti locali o remoti via Internet/Intranet.

OBIETTIVI

 

Gli obiettivi che la soluzione di gestione documentale si propone sono molteplici. Nel seguito ne elenchiamo solamente alcuni.

  • «Immagina 2» con architettura three-tiered è implementabile su una rete con server Windows NT/2000/XP e client Windows 98/ME (o Windows NT/2000/XP) o, nel caso di postazione singola, in ambiente Windows NT WS o Server, Windows 2000 Pro o Server, Windows XP Pro.
  • «Immagina 2» è interamente progettato e realizzato a 32 bit.
  • «Immagina 2», pur essendo dotato di un modulo proprio per la gestione degli archivi in formato Interbase e Paradox, consente l’utilizzo dei database più diffusi (Oracle, MS SQL Server, etc.).
  • «Immagina 2» con architettura three-tiered opera realmente in modalità Client/Server, implementando direttamente il meccanismo Client/Server di dialogo tra client e server.
  • «Immagina 2» rende disponibili agli sviluppatori interfacce COM per tutti i componenti di «Immagina 2», per consentire una completa integrazione con tutti gli ambienti di sviluppo (compreso MS Shell Script). Le dll “tradizionali” sono sostituite da componenti COM, molto più semplici da richiamare con tutti i moderni ambienti di sviluppo.
  • «Immagina 2» è realizzato con un’architettura multi-tier, per permettere una gestione dinamica delle risorse hardware, con possibilità di suddividere i moduli software su server differenti.
  • «Immagina 2» realizza la gestione lato server tramite servizi, singolarmente ottimizzati per le varie piattaforme di Windows (NT/2000/XP).
  • «Immagina 2» implementa due algoritmi hash di calcolo delle impronte dei documenti archiviati (SHA-1 e RIPEMD-160), con ricalcolo e confronto automatico effettuato ad ogni richiesta di visualizzazione.
  • «Immagina 2» permette la creazione di un numero non definito a priori di archivi con la struttura modificabile ed adattabile nel tempo a nuove esigenze, direttamente dall’amministratore senza necessitare di interventi esterni.
  • «Immagina 2» consente la memorizzazione sia di immagini sia di file dati (ad esempio file “.doc” per lettere o file, “.xls” per tabelle, “.p7m” per file firmati digitalmente e quant’altro).
  • «Immagina 2» consente ricerche singole o multiple con ordinamento dinamico dell’output anche tramite digitazione diretta di stringhe SQL create tramite “assistente”.
  • «Immagina 2» mantiene distinti i dati (campi del record) dalle immagini (documenti veri e propri) e opera la loro correlazione tramite un campo univoco.
  • «Immagina 2» mantiene distinti il modulo di amministrazione dal modulo utente.
  • «Immagina 2» permette la creazione di un profilo utente per ogni singolo utilizzatore, con la possibilità di definire a quali funzionalità dell’applicazione sia abilitato.
  • «Immagina 2» consente una gestione del flusso di memorizzazione delle immagini in modo automatico (memorizzazione HSM).
  • «Immagina 2» è dotato di una guida in linea completa, funzionante secondo gli standard di Windows, e di documentazione cartacea completa ed esaustiva separata per utente e amministratore.
  • «Immagina 2» consente la sovrapposizione al documento originale, senza che questo venga in alcun modo alterato o modificato, di annotazioni, sottolineature, evidenziazioni, senza alcun limite predefinito nel loro numero e nella loro posizione nell’ambito del documento.
  • «Immagina 2» consente di trasferire un documento, o una porzione di esso, dall’applicazione verso Microsoft Word, Microsoft Excel o prodotti analoghi, con il semplice uso delle funzioni “copia” e “incolla” di Windows.
  • «Immagina 2» consente l’utilizzo di strumenti di posta elettronica standard MAPI, in particolare consente l’invio di un documento a mezzo posta elettronica Microsoft Outlook/Exchange, Lotus Notes, etc..
  • «Immagina 2» consente di inviare per posta elettronica ad un altro client della rete, che utilizzi l’applicazione, non il documento, ma il link logico al documento stesso, per ottimizzare il traffico di rete.
  • «Immagina 2» utilizza, per la visualizzazione dei documenti archiviati, un meccanismo di cache a due livelli che consente di memorizzare, per un periodo di tempo definibile dall’amministratore, sul disco del server o sul disco del client, le immagini di cui sia stata richiesta la visualizzazione, per permettere l’ottimizzazione del traffico di rete (cache di secondo livello sul client) e diminuire le operazioni di I/O verso le periferiche di memorizzazione (cache di primo livello sul server).
  • «Immagina 2» consente il monitoraggio del reale utilizzo del sistema, permettendo di mantenere traccia di tutti i documenti di cui sia stata richiesta la visualizzazione con indicazione della data, dell’ora e dell’utente che ne ha richiesta la visualizzazione, con la possibilità per l’amministratore di attivare o disattivare la funzionalità di registrazione di tali informazioni.
  • «Immagina 2» consente la migrazione delle immagini da un supporto di memorizzazione ad un altro, ad esempio per masterizzazione su CD/DVD dello storico.
  • «Immagina 2» supporta periferiche di acquisizione standard TWAIN (scanner, macchine fotografiche digitali, etc.).
  • «Immagina 2» permette l’utilizzo di qualunque stampante sia resa disponibile dalla rete, senza necessità di configurazione nell’ambito del prodotto.
  • «Immagina 2» permette l’utilizzo simultaneo di differenti periferiche di memorizzazione (ad esempio juke box, disk array, etc.).
  • «Immagina 2» consente di effettuare un Logon sia in modo implicito (l’utente viene riconosciuto tramite il corrispondente login name di Windows), che in modo esplicito (l’utente inserisce il proprio nome, anche differente dal login name dell’utente di Windows corrente, e la propria password).
  • «Immagina 2» consente ad ogni utente di creare e gestire delle “cartellette virtuali” contenenti documenti completi o singole pagine.
  • «Immagina 2» consente, tramite un menu contestuale in Explorer, di effettuare direttamente l’archiviazione di un file su «Immagina 2».
  • «Immagina 2» consente ad un client di connettersi a diversi server di «Immagina 2» (nel caso di installazioni multi server).
  • «Immagina 2» consente la gestione simultanea di 4 finestre di visualizzazione per visualizzare fino a quattro documenti contemporaneamente.
  • «Immagina 2» consente l’utilizzo di liste di valori associati ai singoli campi, in modo tale da facilitare le operazioni di indicizzazione e/o ricerca.
  • «Immagina 2» consente, tramite un apposito modulo opzionale, di archiviare e/o ricercare documenti tramite un semplice browser (via internet/intranet).
  • «Immagina 2» consente, tramite un apposito modulo opzionale, di conservare i documenti a norma AIPA e di poter procedere alla distruzione dei relativi originali cartacei.
  • «Immagina 2» consente l’ampliamento delle proprie funzionalità, tramite una vasta gamma di opzioni (archiviazione automatica da spool, indicizzazione automatica tramite codici a barre, indicizzazione automatica tramite OCR/ICR, integrazione con sistemi host, etc.).

 

LA SOLUZIONE «IMMAGINA 2»

 

Per il raggiungimento dei suddetti obiettivi «Immagina 2» è stato sviluppato sulla base di soluzioni architetturali three-tiered totalmente caratterizzate da ambienti operativi standard, che consentono una notevole flessibilità, riducendo sensibilmente i costi di gestione e semplificando le procedure di manutenzione del sistema di gestione documentale nel suo complesso.

Tale soluzione, inoltre, è allineata alle tendenze del mercato, che stanno vedendo la famiglia Windows NT/2000/XP sempre più imporsi nell’ambito dei sistemi operativi standard, grazie alle sue indiscusse qualità intrinseche, ma soprattutto, al supporto di una vastissima quantità di primitive per la comunicazione con il modo esterno e con gli altri ambienti operativi.

Resta inteso che, in considerazione della natura prevalentemente commerciale della presente documentazione, tutte le argomentazioni tecniche affrontate in essa sono descritte in maniera generale. Si demandano ad altre sedi più appropriate gli eventuali approfondimenti.

 

L’ARCHITETTURA THREE-TIERED

Come è chiaramente visibile, l’architettura three-tiered è strutturata su tre distinti livelli. Il livello intermedio ha il ruolo di interfacciare gli altri due.

Al livello più elevato vengono delegati i compiti più specifici e delicati di gestione del database delle immagini e della gestione delle periferiche di memorizzazione delle immagini (generalmente juke-box); ricordiamo in questa sede, tuttavia, che, qualora se ne presentasse la necessità, i supporti di memorizzazione delle immagini possono essere fisicamente collegati anche a macchine diverse dal server di livello più alto.

Il livello intermedio si fa carico della gestione delle richieste da inoltrare al livello superiore, sollevando quest’ultimo da operazioni di interfaccia e di conversione di protocollo e di formato.

Tale scelta è guidata dal principio di delegare a macchine di supporto operazioni non vitali per la gestione del sistema di gestione documentale, limitando alle operazioni più strategiche e più importanti la macchina al livello superiore. Tale soluzione permette di ottimizzare le prestazioni del sistema di gestione documentale.

Il livello più basso è rappresentato da tutte le componenti esterne che necessitano di accedere ai dati della gestione documentale. Tali componenti possono essere le più disparate; nella figura della pagina seguente abbiamo riassunto solamente alcuni dei possibili accessi che si potrebbero avere.

Ogni singolo componente inoltra la sua richiesta ad un server (dedicato o condiviso a seconda delle necessità) che gestisce direttamente l’operazione di accesso al data base del livello superiore e di recupero dell’immagine da restituire al processo chiamante.

In una struttura three-tiered, qualunque operazione di richiesta viene dunque trasformata dal livello intermedio in una query al data base che, a quel punto si trova a gestire solamente richieste omogenee. A qualunque nuovo componente è possibile concedere l’accesso o lo scambio dati con il sistema di gestione documentale; è sufficiente configurare o costruire una semplice procedura nel modulo intermedio per la gestione dell’operazione.

 

CONSIDERAZIONI SULLA ARCHITETTURA THREE-TIERED

 

Tale soluzione three-tiered consente di realizzare una corretta distribuzione del carico di lavoro tra le varie risorse disponibili, in modo dinamico.

Il livello più alto, dove l’hardware richiede un investimento più elevato, non viene sovraccaricato con operazioni non indispensabili. Gli accessi al database vengono gestiti a run-time dal software senza richiedere un elevato numero di licenze per la consultazione diretta degli utenti, ma una licenza singola. Richieste minori di investimento hardware si traducono anche in una riduzione dei relativi canoni di manutenzione. Un numero inferiore di licenze d’uso si traduce in una riduzione anche dei costi di manutenzione software.

Il livello intermedio, caratterizzato da un ambiente operativo standard, richiede hardware e software di costo inferiore ed è caratterizzato da una grande versatilità, in quanto supporta di base una serie di facility di integrazione con i vari ambienti operativi. Tale soluzione permette, inoltre, di adattare in modo dinamico nel tempo alle reali necessità del sistema le risorse hardware; con tale soluzione è virtualmente illimitato il numero di server che possono essere affiancati e su cui è possibile suddividere il lavoro di gestione del traffico. La possibilità di affiancare più server in modo dinamico consente di preservare gli investimenti fatti, in quanto non si verifica la necessità di sostituire un server perché non è più in grado di far fronte al carico di lavoro, poiché è possibile “scaricare” una parte di tale lavoro su un’altra macchina equilibrando il sistema.

Il livello inferiore, infine, permette di aprire a nuovi componenti la consultazione del sistema di gestione documentale o di adattare nel tempo le esigenze di comunicazione con quelli esistenti (ad esempio permettendo lo scambio dati a chi fino ad un certo momento poteva accedere solamente per consultazione, o rendere pubblici certi documenti tramite internet e così via).

Evidenziamo che il ricorso all’architettura multi-tier è una delle recenti tendenze dell’ingegneria del software, in quanto è sempre più sentita l’esigenza di gestire le risorse hardware ed il carico di lavoro del software dinamicamente in modo distinto. Gli applicativi sofisticati, di recente realizzazione, progettati per consentire la “migrazione” da sistemi centralizzati (tipicamente i sistemi mini, midi e mainframe) a sistemi distribuiti (tipicamente reti multi-server) fanno sempre più spesso ricorso a tale architettura, in virtù delle caratteristiche di qualità, affidabilità, versatilità e manutenibilità che quest’ultima può vantare.

 

«IMMAGINA 2» E L’ARCHITETTURA THREE-TIERED

 

Nel caso di «Immagina 2» il livello più alto della suddetta architettura three-tiered è, generalmente, caratterizzato dall’ambiente operativo Windows NT/2000/XP.

Il data base d’appoggio per la gestione documentale può essere, a discrezione del Cliente, pressoché qualsiasi database presente sul mercato. Alcuni database vengono visti in forma “nativa” da «Immagina 2», altri sono, invece, accessibili via ODBC. Si evidenzia, inoltre, che il database può essere sia residente sul server, sia residente su Host. Unitamente ad «Immagina 2» viene normalmente fornito anche Interbase 6.0 (in versione Open Source).

A nostro giudizio i migliori risultati possono essere ottenuti con i database più qualificati (ad esempio Interbase o Microsoft SQL Server o Oracle).

Il livello intermedio, facendosi carico del lavoro di gestione del traffico e conversione di formato, è preferibilmente Windows NT/2000/XP.

Il livello più basso è tutto quello che è stato ipotizzato nei precedenti paragrafi. A questo punto, però, è necessario puntualizzare le differenze che intercorrono tra l’accesso “diretto” ad «Immagina 2», che è riservato agli utenti dotati di ambienti standard Microsoft a 32 bit (tipicamente i client di «Immagina 2» sono Windows NT Workstation o 2000/XP Professional o Windows 9X/ME) e l’accesso “indiretto” che è proprio di tutti gli altri ambienti operativi. Nel caso di accesso “diretto” i client sfruttano totalmente le potenzialità e le caratteristiche dell’architettura client-server di «Immagina 2». Condizione necessaria perché ciò sia possibile è che i client siano dotati di una versione di Windows a 32 bit. In tutti gli altri casi l’accesso ad «Immagina 2» è possibile solamente per via “indiretta”, ovvero via internet/intranet (tramite apposito modulo opzionale). Condizione necessaria perché ciò sia possibile è che i client siano dotati di un browser standard (Internet Explorer, Netscape, etc.).

 

«IMMAGINA» VERSIONE S.I.

 

Oltre alla versione “tradizionale”, esiste una versione denominata «Immagina S.I.», che è caratterizzata dal fatto che i client che eseguono il programma non necessitano di software installato a bordo.

Perché un client di «Immagina S.I.» possa eseguire il programma, è sufficiente che abbia accesso ad uno specifico file eseguibile posto in condivisione sul server.

Ovviamente è possibile, come di consueto nell’ambito della piattaforma Windows, definire secondo le necessità i permessi di accesso alla condivisione.

Sul server risiedono fisicamente tutti i file necessari all’esecuzione del programma sul singolo client.

Una volta “lanciato” il programma, il suddetto file eseguibile viene eseguito localmente sul client.

La prima operazione che compie è la verifica dell’esistenza di cartelle di appoggio sul disco locale, di norma nell’ambito della cartella temporanea di Windows. Se tali cartelle sono già presenti (ad esempio dalla precedente esecuzione del programma) il programma procede, in caso contrario le crea.

Successivamente il programma verifica la registrazione locale delle componenti COM necessarie al suo funzionamento (ricordiamo che il programma richiama le sue singole componenti via COM, oltre a renderle disponibili anche a programmi di terze parti per eventuali integrazioni o personalizzazioni). Se tale registrazione è già stata effettuata (ad esempio dalla precedente esecuzione del programma) il programma procede, altrimenti effettua la registrazione.

Successivamente il programma verifica la presenza, sul desktop dell’utente connesso, del link all’eseguibile condiviso sul server. Qualora non vi fosse, lo crea.

Successivamente il programma verifica la presenza del gruppo di programmi in comune (all users). Qualora non vi fosse, lo crea.

Una volta eseguite le suddette operazioni, il programma è in esecuzione localmente ed effettua il dialogo con il lato server dell’applicazione secondo la classica modalità client-server della versione “standard” di  «Immagina».

Gli utenti non sono in grado di percepire alcuna differenza a livello di funzionamento (né, ovviamente, a livello di interfaccia) tra la versione S.I. e la versione “standard” di «Immagina»

Tutti dati e i parametri necessari al funzionamento locale del programma, per intendersi quelli che normalmente vengono inseriti nel registro di sistema nell’ambito della chiave HKEY-LOCAL-MACHINE dall’amministratore in fase di installazione, in «Immagina S.I.» vengono forniti all’applicazione attraverso un file di configurazione. Tale file, che ovviamente si trova sul server, è creato e gestito dall’amministratore di sistema e viene concesso agli utenti in sola lettura.

Le impostazioni locali del singolo utente (dimensione delle finestre, posizione delle finestre, ecc.) vengono inserite nel registro di sistema nell’ambito della chiave HKEY-CURRENT-USER.

Ovviamente è prevista anche una procedura per la rimozione dei link, l’eliminazione delle cartelle d’appoggio e la deregistrazione delle componenti COM.

A questo punto risultano chiare le caratteristiche salienti di tale versione di programma:

  • Ha il medesimo aspetto e le medesime funzionalità della versione “standard”, in modo tale da non creare problemi di adeguamento agli utenti (che generalmente non si accorgono neppure del fatto che si tratti di una versione differente).
  • Non necessita di attività dell’amministratore di sistema per installare, disinstallare, aggiornare e mantenere il software sui singoli client, in modo tale da ridurre l’attività di gestione del parco macchine ed i relativi costi.
  • Permette di utilizzare le licenze d’uso in modo concorrente e non nominale, consentendo risparmi crescenti al crescere del numero di utenti che utilizzano il sistema.

I MODULI OPZIONALI

 

Per consentire la massima personalizzazione della soluzione, «Immagina 2» (anche nella versione S.I.) dispone di numerosi moduli opzionali.

Alcuni hanno lo scopo di integrare il sistema di gestione documentale con l’host (archiviazione automatica dei documenti attivi da spool di stampa, indicizzazione automatica dei documenti passivi da emulatore, etc.); altri hanno lo scopo di automatizzare completamente o parzialmente l’attività di indicizzazione (indicizzazione automatica tramite codice a barre o ICR/ICR, procedure di allineamento con altri database, etc).

Per un elenco completo e per l’analisi dettagliata del loro funzionamento si suggerisce di contattare il nostro supporto commerciale.


PREREQUISITI HARDWARE E SOFTWARE

 

Premesso che le caratteristiche hardware ideali sono da valutare caso per caso in funzione della variabili che caratterizzano ogni singola rete (tipologia, numero di utenti, carico medio e massimo, prodotti software utilizzati, etc.) le indicazioni che seguono vanno intese come valutazioni di massima per una architettura three-tiered.

 

CLIENT

SERVER

Sistema operativo

Windows a 32 bit/2000/XP/VISTA/7

Sistema operativo

Windows 2000/XP 2003/2008/VISTA/7
Memoria RAM Variabile in funzione della versione di sistema operativo

Memoria RAM

Variabile in funzione della versione di sistema operativo
Spazio su disco 400 Mb Spazio su disco 800 Mb (per l’applicazione)
Spazio per documenti 0 Mb Spazio per i documenti 1 Gb ogni 25.000/30.000 documenti A4 b/n a 200 dpi

Si ricorda che «Immagina 2» gestisce le periferiche utilizzate attraverso i driver nativi forniti dal costruttore. Il prerequisito comune a tutte le periferiche che si vogliono utilizzare, dunque, è che siano supportate da Windows nelle varie versioni.

Ricordiamo che oltre agli scanner possono essere utilizzate anche le macchine fotografiche digitali. È necessario che gli scanner (o le macchine fotografiche) siano standard TWAIN.

Per quanto concerne le periferiche di memorizzazione (juke-box, stringhe di dischi, etc.), evidenziamo ancora che la condizione necessaria e sufficiente per il loro utilizzo con «Immagina 2» è che siano supportati dalla versione di Windows adottata.

Analogamente è possibile utilizzare qualunque stampante o modem/fax supportato dalla versione di Windows adottata.

three-tiered

Fonte: Per l’immagine schematica dell’architettura three-tiered, Dipartimento Ingegneria Elettronica- Università dell’Aquila >>

Torna a Gestione documentale