Select the search type
 
  • Site
  • Web
Search
 Descrizione tecnica
Introduzione
Torna al menu

 

Sister.NET nasce dall’esigenza di avere un sistema generale di Cooperazione Applicativa tra Enti nel settore dell’Informazione Geografica che consenta la realizzazione progressiva di applicativi verticali che di volta in volta costituiscano la soluzione ad una problematica specifica.

L’idea di base del sistema è quella di costruire un Framework general purpose che serva allo scambio dati alfanumerici e GIS storicizzati tra postazioni locali ed un DB Centralizzato.

Il Framework è stato disegnato in modo generalizzato, flessibile ed estendibile in modo da non essere dipendente dalle strutture dei dati di business e dall’applicazione concreta che viene realizzata. Questo significa che tale framework può essere utilizzato da qualsiasi ente o struttura che opera con dati che devono essere aggiornati da più utenti in modo corretto, sia dal punto di vista logico che geometrico, e storicizzato.

Il diagramma seguente illustra i diversi contesti applicativi attualmente in via di sviluppo del Framework Sister.NET.

 

Una delle caratteristiche fondamentali dell’Architettura Progettuale è dato dalla modularità ed espansibilità del Sistema proposto.

Architettura del sistema
Torna al menu

 

La Provincia, ad esempio, gestisce il Sistema attraverso la costituzione di un Centro Servizi (CS) provinciale e si occuperà di recepire gli aggiornamenti fatti dai Comuni. Le procedure di scambio dati tra i Comuni e il CS avverrà in maniera periodica, tramite un meccanismo di cooperazione applicativa locale basato su porte di dominio. In questo modo ogni Comune potrà partecipare al sistema tramite gli strumenti che verranno messi a disposizione, ma allo stesso tempo rimarrà comunque il gestore dei dati di propria competenza.

Il Software di editing e gestione dati
Torna al menu

 

Il software di gestione possiede una tipica architettura di applicazione desktop standalone, il che garantisce il massimo della flessibilità. Ogni postazione di lavoro di editing è dotata di una applicazione di gestione dei dati e di un Personal Geodatabase. L’applicazione di gestione è composta da diversi moduli che permettono l’editing, la gestione delle versioni, la produzione di stampe, l’elaborazioni e l’analisi, ecc.

Per la costruzione del software di editing è stata scelta la tecnologia ESRI ArcGIS Engine. ArcGIS Engine mette a disposizione tutte le funzionalità di ArcGIS quali editing, reportistica e stampa, ricerca,elaborazione, ecc. Inoltre garantisce la portabilità e interoperabilità della soluzione all’interno dei SIT, nonché la piena compatibilità di accesso al Personal Geodatabase.

Con ArcGIS Engine si garantisce anche l’evoluzione del software alle future tecnologie e standard aumentando in questo modo il grado di robustezza della soluzione.

L’ambiente di sviluppo per l’applicazione scelto è Framework .NET. Questa è anche una tecnologia all’avanguardia altamente sviluppata che permette il massimo in quanto a integrazione e portabilità della soluzione proposta.

Le principali funzionalità del software sono :

  • Navigazione cartografica
  • Composizione di mappe
  • Interrogazione e ricerca
  • Storicizzazione
  • Stampa ed export
  • Strumenti di editing

     

     

     

L’interfaccia utente del software di gestione dati è composto da una finestra principale
contenente due tabs:

  1. Mappa, per accedere alle funzionalità di editing geografico
  2. Tabelle, per l’editing di dati alfanumerici

 

TAB_MAPPA

Nella parte sinistra è presente un tree che permette di visualizzare e selezionare i layers che compongono la mappa. Nella parte centrale è visualizzata la mappa vera e propria.

Nella parte superiore del tab è presente una toolbar contenente tutti i tools che permettono l’interazione con la mappa. I tools sono suddivisi in due categorie: tools di navigazione e tools di editing.

Tutte le operazioni su geometrie restituiscono risultati topologicamente corretti.

TAB TABELLE

All’interno di questo tab è possibile visualizzare ed editare i dati sia delle tabelle alfanumeriche che di quelle geografiche. Nella parte superiore è presente una toolbar contenente tool di editing e di gestione delle selezioni.

L’editing all’interno di questo tab è consentito solo per i dati alfanumerici.

Nella parte sinistra è presente una lista di tutte le tabelle.

Selezionando una tabella dalla lista, nella parte centrale vengono mostrati tutti gli elementi della tabella e vengono evidenziati i dati che sono stati selezionati nella mappa (nel caso di dati geografici) o tramite il tool di ricerca.

I dati sono navigabili, ovvero è possibile accedere agli elementi padre o figlio di un oggetto selezionato.

Gli oggetti possono essere modificati tramite una finestra di editing che varia in base alla tipologia di dato. Sono presenti inoltre funzionalità particolari per modificare le relazioni tra gli oggetti del database.

 

