MicroBPEL un motore per lorchestrazione di processi su palmare Paola SANDRINELLI Matteo SANSALONE Politecnico di Milano Facoltà di Ingegneria dellInformazione.

Slides:



Advertisements
Presentazioni simili
XmlBlackBox La presentazione Alexander Crea 11 Aprile 2010 La presentazione Alexander Crea 11 Aprile 2010.
Advertisements

2006 KILOG KIMO la soluzione per il Mobile Office Gabriele Ottaviani Product Manager
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Profilazione d’utente nei sistemi di e-commerce
CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
PHP.
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
XmlBlackBox La presentazione Alexander Crea 7 Giugno 2010 La presentazione Alexander Crea 7 Giugno 2010.
2 luglio 2006URM2 – ING- OOP0304 OL G. Cantone e A. Lomartire 1 Programmazione Orientata agli Oggetti Processi, task e thread Java (ed esempi) Università
Pernici Barbara Politecnico di Milano Master Universitario di II livello in Tecnologia dell'Informazione.
WP 2 E-service Politecnico di Milano Università di Roma La Sapienza Università di Milano Bicocca Engineering.
Progetto realizzato da: Francesco Seccia Matr Marco Spinelli Matr
Argomenti avanzati di sistemi informativi A Coreografia e orchestrazione dei web services Quattrocchi Salvatore Matr
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Struttura dei sistemi operativi (panoramica)
I Thread.
CAPITOLO 2 INTRODUZIONE AL LINGUAGGIO JAVA E ALL'AMBIENTE HOTJAVA.
memoria gestita staticamente:
Sistemi Operativi GESTIONE DEI PROCESSI.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
Daniel Stoilov Tesi di Laurea
SARAH Shop Assistant in Reti Ad-Hoc Presence Awareness, modalità disconnessa e dinamiche di update Antonio Gaetani.
Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri.
High-Available Service Manager Diego Costantini Università degli studi di Bologna Corso di Laurea Specialistica.
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Distributed File System Service Dario Agostinone.
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
KIMO la soluzione per il Mobile Office
Progetto di Reti di Calcolatori L-S Orchestrazione di servizi WEB
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
BROKER SERVER Progetto di Ingegneria del Web 2008 Alessio Bianchi Andrea Gambitta Giuseppe Siracusano.
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Sistemi Informativi sul Web
Verifying Web Service Composition
Marco De Zorzi Matricola Manuel Fossemò Matricola Yanick Fratantonio Matricola Massimiliano Gentile Matricola TALKING PAPER.
Presentazione del problema Obiettivo: Lapplicazione di Search of Sematic Services permette di ricercare sevizi semantici, ossia servizi a cui sono associati.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
I processi.
Progetto RE.VE.N.GE. CORBA REliable and Versatile News delivery support for aGEncies Realizzazione del Sistema di Consegna UNIVERSITA’ DEGLI STUDI DI BOLOGNA.
Architetture a componenti Java per la realizzazione di DSS distribuiti Giordano Vicoli - ENEA 28 Ottobre 2003.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Producer – Consumer System Di Carlo Matteo CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS A.A. 2004/2005.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Università degli Studi di Roma “Tor Vergata”
Progetto di Ingegneria del Web Anno Accademico 2007/2008 Stefano Pigiani Bruno Ricci Marco Ruzzon.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 1 - Domain Name System Ernesto Damiani Lezione 2 – Caratteristiche.
Supporto per la replicazione attiva di servizi Progetto per il corso di Reti di Calcolatori LS Montanari Mirko Matr:
Proxy-Based Infrastructure for LBS Tailoring Reti di Calcolatori LS – Prof. A. Corradi Presentazione di: Roberto Amici Gruppo: Roberto Amici Alessandro.
Bonjour Post-It servizio di post-it distribuito di Elisa Rondini.
Java Distributed Event Service Bringing events to J2EE platform Università degli studi di Bologna Corso di Laurea Specialistica in Ingegneria Informatica.
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Business Process Management Orchestrazione di Web Service basata su standard BPEL per la realizzazione di un servizio di tour operator Università degli.
Università degli Studi di Firenze Facoltà di Ingegneria Dipartimento di Sistemi e Informatica Corso di Laurea in Ingegneria Informatica Modelli e strumenti.
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
Eprogram informatica V anno.
Integrazione con e /. Integrazione e/ - Banche24 Aggiornamenti previsti nel 2012 Sono previsti due momenti di rilascio per le funzionalità di integrazione.
Sviluppo ed implementazione di un software per il car pooling
12 dicembre Analisi di sicurezza dell’applicazione SISS Security Assessment dell’applicativo e Reversing del client.
Le basi di dati.
SISTEMA GESTIONE TOMBINI
Risultati Leapfrog IP per una comunicazione sicura e affidabile Cristiano Novelli ENEA, XML-Lab.
Transcript della presentazione:

