L Orchestration de Services Web avec Orchestra Goulven Le Jeune Orchestra Project Manager D1
Bull, Architecte d un Monde Ouvert : contributeur et acteur majeur de l'open Source Applications métiers Infrastructures Sécurité Infogérance Intégrateur Editeur Constructeur MIDDLEWARE HPC HA Stockage File Systems Bibliothèques D2
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Service D3
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Service D4
Orchestra Solution complète d Orchestration de Processus métier Basé sur le standard OASIS BPEL Open Source sur ObjectWeb depuis Nov 2006 Dernière version : 3.0 Logiciels Moteur d'orchestration de services Web Console d administration Outil graphique de définition de processus Outil graphique de monitoring des processus Utilisations possibles BPM associé à un moteur de Workflow humain (ex : Bonita) Architecture Orientée Service D5
Automatisation de processus inter ou intra organisation Orchestra, Une implémentation du standard BPEL Processus simples : ex. Transfert de document automatisé Services Composites : ex. frontal de deux applications business (ex. SAP & GCOS8) Processus de longue (mois) ou courte durée http://orchestra.objectweb.org D6
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Service D7
Exemple : Scénario S'inscrire au lycée Trouver un transporteur scolaire et s inscrire Faire une demande de bourse au conseil régional pour payer les transports Attribuée selon des règles données D8
Première solution Aller sur http://highschool S inscrire Aller sur http://cityhall S inscrire Entrer les références du lycée Récupérer le numéro de bourse Récupérer l adresse d une compagnie de transport Aller http://schoolbus S inscrire Entrer le numéro de bourse obtenu Terminé!! D9
Deuxième solution Aller sur http://highschool S inscrire Terminé!! Réservé au CR Change les règles d attribution de bourse Change la liste des compagnies de transport Réservé aux CB Récupère les demandes d inscription Effectue les inscriptions D10
Troisième solution : BPEL Aller sur http://highschool S inscrire Terminé!! Bus SI Intranet CB Requête Inscription Conseil régional SI Intranet CR Change les règles d attribution de bourse Change la liste des compagnies de transport D11
Orchestration de Services Web : problématique Des processus business de plus en plus complexes Plusieurs applications Exécution en parallèle Partenaires multiples Faisant intervenir des systèmes différents J2EE/.NET Besoin d évolution Changement de partenaires Changement de processus D12
WS-BPEL Business Process Execution Language Langage XML pour la description de processus Standard OASIS Basé sur les Web Services (WSDL) Fonctions basiques d un langage de programmation (sequence, flow, loop, switch ) Identification des instances de processus (correlation) Transactions de longue durée (scope, compensation) Gestion des fautes D13
Avantages de BPEL Interopérabilité Séparer la logique processus de la logique application Applications Business changent très peu Possibilité de changer le processus sans impact sur les applications Agilité de l entreprise Présenter le processus comme un service Invisible pour l utilisateur Processus de processus D14
Principe Composants Les services Web atomiques Le chef d'orchestre La partition Le client 3) Orchestration 2) Appel par un client et création d'une instance de processus 1) Déploiement de la partition (le fichier bpel) D15
WSDL et BPEL L interface WSDL définit : Les points d entrée et de sortie Les opérations spécifiques autorisées Les types de données et de messages pour décrire l information utilisée dans le processus BPEL décrit comment : Ordonner les opérations Contrôler la logique et l état Coordonner les interactions entre le processus et ses partenaires D16
Mise en place d un processus BPEL WSDL : Web Services Description Language Permet de décrire les interfaces des Services Web BPEL : Business Process Execution Language Langage d orchestration de Services Web.bpel.wsdl.wsdl Application cliente Moteur d orchestration Services orchestrés D17
Structure BPEL <process... > <variables> <variable name= msg messagetype=... /> </variables> <faulthandlers> <catch faultname=... >... <catch> <catchall>...</catchall> </faulthandlers> <sequence> <receive variable= msg... /> <invoke... /> <while condition=... > <assign>...</assign> </while> <reply variable= msg... /> </sequence> </process> D18
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Service D19
Orchestra : Description Software : Web Services Orchestration Engine Console d administration (jiapadmin) Outils graphique de définition de processus (Zenflow) Outils graphique de monitoring des instances processus (BPEM) D20
Designer Orchestra : Zenflow GUI pour designer des processus BPEL Génère des processus conforme au standard BPEL 1.1 3 vues : graphique, arbre, XML Log des erreurs D21
Console d administration Application Web J2EE (Struts) 4 rôles d administration : Administrator, Conceptor, Operator, User Même console pour Orchestra et Bonita D22
Outils de Monitoring : BPEM Monitoring en temps réel 3 vues : graphique, arbre, XML D23
Orchestra : Forces Support OASIS BPEL 1.1 A la fois pour le moteur BPEL que pour les interfaces graphiques Graphical User Interfaces Pour définir un processus (Zenflow) Pour monitorer les instances de processus (BPEM) Console de Management Incluse un outils de génération automatique de formulaire afin de pouvoir tester les processus Application J2EE construite au dessus de JOnAS Bénéficie des forces de JOnAS Mode Persistent : Permet de supporter les processus de longue durée, possibilité de relancer les instances en cours d exécution en cas de crash Mode non persistent : Pour de meilleures performances Déploiement à chaud de nouveau processus Support de modes de transport non SOAP (Binding Framework) D24
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Services D25
Développements en cours Support de BPEL 2.0 Eclipse plugin designer Basé sur Zenflow pour générer de processus conformes soit au standard BPEL 1.1 soit au standard BPEL 2.0 Intégré avec NovaStudio (ServiceView) Support de BPELJ Coopération Intégration avec Petals Coopération avec le consortium Orientware Orchestra 4.0 : «Orchestra Light» D26
Agenda Présentation d Orchestra WS BPEL Fonctionnalités d Orchestra Développements en cours Orchestra et Petals dans une Architecture Orientée Services D27
NovaStudio IDE Service Registry Service Service View View BPEL BPEL Designer Designer Workflow Workflow Designer Designer Flow Flow Designer Designer CIMERO CIMERO Portal BPEL Workflow Data Transfomation Rules OSGi JMS EJB Java Java Business Business Integration Integration WS Axis RSS Mail SIP JCA OSGi S E C U R I T Y M A N A G E M E N T D28
Venez-nous rencontrer (stand C21)! Nos nouveautés NovaForge : usine ouverte de développement logiciel NovaForge.org (version beta) : portail communautaire de promotion du libre SpikeSource-Bull : les stack open source industrialisés Agarik : hébergement Internet et Open Source Nos offres Libre Energie : les services open source de Bull Libre Bureau : le poste de travail libre NovaScale : les serveurs linux de classe mainframe Nos conférences Mardi 30 janvier, de 14h30 à 18h Migrer des solutions de supervision propriétaires vers l'open Source : retour d'expérience - Mercredi 31 janvier de 9h30 à 13h JOnAS 5 : serveur d'applications Open Source de nouvelle génération, Mercredi 31 janvier de 14h30 à 18h Le projet PRESTO : implémenter le protocole d'échange des administrations avec des logiciels libres. Déployer un Business Process Management en Open Source : retour d'expérience Un bureau mobile sécurisé avec Linux et l'open Source Jeudi 1er février de 9h30 à 13h Migrer d'un SGBD propriétaire vers du libre : quelle industrialisation? L'Orchestration de services Web avec Orchestra Simplifier l'administration de grappes Java EE : le projet Jasmine Le conteneur EJB3 EasyBeans et OSGi : l'alliance parfaite D29
Merci! Questions http://orchestra.objectweb.org Goulven.le-jeune@bull.net D30