Frameworks Di Sviluppo Java EE E SOA I Progetti Spago E Spagic
Total Page:16
File Type:pdf, Size:1020Kb
Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Frameworks di sviluppo Java EE e SOA I progetti Spago e Spagic Testimonianza di: Gianfranco Boccalon [email protected] 1 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Introduzione ai Framework • COS’E’ UN FRAMEWORK Un framework è un’applicazione “semi-completa”, riutilizzabile che può essere specializzata per produrre applicazioni specifiche • VANTAGGI – Modularità – Riusabilità – Estensibilità – Inversione del Controllo 2 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Spago • DEFINIZIONE: SPAGO è un framework J2EE, sviluppato secondo il pattern architetturale MVC , che fornisce una soluzione per lo sviluppo di applicazioni “multicanale/multiprotocollo ” e l’integrazione di servizi. Consente lo sviluppo di applicazioni Web, l’integrazione con infrastrutture esistenti e la pubblicazione di servizi su canali diversi. 3 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Confronto con altri framework Esistono molti framework Open Source per lo sviluppo di applicazioni Web, alcuni dei quali molto specializzati su determinate fasi dello sviluppo (disegno dell’interfaccia grafica, sviluppo della logica di business, etc). Java Server Faces 4 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Il futuro di Spago L’evoluzione di Spago è inoltre indotta dai nuovi progetti che ne faranno uso (il primo è SpagoBI, una piattaforma per la Business Intelligence) Esiste una roadmap evolutiva di Spago sul sito http://spago.eng.it 5 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi Goals A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Spagic: a Free Open Source SOA/BPM Enterprise Integration Platform Key points Business Actor SOA/BPM Governance Pragmatic approach to end user’s E projects through the best choice of the ls n t o e single engines/components o r T p r l i a s u e is M Capabilities V o l n a Efficiency of all the actors involved in Component it ic o n r integration processes h Services & c Enterprise Monitoring & Management e M T a n & a ic g t e ly m a e n BPM ESB n A t Analytic Actor SOA Governance Technical Actor 6 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica The reference model: Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Process Integration Platform Business logic Business Services Catalog Busin. Busin. Busin. Busin. Busin. Layer Service Service Service Service Service 1 2 3 … … UDDI/EBxml Integration - Layer ESB WS/SOAP FILE FTP JMS TCPIP Communication layer ….. BUS Monitoring & Management External System Layer BPM LightLight OrchestrationOrchestration HumanHuman DataData OrchestrationOrchestration ActivityActivity IntegrationIntegration SA BPEL WF ETL 7 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica SOA/BPM platforms Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Spagic Service Manager Nova Orchestra Nova Bonita JBPM (Workflow & BPEL) JBI SA ServiceMIX BPEL Workflow Petals ESB ESB Communication JBossESB Node node Layer ETL JBI & SCA SA Custom (e.g. Listener Spring, Spago., ..) BPM Layer Listener SOA/ESB Layer Apache ODE ActiveBPEL MetaDB Talend Open Studio SCA SA (Tuscany) Pragmatic approach : different products/technologies available 8 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Actors’ Efficiency: Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Spagic Visual Tools Business logic implementation Business Process Modeling Notation (BPMN) Insert information for monitoring and management BPMN Technical Processes Definition & Deploy Rules, policy,.. Spagic Eclipse STP MetaDB JBI IM SCA BPEL JBI SA Workflow SCA WF BPEL ETL ETL Editor Designer Design. Design Deploy Developer Implementation Custom code Scripting - rules definition (rules engine) Mapping & transformation Custom Mapping & drools code transform. SOA/BPM Governance : Support Collaborative Activities Pragmatic approach : bridge from BPMN to different and alternative engines 9 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Goal: Struttura e Configurazione di Sistemi Liberi A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Enterprise Monitoring Real Time SOA/BPM Management and Runtime Governance SLA Monitoring: SLA correlates system, process and business MetaDB (real time) Data Warehouse SOA/BPM Governance : Support Collaborative Activities Pragmatic approach : Enterprise Monitor with support of different engines/technologies 10 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi Spagic & A.A. 2007-2008 www.math.unipd.it/~ruffatti/ Eclipse STP Intermediate Model Bridges different SOA Platforms Facilitates interoperability between editors Analytics Analytics BPMN SCA …… Editor Editor Editor Spagic Studio Enterprise Meta Model Meta Meta Model Meta Monitor MetaDB Eclipse Modeling Framework SCA Spring Workflow ETL BPEL JBI Third parties Third Third parties Third plugin plugin plugin plugin plugin plugin SCA Workflow Talend Eclipse Editor Editor Open St. BPEL editor SCA J2EE Workflow J2EE/JBI BPEL JBI Container Container Engine Container Engine Container 11 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi Spagic collaboration & partnership A.A. 2007-2008 www.math.unipd.it/~ruffatti/ MetaDB (real time) Eclipse IM Data Warehouse ServiceMIX BPEL Workflow ESB ESB Communication Node node Layer ETL JBI & SCA SA PeTALS Listener BPM Layer Listener SOA/ESB Layer JBossESB Nova Orchestra Talend Open Studio JBPM (BPEL & Nova Bonita Workflow) Jasmine 12 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l The 2007-2008 Agile ESB www.math.unipd.it/~ruffatti/ l Apache Servicemix Standards Based Flexible Reliable The Agile ESB Breadth of connectivity Standards based Flexible Reliable Breadth of Connectivity Courtesy of IONA Technologies 13 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable Java Business Integration Breadth of connectivity Integration Systems Plug-In Components WSDL Decoupling Courtesy of IONA Technologies 14 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable JBI 1.0: architecture Breadth of connectivity Courtesy of IONA Technologies 15 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable JBI 1.0: WSDL messaging Breadth of connectivity model Abstract model Concrete model Service providers Service Consumers Courtesy of IONA Technologies 16 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable JBI 1.0: Normalized Breadth of connectivity Message Router Normalized Message Runtime Endpoint Activation Delivery Channel Service Invocation using MEPs Addressing Endpoints Courtesy of IONA Technologies 17 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable JBI 1.0: Invocation Breadth of connectivity example Courtesy of IONA Technologies 18 2.5 Italia License [Framework di sviluppo – I Progetti Spago e Spagic] Laurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi A.A.l Java 2007-2008 Businesswww.math.unipd.it/~ruffatti/ Integration l Apache Servicemix Standards Based Flexible Reliable JBI 1.0: Packaging Breadth of connectivity META-INF/jbi.xml Components Shared Libraries Service Units Service Assemblies Courtesy of IONA