MicroBPEL un motore per lorchestrazione di processi su palmare Paola SANDRINELLI Matteo SANSALONE Politecnico di Milano Facoltà di Ingegneria dellInformazione Corso di Laurea Specialistica in Ingegneria Informatica Milano, 7 aprile 2006

Sommario Obiettivi Limitazioni Pattern supportati e modifiche al linguaggio WS-BPEL Architettura ed implementazione Caso di studio e demo Conclusioni

Obiettivi Interpretazione di un sottoinsieme proprio di costrutti WS-BPEL Esecuzione concorrente: di più istanze di processo di più attività WS-BPEL Realizzazione di un orchestratore di processi WS-BPEL per palmare:

Unione di due linguaggi: WSFL e XLANG Per comporre più web service per formare un unico servizio più complesso Due tipi di attività: Semplici: attività esecutive e per la gestione dei web service Complesse: attività per la gestione del flusso esecutivo Gestione delle variabili Gestione degli errori WS-BPEL Linguaggio per la composizione e il coordinamento di web service Tipologie: Messaggio WSDL Tipo Semplice XML Schema Elemento XML Schema Utilizzate nella gestione dei web service e per la valutazione di condizioni Possono essere manipolate Fault Handlers Compensation Handlers Le eccezioni sono generate: Attraverso messaggi di errore Esplicitamente

Ambiente mobile Rete Autonomia Capacità elaborativa Memoria Display e interazione con lutente Limitazioni: Velocità inferiore rispetto ai desktop Forti limitazioni alle funzionalità fornite Rispetto ai palmari di vecchia generazione lautonomia si è ridotta Aumento di funzionalità e prestazioni Indicazioni dei produttori poco affidabili Riferite a condizioni di utilizzo poco aderenti alla realtà Problemi con contenuti pensati per monitor tradizionali Ordine di presentazione delle informazioni Ambiente con elevate probabilità di disconnessione Discontinuità delle prestazioni dovute a fattori esterni incontrollabili Sicurezza RAM non volatile funge da hard disk Numero limitato di applicazioni e dati immagazzinabili Slot di espansione

La J2ME non prevede la possibilità di far funzionare unapplicazione come server Non cè una maniera diretta per invocare un dispositivo dallesterno principale profilo utilizzato insieme a CLDC Insieme di librerie e di API fondamentali per lo sviluppo di applicazioni per dispositivi mobili in abbinamento ad altre librerie aggiuntive per offrire un ambiente di sviluppo completo J2ME CLDC 1.1 MIDP 2.0 Librerie aggiuntive: J2ME Web Services 1.0 Optional Package (JSR-172) PDA Optional Package (JSR-75) Versione alleggerita ed ottimizzata della J2SE appositamente studiata per dispositivi mobili Limitazioni: Comunicazione Librerie aggiuntive Si adatta a dispositivi: dalle capacità limitate connessi alla rete in modalità wireless e discontinua Supporto limitato alle librerie J2SE Librerie aggiuntive per il supporto di alcune funzionalità Difficoltà di reperimento delle librerie necessarie per utilizzare le funzionalità aggiuntive sul dispositivo JSR-172 Per effettuare il parsing di documenti XML Per accedere a web service remoti basati su SOAP e XML JSR-75 Per navigare nel file system del dispositivo mobile Per accedere alle informazioni personali sul dispositivo

WP1 Sequence WP2 Parallel Split WP3 Synchronization WP4 Exclusive Choice WP5 Simple Merge WP6 Multi-Choice WP7 Synchronizing Merge WP11 Implicit Termination WS-BPEL modificato Workflow Pattern supportati: WP12 MI without Synchronization WP13 MI with a Priori Design Time Knowledge with Synchronization WP16 Deferred Choice WP17 Interleaved Parallel Routing WP19 Cancel Activity WP20 Cancel Case

