advertisement

Presentation bpel

100 %
0 %
advertisement
Information about Presentation bpel
Technology

Published on February 20, 2014

Author: AnasseEj

Source: slideshare.net

Description

Business Process Execution Language (ou BPEL, prononcé « bipeul », ou « bipèl »), est un langage de programmation destiné à l'exécution des procédures d'entreprise. Le BPEL est issu des langages WSFL (Web Services Flow Language) et XLANG, et est dérivé du XML.
advertisement

2 Plan 1. Introduction 2. BPEL, c'est quoi ? 3. BPEL, quelle utilité ? 4. BPEL par l’exemple : HelloWorld 5. BPEL : partie statique et dynamique 6. Activités BPEL 7. Conclusion

3 PROBLÉMATIQUE : SCÉNARIO  Réservation billet d’avion 1. Consulter la liste des vols (Recherche). 2. Choisir le vol que vous souhaitez. 3. Réserver le billet d’avion. 4. Paiement en ligne du billet.  Chercher un hôtel pour le séjour. 1. Faire une recherche sur les hôtels, 2. Choisir l’hôtel que vous souhaitez. 3. Faire une réservation du nombre des jours. 4. Paiement d’une partie de montant en ligne.

4 PROBLÉMATIQUE : SCÉNARIO  Location d’une voiture 1. Consulter le site web d’une agence de location 2. Choisir la voiture souhaitée 3. Réserver cette voiture pour la période souhaitée. 4. Paiement en ligne d’une somme du montant.

5 Problématique : Solution 1 Site web 1 Site web 2 Site web 3 SI compagnie aérien SI hôtel SI agence de location

6 Problématique : Solution 2 1 SI compagnie aérien 2 SI hôtel 3 Moteur d’orchestration SI agence de location

7 BPEL, c'est quoi ? Business Process Execution Language (ou BPEL, prononcé « bipeul », ou « bipèl ») est un langage de programmation destiné à l'exécution des procédures d'entreprise. Procédures d'effectuer (Workflow). d'entreprise : est la une activité ou un manière spécifiée processus métiers  Le processus représente le Quoi ?  La procédure représente le Qui fait Quoi ? Où ? Quand ? Comment ? Combien ? Et Pourquoi

8 Problématique  Processus métiers sont de plus en plus complexes  Applications multiples à intégrer  Fort besoin de paralléliser les processus  Partenaires à intégrer sont nombreux  Hétérogénéité des langages due aux plateformes de développement  Java  .NET  PHP  Fort besoin d’évolution des processus  Partenaires peuvent évoluer  Intégration de nouveaux processus

BPEL, c'est quoi ? 9  Syntaxe basée sur le format XML  Standard OASIS en V2.0  Fondés sur des concepts proches   Échanges des messages, modification des messages   Activités, opérations, appels de services Gestion des erreurs, événements Outillés  Éditeurs graphiques  Moteur d’exécution

10 BPEL, QUELLE UTILITÉ ?  Processus métiers  Requête / Réponse  Modelé de données  Activités et taches  Sous-processus / Services  Processus métier = Processus BPEL  Processus BPEL = Web Service

11 BPEL, QUELLE UTILITÉ ?(EXEMPLE) App.Assistance Amine Processus BPEL pour assistance technique Reception Requête Détails Requête Tâche utilisateur Workflow humaine Assigner la tâche Khalid Réception Reponse Vérifier résultat Email Notifier le client FIN Ali

BPEL par l’exemple : HelloWorld 12  Le processus BPEL est décrit par le Service Web suivant:  Une opération makeHello qui prend en paramètre une chaîne de caractère et retourne une chaîne de caractère  Le processus BPEL traite le Workflow suivant: 1. Récupération du message envoyé par le client (chaîne de caractères) 2. Transformation du message en ajoutant le texte HelloWorld 3. Retourner le nouveau message au client 12

