Tesi di Laurea Specialistica in Ingegneria Informatica

19
Università degli studi di Firenze Facoltà di ingegneria - Corso di Laurea Specialistica in Ingegneria Informatica Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Tesi di Laurea di: Lorenzo Paladini Relatori: Prof. Dino Giuli Prof. Alessandro Fantechi Anno Accademico 2012/2013 Correlatore: Ing. Federica Paganelli Ing. Terence Ambra

description

 

Transcript of Tesi di Laurea Specialistica in Ingegneria Informatica

  • 1. Universit degli studi di Firenze Facolt di ingegneria - Corso di Laurea Specialistica in Ingegneria Informatica Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Tesi di Laurea di: Lorenzo Paladini Relatori: Prof. Dino Giuli Prof. Alessandro Fantechi Anno Accademico 2012/2013 Correlatore: Ing. Federica Paganelli Ing. Terence Ambra
  • 2. 2 Introduzione Service Delivery Platform (SDP) Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Lanalisi dei lavori presenti in letteratura ha evidenziato differenti approcci che dimostrano tuttavia vincoli legati a scelte tecnologiche obbligatorie (servizi di telecomunicazioni forniti da ambienti IMS o JSLEE, Web Services). Limiti stato dellarte Piattaforma per lintegrazione di servizi Web e di telecomunicazione.Cos
  • 3. 3 Obiettivi della tesi Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Realizzare una piattaforma che non sia soggetta a nessun vincolo di implementazione e svincolata da una qualsiasi tecnologia in particolare. 2. Gestire la composizione di servizi eterogenei (telecomunicazioni e web) forniti da differenti providers. 3. Testare la piattaforma su un caso specifico (Expert On Call service).
  • 4. 4 Architettura piattaforma Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Base Services Service Creation Environment Service Execution Environment Workflow language Workflow Engine Service Selector Concrete Services Service Repository
  • 5. 5 BPMN 2.0 Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. BPMN 2.0 non legato a particolari architetture a differenza di BPEL (SOA) ed facilmente utilizzabile dagli utenti di business. 2. la notazione di BPMN 2.0 standardizzata, pi semplice e leggera. 3. Il trend di utilizzo attuale premia nettamente BPMN 2.0. Base Services Workflow language Workflow Engine Service Selector Concrete Services Service Repository
  • 6. 6 Workflow Engine Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. E stato scelto jBPM. 2. Basato su standard BPMN 2.0. 3. Attivit identificate dai workitem. 4. jBPM estendibile: customizzazione workitemhandler. 5. Leggero e orientato a utenti di business e sviluppatori. Base Services Workflow language Workflow Engine Service Selector Concrete Services Service Repository
  • 7. 7 Base Services Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Servizi astratti: definizione di interfacce standard per tipologia di servizio. 2. Workitem come servizio astratto che non include le info di binding (protocollo, endpoint, ecc ..). 3. Definizione di un Workitemhandler per ogni tipologia di servizio. Base Services Workflow Engine Service Selector Concrete Services Service Repository Workflow language
  • 8. 8 QoS Selector & Service Repository Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Gestisce la QoS sulla base dei requisiti dellutente (priorit, tipo utente) e dei parametri di qualit dei servizi (affidabilit, durata). 2. Viene invocato dal Workitemhandler. 3. Effettua una lookup del servizio concreto sul Service Repository. Base Services Workflow Engine Service Selector Concrete Services Service Repository Workflow language
  • 9. 9 Servizi concreti Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Web Services implementati con EJB e JAXWS. 2. Servizi di telecomunicazione implementati con Mobicents JSLEE (Third party call e Messaging SIP). 3. Ciascun servizio concreto registrato nel Service Repository. 4. Ogni servizio associato a parametri di qualit. Base Services Workflow Engine Service Selector Concrete Services Service Repository Workflow language
  • 10. 10 Obiettivi della tesi Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Realizzare una piattaforma che non sia soggetta a nessun vincolo di implementazione e svincolata da una qualsiasi tecnologia in particolare. 2. Gestire la composizione di servizi eterogenei (telecom e web) forniti da differenti providers. 3. Testare la piattaforma su un caso specifico (Expert On Call service).
  • 11. 11
  • 12. 12 Expert On Call - Ricerca collega in Action Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Utente che richiede il servizio Collega trovato
  • 13. 13 Test prestazionali - Ambiente Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Intel Core i7 2630QM (4C/8T) 12GB DDR3 JBPM Intel Core i7 860 (4C/8T) 8GB DDR3 MySQL SLEE container EJB container Testare le prestazioni della piattaforma Lo scenario di riferimento la Ricerca del collega. Sono stati simulati 8 utenti che contemporaneamente effettuano un numero crescente di richieste ( 650 max ).
  • 14. 14 Test prestazionali - orchestrazione statica Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Media Deviazione Standard # richieste ms ~ 700 ms 350 richieste > 350 richieste
  • 15. 15 Test prestazionali - JBPM Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Media Deviazione Standard # richieste ms ~ 1200ms 250 richieste > 250 richieste
  • 16. 16 Test prestazionali - VS Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Workflow GetMember # richieste Differenza percentuale
  • 17. 17 Smart Santander Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Ricerca dei parcheggi disponibili Controllo dei sensori di irrigazione
  • 18. 18 Conclusioni Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE 1. Realizzata una piattaforma che non sia soggetta a nessun vincolo di implementazione legato ad un ambiente di esecuzione specifico per i servizi per la convergenza del mondo TLC col Web. 1. Scelta di un linguaggio di workflow non legato a particolari architetture (BPMN 2.0). 2. Scelta di un motore di workflow in grado di interpretare ed eseguire il linguaggio scelto (jBPM). 3. Esteso il concetto di workitem a tipologia di servizio (astrazione). 4. Realizzati i servizi astratti attraverso la customizzazione dei workitemhandler standard di jBPM. 5. Implementato ed integrato nel motore un QoS selector in grado di selezionare i servizi concreti sulla base dei requisiti dellutente (priorit, tipo utente) e dei parametri di qualit dei servizi (affidabilit, durata). 2. Implementazioni varie: MySQL,Third Party Call ( RFC 3725 ) e SIP MESSAGE ( RFC 3428 ) (Mobicents JSLEE), Recupero utente, Ricerca collega, Aggiunta utente, Cancellazione utente (EJB-JAXWS), Web Application per accedere ai servizi di Expert On Call (JSP + Servlet).
  • 19. 19 Sviluppi futuri Lorenzo Paladini - Piattaforma per la composizione di servizi web e di telecomunicazioni basata su BPMN e JSLEE Indagare ulteriormente sul comportamento anomalo di jBPM riscontrato. Estensione del QoS selector per ampliare le possibilit di selezione dei servizi concreti: Aggiunta di ulteriori metriche di QoS per la selezione dei servizi. Negoziazione con la rete per livelli di QoS adatti per il tipo di traffico. Test pi approfonditi per definire meglio i limiti delle tecnologie utilizzate (macchine di test migliori). Test di esercizio con lutilizzo di un numero considerevole di dispositivi mobili. Test funzionali e prestazionali degli scenari di utilizzo implementati per il progetto europeo Smart Cities ( Smart Santander ).