WS-BPEL modificato Variabili: eliminato il tipo <element> CorrelationSet: eliminati perché il modello comunicativo non li richiede CompensationHandler: eliminati per avere ununica modalità di gestione degli errori EventHandlers: eliminati per evitare linterruzione improvvisa del flusso esecutivo Invoke: eliminata la possibilità di annidarle Assign: limitate le possibilità di copia Wait: eliminati i tempi dattesa specificati con deadline Flow: eliminato il costrutto <link> per evitare uneccessiva complessità del flusso esecutivo Pick e Scope: eliminate per evitare uneccessiva complessità del flusso esecutivo

Generazione di modelli di processo di documenti WS-BPEL Esecuzione di istanze di processo Recovery di istanze di processo Macrofunzionalità offerte da MicroBPEL: Architettura generale

Process creator Creazione del modello di processo a partire dal file WS-BPEL e dai file WSDL XML PARSER: parsing del documento WS-BPEL e creazione del modello dati WSDL MANAGER: verifica che i web service da invocare siano tra quelli per cui esiste uno stub

Process creator - parser Sottoinsieme delle funzionalità JSR-063 JAXP 1.2 LAPI fornita da questa libreria è detta SAX Fornisce un parser di tipo: Streaming Push Per associare determinate azioni agli elementi rilevati dal parser è necessario estendere la classe DefaultHandler J2ME Web Services 1.0: Streaming: Analisi del documento sequenziale Output generato immediatamente Richiede poche risorse No ricerche specifiche Push: manda informazioni al client ogni volta che incontra un particolare elemento

Opportune strutture dati che estendono la classe WSBPELData memorizzano il contenuto di: NameSpace PartnerLink Partner Catch Variable Attività memorizzate in una particolare struttura dati chiamata ActivityNode Process creator - struttura dati ActivityNode: Struttura ad albero Richiama la struttura dei documenti XML Liste multiple Attività strutturate come collezione di altre attività (ChildList)

Richieste di istanziazione Chiamata Remota Il chiamante si collega al Web Server Un apposito script gestito da CGI raccoglie e memorizza dati inseriti e indirizzo del chiamante in un file Il Message Reader legge il file ad intervalli regolari Le eventuali richieste trovate vengono passate allInstance Manager che si occupa di istanziazione ed esecuzione del processo Auto Chiamata Il chiamante è lutilizzatore stesso del palmare Esecuzione di qualsiasi processo WS-BPEL residente sul palmare per cui sia stato generato un modello Inserimento diretto dei dati necessari alla generazione di unistanza di processo

Instance manager Gestisce una o più istanze di processo eseguendo le varie attività che lo compongono e prendendo eventuali decisioni Comunica con i web service remoti tramite il WS MANAGER

Instance manager - esecuzione ExecutionInfo ActivityThread AbortFlag Invocazione Web Service Creazione di una copia di tutte le variabili per salvare i valori attuali dellistanza di processo Nellesecuzione del processo saranno utilizzate soltanto queste Thread specifici per ogni tipo di attività Per le attività complesse necessari meccanismi di sincronizzazione, ActivitySynchronizer Meccanismo utilizzato per propagare uno stato di errore Causa la terminazione immediata delle attività che lo rilevano Generazione automatica di stub Servizi invocabili

Recovery Gestisce lo stato dei processi in esecuzione Gestisce lo stato di ogni attività di un processo Garantisce la persistenza delle variabili di un processo in esecuzione Permette di effettuare il recovery di processi conclusi per cause di forza maggiore

Caso duso Processo per la prenotazione di voli Inserimento parametri per la ricerca Visualizzazione dei risultati Scelta del volo Visualizzazione costi Decisione Accettazione e inserimento dati pagamento Rifiuto Notifica della conclusione della transazione

Caso duso - demo

Conclusioni Obiettivi raggiunti: Realizzazione di un motore per lorchestrazione di processi WS-BPEL su palmare Gestione di un sottoinsieme proprio di costrutti WS-BPEL Sviluppi futuri: Gestione di costrutti non supportati Adeguamento alle nuove specifiche WS-BPEL

Grazie per lattenzione Milano, 7 aprile 2006