13 BPEL par l’exemple : HelloWorld

14 Génération des fichiers et initialisation des outils BPEL

15 BPEL par l’exemple : HelloWorld Gestion des fichiers du projet Editeur Graphique Palette des fonctionnalité s BPEL

16 Edition du BPEL en mode « texte » Une relation de type partenaire est définie 2 variables sont définies 3 activités déclanchées en séquence

17 BPEL par l’exemple : HelloWorld définion de service,Binding type et d’adresse PortType pour exécuter le service HelloWorld

18 BPEL par l’exemple : HelloWorld Pour permettre à l'ODE Apache de connaître vos déclarations ainsi que vos designs. Vous devez ajouter un descripteur Deploy.xml

19 BPEL par l’exemple : HelloWorld

20 BPEL par l’exemple : HelloWorld Si on veut retourner la chaine « HelloWord»+input. Quelle est la modification à apporter ?

21 BPEL par l’exemple : HelloWorld

22 BPEL par l’exemple : HelloWorld Le processus BPEL est décrit par un WSDL et est accessible par un client Service Web

BPEL : partie statique 23  la partie statique d’un processus est définie par un document WSDL  Le document WSDL permet de décrire:  Les points d’entrées et de sorties du processus  Définir les types des données (XML Schema) et les messages utilisés pour décrire l’état du processus  Les opérations qui sont autorisées et qui permettent d’invoquer le processus

BPEL : partie dynamique 24  La partie dynamique du processus est décrite par le fichier BPEL  Ce document BPEL permet de décrire  L’ordonnancement des différentes sous étapes du processus  L’invocation vers les opérations des Services Web partenaires  La logique et l’état du processus

25 BPEL : partie dynamique Orchestration  vue locale à un processus Description de la logique d’exécution des services partenaires et des messages échangés, BPEL s’inscrit, dans la description de l’orchestration

26 Activités BPEL de base (1/3)

27 Activités BPEL de base (2/3)

28 Activités BPEL

Partner Links 29  Du point de vue des clients le processus BPEL est un Service Web Deux façons d’interagir entre un processus BPEL et des Web Services externes     Un processus BPEL invoque des opérations issues d’autres Web Services (dit Partenaires) : Lien de partenaire (PartenerLink) de type invocation Un processus BPEL reçoit des invocations issues de clients : Lien de partenaire (PartenerLink) de type client Pour résumer, un lien de partenaire désigne les relations entre des partenaires / clients et le processus BPEL

30 Partner Links écifie le rôle du processus BPEL spécifie le rôle du partenaire Description du lien de partenaire lié à l’interaction entre le client et le processus Description du lien de partenaire lié à l’interaction entre le processus et le Service Web PingPong

Variables 31    BPEL définit la notion de variables qui permet de manipuler les messages des interactions entre les partenaires Une variable est définie par des types et des messages déclarés dans un WSDL Une variable est définie par les attributs suivants  name : nom de la variable  type : typée via un type XML Schema par exemple ou  messageType : typée via un message

32 Variables  Exemple : Définition de variables dans un BPEL Variables décrites dans le fichier BPEL Messages décrits dans le fichier WSDL du processus BPEL –Orchestration de Web Services Messages décrits dans le fichier WSDL du Service Web

Activité : Receive 33    L’activité Receive est utilisée pour la mise en attente du processus tant qu’un message n’est pas envoyé par un partenaire Elle est utilisée généralement pour instancier le processus BPEL (première activité du processus) Elle est définie par la balise <receive> dont les principaux attributs de cette activité sont     name : nom de l’activité partnerLink : lien partenaire utilisé pour identifier le partenaire qui doit déclencher le processus operation : identifiant de l’opération que le processus doit implémenter variable : où stocker le message envoyé par le partenaire

34 Activité : Receive  Exemple : Mise en place de l’activité Receive Des outils simplifient l’édition d’une activité Receive