Interazione tra i due tabs

La parte geografica e quella alfanumerica sono strettamente correlate. Le selezioni effettuate all’interno di un tab vengono propagate all’interno dell’altro.

Il Software di interscambio
Torna al menu

 

Lo scambio dati fra il CS costituito presso la Provincia e i Sistemi Informativi Locali (Comuni) ha come scopo principale il mantenimento di un database centralizzato e aggiornato presso il CS.

Il software di interscambio dati ha il compito principale di consentire un flusso di dati dai comuni verso il Centro Servizi in modo controllato e automatizzato tramite i meccanismi della Cooperazione Applicativa locale.

Comunque sarà possibile anche il flusso di informazioni dal centro verso i nodi locali per scaricare aggiornamenti o revisioni.

Il software di interscambio è composto principalmente da due moduli, un nodo centrale (presso il CS) e da diversi gestori dati o terminali locali (dislocati presso i Comuni). La comunicazione con il nodo centrale avverrà tramite protocolli di collaborazione applicativa (XML e SOAP) accessibili tramite le porte di dominio oppure direttamente come Web Services.

Architettura del sistema di interscambio:

L’architettura del software di interscambio è una tipica architettura a tre tier :

  • Livello dati (costituito dal GeoDatabase centralizzato).
  • Livello application server (servizi web di scambio dati).
  • Livello client (terminale locale di scambio dati).

Livello dati:

Il livello dati è composto da un GeoDatabase che contiene tutta l’informazione dei Comuni in modo centralizzato. Questo database permette di gestire la concorrenza e la sincronizzazione fra le operazioni di aggiornamento e richieste di informazione. L’informazione contenuta in questo database può essere acceduta direttamente da altre applicazioni e sistemi, ad esempio, per la pubblicazione di informazione cartografica online (ArcIMS, ArcGIS Server) o per il processo, validazione ed elaborazione dati con gli strumenti tipici del GIS.

Livello application server:

Sono i servizi web che implementano la logica applicativa necessaria per lo scambio dati. I sevizi locali comprendono l’autenticazione, la profilazione, la sincronizzazione degli archivi, l’estrazione e l’importazione dei dati. Questa applicazione può essere acceduta tramite le porte di dominio o direttamente tramite protocollo SOAP.

Livello client:

È l’applicazione locale che accede direttamente al database locale per la sincronizzazione. Le richieste o notifiche di aggiornamento partono in modo esplicito dal terminale locale sotto richiesta dell’operatore.

Il Centro Servizi
Torna al menu

 

La realizzazione di un Centro Servizi per la Cooperazione Applicativa Locale ha come obiettivo la costituzione di una infrastruttura completa che garantisca il monitoraggio, l’interscambio dei servizi, delle informazioni e degli eventi e che soprattutto costituisca il prerequisito per mettere a fattor comune i servizi offerti.

Il Centro Servizi per la Cooperazione Applicativa Locale avrà lo scopo di esporre un elenco di servizi applicativi forniti dalle amministrazioni. Questi servizi seguono interfacce standard, che sono in grado di garantire il colloquio e l’erogazione di servizi dove sono coinvolti più enti.

La finalità del Centro Servizi per la Cooperazione Applicativa Locale è di rendere disponibili informazioni, servizi interattivi e transazionali a tutti i gli enti partecipanti.

Per quanto riguarda la strategia e le modalità di realizzazione dell’intervento è prevista la definizione di una architettura che abbia forti caratteristiche di scalabilità, standardizzazione e che consenta una implementazione graduale nel tempo ed una estensibilità progressiva sul territorio, ma che garantisca l’esigenza di sicurezza e affidabilità e tutte le esigenze relative al trasporto dei dati, alla sicurezza, alla cooperazione applicativa e all’accesso autenticato ai servizi.

La soluzione prevista prevede un elenco di interventi che oltre alla costituzione del Centro Servizi Locale in termini di infrastruttura, garantisca il riuso di servizi esistenti che insieme a quelli già previsti con i progetti e-Gov, completano il quadro aggiungendo i temi del territorio e dell’ambiente.

Procedura di scambio dati con il centro servizi
Torna al menu

 

Lo scambio dati fra CS (costituito presso la Provincia) e sistemi informativi locali (Comuni) ha come scopo principale il mantenimento di un database centralizzato e aggiornato presso il CS. Per garantirlo, qualsiasi protocollo o procedura si scambio deve essere ottimizzata in questo senso.
 

Bisogna considerare la modalità in cui vengono tipicamente trattate queste informazioni, la loro provenienza, la periodicità e i volumi di aggiornamento, nonché le condizioni di infrastruttura legati alla rete, capacità tecnica, ecc. Da una analisi semplice si evince che, in questo senso, a livello comunale c’è una grande diversificazione, pertanto emerge la necessità di adottare un meccanismo o vari meccanismi di scambio adatti a tutti quanti.

