2G, l’evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011 Andrea Carnevali R&D Director GESINF S.r.l. Il progetto 2G è il nome della piattaforma che consentirà l’evoluzione tecnologica delle attuali applicazioni Gesinf. Il progetto è iniziato 18 mesi fa, ed ha come obiettivo la realizzazione di una piattaforma con i seguenti requisiti: Architettura orientata ai servizi (SOA) Web 2.0 (RIA) Team Gov sarà la prima applicazione rilasciata con la nuova tecnologia. GESINF S.r.l. © 2011 - Tutti i diritti riservati Le criticità del Web 1.0 Allo stato attuale le applicazioni Web (1.0) ad uso gestionale non hanno garantito una usabilità sufficiente: • Interfaccia statica, interattività ridotta; • Problematiche di refresh e navigazione rigida; • Problematiche di compatibilità tra browser, elevati costi di manutenzione; • Irrisolte le questioni relative all’apertura al mondo esterno. Le esperienze in ambito Web/ASP non hanno dato i risultati attesi dagli utenti, se non per portali statici. GESINF S.r.l. © 2011 - Tutti i diritti riservati Web 2.0 A partire dalle problematiche prima indicate si è andato consolidando un nuovo approccio al Web, denominato Web 2.0 : • Interfaccia dinamica ad alta interattività; • Navigazione analoga ai programmi desktop; • Riduzione dei problemi di compatibilità; • Impiego delle architettura a servizi Web, funzioni utilizzabili da terzi anche senza interfaccia. Il livello di interfaccia è analogo a quello delle applicazioni Desktop. GESINF S.r.l. © 2011 - Tutti i diritti riservati Web 2.0 e Servizi Web Le interfacce Web 2.0 necessitano di un diverso approccio anche nell’interscambio di dati : • Reperimento di dati su linea Web, non compatibile con l’accesso diretto al database; • Presenza della logica di inserimento/modifica in servizi remoti gestiti dal server; Il client è delegato unicamente alle funzionalità di interfaccia. Le applicazioni Web 2.0 (Rich Internet Application) hanno esigenza di servizi di scambio dati. L’architettura ideale è rappresentata da una piattaforma basata sui servizi. GESINF S.r.l. © 2011 - Tutti i diritti riservati Architettura Attuale Team Gov è una applicazione client/server, composta da due «strati» (tier o layer) distinti : Layer del Database Contiene i dati e parte della logica Layer del database Team Client Contiene l’interfaccia e parte della logica Il programma è installato su un PC (Windows) e dialoga con il Database server tramite una rete locale. Il Database è utilizzato soprattutto come contenitore di dati e per la logica essenziale di inserimento/modifica. GESINF S.r.l. © 2011 - Tutti i diritti riservati Architettura Attuale • Il programma è installato sui PC locali. • L’uso in Internet è possibile solo tramite tecniche di teleprocessing, con server di tipo RDP. • Le applicazioni esterne interagiscono direttamente con il database, il controllo sulle operazioni lette/scritte è limitato e non è possibile lo scambio dati su Web. • Le funzioni del programma Esterna Team non possono essere messe a disposizione di terzi, se non la logica base contenuta nel database database. GESINF S.r.l. © 2011 - Tutti i diritti riservati Architettura a Servizi Tra il database e il client è presente un programma, di solito installato su un separato Application server, che interagisce con i dati per conto dei client. 2G Team Questo programma, il Strato database dei Service layer, è la Servizi «mente» del sistema: riceve comandi dai client Nel caso delle applicazioni e li traduce in operazioni Gesinf, questo è di lettura/scrittura di dati rappresentato da 2G applicando le regole di (service layer) business previste. GESINF S.r.l. © 2011 - Tutti i diritti riservati Architettura a Servizi Il ruolo del Service Layer : • Espone i comandi accettati dal sistema (servizi) e le regole di chiamata degli stessi. • Controlla che i servizi siano chiamati in accordo con le regole stabilite e trasforma i comandi in operazioni sui dati, applicando le regole applicative del caso. 2G • Esegue le operazioni Strato dei indipendentemente dal Servizi client, anche in modalità background (asincrona). database Team GESINF S.r.l. © 2011 - Tutti i diritti riservati Esterna SOA e Web Il ruolo del Service Layer : Client/Server • • • Il Client deve accedere fisicamente al database ed alle tabelle coinvolte nelle propria attività. E’ necessaria una comunicazione bi-direzionale (sincrona) sempre attiva. E’ sconsigliabile l’uso di linee Internet, per le difficoltà di controllo del traffico e di ottimizzazione degli accessi. GESINF S.r.l. © 2011 - Tutti i diritti riservati Web Services • • Il Client è fisicamente e logicamente separato dalla base dati. E’ possibile la comunicazione efficiente via Web. Uso del Web Problematiche e risoluzione Presenza di utenti remoti (sistemi dipartimentali) Problematiche di compatibilità con dispositivi/browser Problematica di sicurezza della infrastruttura del CED Problematiche di installazione locale GESINF S.r.l. © 2011 - Tutti i diritti riservati Sistema Web con ottimizzazione del flusso dati (per linee lente) senza esigenza di ricorrere a tecniche RDP Sistema indipendente dal browser ma utilizzabile sul maggior numero possibile di dispositivi (compresi, in futuro, i dispositivi mobile) Impiego esclusivo di protocolli http/https Utilizzo del browser Uso del Web Vantaggi del sistema RIA Strumenti di interfaccia Form interattive Form complesse Durata Sessioni Interfaccia grafica GESINF S.r.l. © 2011 - Tutti i diritti riservati Sistema a finestre per la navigabilità (finestre simultanee e modali); Impiego di combo e liste relazionate. Uniformità di interfaccia Possibilità di cambiare gli oggetti sulle form in tempo reale sulla base degli input utente, senza refresh Gestione a pannelli, linguette, form separate. Nessuna problematica di scadenza della sessione lato utente Disponibilità di componenti per la grafica di business, integrata ai dati applicativi Apertura al mondo esterno Architettura a servizi Accesso da applicazioni esterne (anche remote) Servizi Web in tempo reale sui dati. Responsabilità e controllo Tracciamento delle attività. delle attività Standardizzazione dei protocolli Specifiche di interscambio, uniformità dei metodi Logica specifica di interscambio GESINF S.r.l. © 2011 - Tutti i diritti riservati Protocollo standard (SOAP). strutture standard ma sufficientemente elastiche (XML/XSD dinamici). Strutture auto-descrittive; Incapsulamento della logica di business in oggetti autonomi. Personalizzazione delle restrizioni applicative Prestazioni Vantaggi dell’architettura a servizi Minore carico per il database. Minore traffico di rete Tecniche native per la riduzione delle attività del database (join selettive, limiti alla numerosità dei record/campi in base al contesto); riduzione del flusso dati sulla linea di comunicazione Scalabilità e ottimizzazione Tecniche per la riduzione della scambio dati (cache server e client). Scalabilità degli application server con possibilità di load balancing automatico Report in background Esecuzione asincrona dei Report con separato Print Server; gestione delle code per l’esecuzione seriale/parallela controllata e idonei strumenti di interfaccia. GESINF S.r.l. © 2011 - Tutti i diritti riservati Alcune Funzionalità Built-in • Strumenti utente (dati correnti, layout, gruppi, copia-incolla…) • Messaggistica di sistema e utente asincrona • Aspetto (leggibilità) e colori personalizzabili • Allegati elettronici nativi, con trasferimento in streaming • Report e procedure in background, con coda ottimizzata • Tracciabilità globale dei comandi • Profili utente multipli e definibili su oggetti in tempo reale GESINF S.r.l. © 2011 - Tutti i diritti riservati Strumenti per l’accesso esterno • Accesso interno alle proprietà degli oggetti • Servizi auto-documentati (WSDL e XSD) basati sul profilo applicativo/utente • Limitazione dell’accesso ai dati, qualitativo e quantitativo • Tracciamento dei servizi e degli stati interni, responsabilità del dato • Logica di business incapsulata nei servizi, indipendenza dalla base dati • Configurazione applicativa personalizzabile • Possibilità di riscrivere parti di interfaccia GESINF S.r.l. © 2011 - Tutti i diritti riservati Architettura di Impiego Lato Server GESINF S.r.l. © 2011 - Tutti i diritti riservati Print & Batch Server Log Model Data MS Windows ... Archive Server applicativi auto-scalabili. Print & Batch Server autoscalabili. ISAPI o EXE http/https. Eventuale load balancing automatico. Archive Database Server Resource Application Server Print Agent Log ... Model Data Application Server MS IIS MS IIS Servizio ISAPI Servizio ISAPI Servizio ISAPI Print Agent ... Web htpp/https (SOAP) ... Batch Agent Application Server MS Windows Servizio EXE ... Print Agent LAN (SOAP) Architettura Tecnica Database di Modello GESINF S.r.l. © 2011 - Tutti i diritti riservati RoadMap Disponibilità e commercializzazione • E’ in corso il completamento delle funzionalità base di TEAM Gov (entro il primo trimestre 2012). • Il piano prevede la conversione dell’intera suite nel corso del 2012, con priorità ai moduli/funzioni oggetto di interesse nel corso dell’anno. • I moduli SOA/RIA potranno coesistere con le attuali applicazioni, che continueranno ad essere commercializzate e sviluppate parallelamente alla nuova piattaforma. • Lo strato dei servizi SOA (interoperabilità) può essere impiegato indipendentemente dall’interfaccia Web. GESINF S.r.l. © 2011 - Tutti i diritti riservati Grazie per l’attenzione! GESINF S.r.l. © 2011 - Tutti i diritti riservati