Activité : Reply 35    L’activité Reply permet d’envoyer une réponse au message envoyé à l’activité Receive Le couple Reply / Receive décrit une opération de type requête / réponse Elle est définie par la balise <reply> dont les principaux attributs de cette activité, sont     name : nom de l’activité partnerLink : identifiant du lien partenaire utilisé pour identifier le partenaire qui doit recevoir le message de réponse operation : identifiant de l’opération que le processus a implémentée variable : message contenant le message à retourner

36 Activité : Reply  Exemple : Mise en place de l’activité Reply Des outils simplifient l’édition d’une activité Reply

Activité :Assign 37       L’activité Assign peut être utilisée pour copier des données d’une variable vers une autre Possibilité d’utiliser des expressions complexes pour modifier le contenu des variables (XPath, transformations XSL) Elle est définie par la balise <assign> qui peut contenir un ensemble de sous balises <copy> La balise <copy> contient à son tour des sous balises <from> et <to> pour exprimer la copie d’un contenu vers un autre Structure XML de la balise <assign>

38 Activité : Assign  Exemple : Mise en place de l’activité Assign Des outils simplifient l’édition d’une activité Assign

Activité :Invoke 39    L’activité Invoke est utilisée pour déclencher l’appel à une opération sur un portType défini par un lien de partenaire L’invocation d’opération nécessite l’utilisation de variables en entrée et en sortie pour initialiser la requête et la réponse Elle est définie par la balise <invoke>  name : nom de l’activité  partnerLink : identifiant du lien partenaire  operation : l’opération à invoquer  portType : le portType pour de l’opération  inputVariable : informations à transmettre à la requête  ouputVariable : utilisées pour récupérer les données de la réponse

40 Activité : Invoke Des outils simplifient l’édition d’une activité Invoke

41 Conclusion Processus BPEL en mode Synchrone et asynchrone Gestion transactionnelle Activités complexes (scope, link…) Gestion des erreurs Journalisation et alertes

42 Des questions?

43 Ressources  http://searchsoa.techtarget.com/definition/BPEL  https://www.oasis-open.org  http://www.eclipse.org/ganymede/  http://ode.apache.org/  Oracle. BPEL and Oracle BPEL Process Manager FAQ.

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

BPEL PowerPoint PPT Presentation - Upload & Share ...

BPEL. Business Process Execution Language. BPEL Design goals. XML-based language Interacts through WSDL only Build on Web services standards.
Read more

Oracle BPEL Process Manager 10.1.3 Preview

2 Page 2 This presentation is for informational purposes only and may not be incorporated into a contract or agreement BPEL Process Manager Roadmap
Read more

oracle bpel placement PowerPoint PPT Presentations

A very large, searchable collection of high-quality ORACLE BPEL PLACEMENT PPT presentations pre-converted to enable easy online viewing with full ...
Read more

Oracle BPEL Process Manager | SOA | Oracle

Oracle BPEL Process Manager Orchestrate Disparate Applications and Web Services into Business Processes. Provides a comprehensive, standards-based and easy ...
Read more

BPEL Conformance in Open Source Engines

BPEL Conformance in Open Source Engines Simon Harrer, Jörg Lenhard and Guido Wirtz Distributed Systems Group . University of Bamberg . Bamberg, Germany
Read more

Business Process Execution Language - Persönliche ...

WS-BPEL Definition[8] Business Process Execution Language for Web Services (BPEL or BPEL4WS) is a language used for the definition and execution of ...
Read more

PPT – BPEL Business Process Execution Language ...

BPEL Business Process Execution Language. ... bigraphs correspond closely to XML. data and thus the syntax of BPEL, e.g. ... | PowerPoint PPT presentation ...
Read more

BPEL in a few words by Gerhard Rempp on Prezi

People invited to a presentation do not need a Prezi account; This link expires 10 minutes after you close the presentation; ... Transcript of BPEL in a ...
Read more