Le parole chiave da considerare per garantire la funzionalità effettiva sono:

Semplicità. Il meccanismo deve essere semplice nel suo utilizzo, nella sua gestione nonché nella comprensione logica del suo funzionamento.

Sicurezza. Il meccanismo deve garantire la trasmissione dei dati in sicurezza. Si deve garantire l’accesso solo a utenti riconosciuti e ai dati a cui si ha diritto. Si devono prevenire le manomissioni e il “furto” di informazione.

Robustezza Il meccanismo deve essere sicuro nel suo funzionamento e tollerante a eventuali malfunzionamenti della rete o hardware. Deve garantire in ogni momento l’integrità logica e fisica dei dati.

In parte questi requisiti vengono garantiti dal sistema di sicurezza della rete, dalle infrastrutture esistenti e dai software e sistemi di base, ma da un’altra parte deve essere la procedura stessa a supportare o garantire i requisiti.

Per questi motivi è stato scelto un meccanismo di replica di database che sta alla base di modelli di scambio standard quali il disconnected editing o offline database processing. Questi schemi prevedono un sistema complesso multi-tier dove un database centralizzato viene acceduto per aggiornamento o lettura tramite sporadiche connessioni che eseguono transazioni complete in modalità sincrona. In questo schema le applicazioni possiedono un’immagine del database o di parte di esso. Il lavoro della applicazione si svolge in modo scollegato finché non si invoca una richiesta di salvataggio o ripristino dei dati. In quel momento si effettua la connessione al database, e tramite una procedura di sincronizzazione e riconciliazione, che garantisce l'integrità, viene effettuata la transazione.

Questo schema ha i seguenti vantaggi rispetto a un meccanismo tradizionale connesso:

  • Diminuisce il traffico della rete ed il numero di connessioni.
  • Diminuisce il carico di lavoro del server trasferendo parte della gestione ed elaborazione sulla logica applicativa.
  • È indipendente dalle strutture dati su cui si opera (futuri cambiamenti del modello del database non influiscono sul sistema di scambio).
  • È intrinsecamente concorrente perché segue una politica di aggiornamento ottimistica.
  • È più tollerante a problemi di connettività della rete.
  • Garantisce il massimo della flessibilità nella configurazione multi-tier del sistema.

I momenti fondamentali di questo meccanismo sono la sincronizzazione e la riconciliazione.

Sincronizzazione:

Meccanismo tramite il quale una applicazione client verifica l’allineamento della copia locale del DB rispetto al database centrale. Come risultato si può ottenere un elenco di differenze di inserimento, modifica o cancellazione. Per ogni differenza è possibile verificare quale è la versione più aggiornata (nel tempo) o l’operatore associato alla modifica.

Riconciliazione:

È il meccanismo tramite il quale si decide come vengono risolte le differenze. In questo processo l’operatore (o il programma in modo automatico) decide di allineare i database trasferendo le informazioni dal database centrale verso quello locale e viceversa. Dopo la completa riconciliazione il database centrale è perfettamente allineato a quello locale.

Funzionalità del software di scambio
Torna al menu

 

Attivazione del servizio e autenticazione

L’attivazione del Servizio avviene attraverso la registrazione dell’Utente (credenziali, codici di registrazione, eventuale certificato ecc.). Invocando il software di scambio le credenziali dell’operatore (login e password) e codice di attivazione verranno inviate al server per l’autenticazione.

Sincronizzazione

Quando l’operatore invoca la connessione al server centrale si avvia il processo di sincronizzazione che permette di ottenere le differenze di allineamento fra i due database (quello centrale e quello locale).

Riconciliazione

La riconciliazione permette di trasferire le informazioni per allineare i database. Ogni singola differenza può essere ispezionata in modo che si possa decidere cosa fare.

Notifica di eventi

Ogni volta che i dati vengono aggiornati è possibile notificare tramite la pubblicazione di eventi Publish & Subscribe.

Tecnologia di riferimento
Torna al menu

 

Sister.NET è sviluppato con tecnologia ArcGis Engine di ESRI.ArcGIS Engine è il prodotto della famiglia ArcGIS che consente agli sviluppatori di utilizzare gli ArcObjects, ovvero le componenti software di base di ArcGIS, per creare applicazioni GIS personalizzate di tipo desktop oppure per integrare funzionalità GIS all’interno di applicazioni già esistenti.
Tramite ArcGis Engine è possibile:

  • Navigare, selezionare, tematizzare, editare dati geografici
  • Integrarsi con ambienti di programmazione (API) quali COM, Java, .NET
  • Utilizzare licenza propria o sfruttare la licenza di ArcGis Desktop esistente.