3. Introduction
BPM (Business Process Management):
Une approche qui modélise
informatiquement un processus métier au
sein d’une entreprise.
Cycle de vie d’un BPM
Powerpoint Templates
Page 3
4. Cycle de vie d’un BPM
Powerpoint Templates
Page 4
5. Objectifs de BPM
Standardisation de la représentation des
processus :
Modélisation des processus
Exécution des processus
Communication avec le SI
Powerpoint Templates
Page 5
6. Bénéfices de BPM
Augmenter la productivité et l’éfficacité
Automatiser et fluidifier les opérations
Gain en temps et en argent
Réduction des coûts
Maximiser l’utilisation des ressources
Centraliser les données
Powerpoint Templates
Page 6
8. BPMN
Business Process Modeling Notation, un
standard de représentation des Business
Process dans le Business Process Diagram
(BPD)
Elaborée par BPMI
2005, fusion avec OMG
La version 2.0, officialisée en 2010
Powerpoint Templates
Page 8
9. BPMN: Objectifs
Standardisation des systèmes de notation
Combler le Fossé Entre les Analystes et
Développeurs
La standardisation a deux vocations
principales:
Facilité de la compréhension des processus
Simplification de mise en place d’outils
d’exécution de processus métiers
Powerpoint Templates
Page 9
12. Flow Objects
Ce sont les éléments essentiels d'un BPD
Trois types:
Event
Activity
Gateway
Powerpoint Templates
Page 12
13. Flow Object: Event
L’Event se compose de 3 types différents:
Start Event
Intermediate Event
End Event
Permettent de démarrer, interrompre ou
mettre fin à un flux
Powerpoint Templates
Page 13
14. Flow Object: Activity
L’Activity se compose de 2 types différents:
Task
Sub Process
Powerpoint Templates
Page 14
15. Flow Object: Gateway
la manière dont les activités vont s'enchaîner
Quatre types
Les connecteurs exclusifs
Les connecteurs inclusifs
Les connecteurs complexes
Les connecteurs parallèles
Powerpoint Templates
Page 15
16. Connexions
Les connexion sont au nombre 3 :
Sequence Flow
Message Flow
Associations
Powerpoint Templates
Page 16
17. Swimlanes
Illustrent les différentes capacités
fonctionnelles ou des responsabilités.
2 types de swimlanes :
Nom
Line
Nom Nom
Nom
Pool
Powerpoint Templates
Page 17
18. Artefacts
Aident à préciser les détails
Se composent en 3 types prédéfinies:
Data Objects
Group
Annotations
Powerpoint Templates
Page 18
19. Démonstration
Outils : plugin STP (SOA Tool Platform)
Processus métier : Achat en ligne de jouets
Powerpoint Templates
Page 19
20. Limites
Simplicité de la représentation
BPMN n’est pas univoque
Conversion de BPMN à BPEL difficile
Outils intégrant BPMN afin de contourner ses
limites
Powerpoint Templates
Page 20
22. jBPM
jBPM est un moteur de workflow
Permet la gestion de flux d’informations
Permet la coordination entre applications
dédiées
Permet la coordination entre biens et
personnes
Powerpoint Templates
Page 22
24. Pourquoi jBPM ?
Portable :
Utilisé dans n’importe quelle application
Utilisé sur n’importe quelle base de
données
Extrêmement extensible
Offre des fonctionnalités de gestion de
processus compris par les personnes non
techniques et les développeurs
Simple d’utilisation : schéma graphique
Powerpoint Templates
Page 24
25. Permet d’intégrer le SOA (BPEL)
Réduit le temps de développement et
automatise les Business Process
Pratique pour les développeurs
Powerpoint Templates
Page 25
26. Plugin : JPDL
jBPM Process Definition Language
Langage de processus intuitif
Exprime graphiquement les processus
JPDL spécifie un schéma XML
Powerpoint Templates
Page 26
30. C’est quoi BPEL?
Business Porcess Execution Language est un
langage pour spécifier le comportement des
processus métier
Basé sur la notion Web Services
Approuvé par OASIS
Utilise WSDL (WS Description Language) pour
décrire les interfaces de processus métier
Powerpoint Templates
Page 30
31. Web Services Standards For SOA
The Web Services Platform Architecture
Discovery, Negotiation, Agreement
Component
Orchestration Protocols State
Model Components
Components
Composite Atomic
Reliable Quality
Quality
Security Transactions
Messaging of Service
of Service
Interface + Bindings Policy Description
Description
XML Non-XML Messaging
Messaging
Transport Transport
Transport
Powerpoint Templates
Page 31
32. Web Services Standards For SOA
The Web Services Platform Architecture
S-C
Discovery, Negotiation, Agreement
WS-BPEL S-C Component
WS-RF
WS-BPEL
UDDI, WS-Addr, Metadata Exch.,…
Orchestration Protocols SCA WS-RF
State
UDDI, WS-Addr, Metadata Exch.,…
WS-N*W
WS-N*W SCA
Model Components
Components
Composite Atomic
Reliable WS-AT
WS-AT Quality
Quality
WS-RM
WS-RM Security
WS-Security*
WS-Security* Transactions
Messaging WS-BA
WS-BA of Service
of Service
Interface + Bindings
WSDL*
WSDL* Policy
WS-Policy*
WS-Policy* Description
Description
XML WS-Addr*
SOAP, WS-Addr*
SOAP, Non-XML
JMS, RMI/IIOP, ...
JMS, RMI/IIOP, ... Messaging
Messaging
HTTP, TCP/IP, SMTP, FTP, …
HTTP, TCP/IP, SMTP, FTP, …
Transport Transport
Transport
Powerpoint Templates
Page 32
33. Discovery, Negotiation, Agreement
UDDI, WS-Addr, Metadata Exch.,…
WS-C
UDDI, WS-Addr, Metadata Exch.,…
WS-BPEL
WS-BPEL WS-C
Orchestration Protocols
Component
WS-RF
WS-RF
State
WS-N*
WS-N* Model Components
Components
Composite Atomic
Reliable WS-AT
WS-AT Quality
Quality
WS-RM
WS-RM Security
WS-Security*
WS-Security* Transactions
Messaging WS-BA
WS-BA of Service
of Service
Interface + Bindings
WSDL*
WSDL* Policy
WS-Policy*
WS-Policy* Description
Description
XML WS-Addr*
SOAP, WS-Addr*
SOAP, Non-XML
JMS, RMI/IIOP, ...
JMS, RMI/IIOP, ... Messaging
Messaging
Transport
HTTP, TCP/IP, SMTP, FTP, …
HTTP, TCP/IP, SMTP, FTP, … Transport
Transport
Powerpoint Templates
Page 33
34. Un peu d ’histoire
Décombre 2000
Microsoft publie XLANG
Mars 2001
IBM publie WSFL
Juillet 2002
Fusion WSFL And XLANG en BPEL4WS 1.0
Mars 2003
OASIS approuve BPEL4WS
Mai 2003
OASIS publie BPEL4WS 1.1
Avril 2007
lancement BPEL4WS 2.0
Powerpoint Templates
Page 34
36. Service d’orchestration
BPEL est un langage d’orchestration, et non
pas un langage de chorégraphie.
Une chorégraphie peut être mise en œuvre par
une orchestration (c'est-à-dire un processus de
BPEL)
Powerpoint Templates
Page 36
37. Développement d’Orchestrations
Design Tool
.NET
Process Designer <process>
<process>
<sequence>
<sequence>
<receive S
<receive
… />
… /> e
<invoke
BPEL <invoke
… />
Java r
… />
Process </sequence>
</sequence> v
</process>
</process> i
c
Publishes To e
s
Siebel
Orchestration Engine
Powerpoint Templates
Page 37
38. Execution d’Orchestrations
You’re
approved!
Loan
Service 1
<process>
<process>
<sequence>
<sequence>
<receive
<receive
… />
<invoke/>
…
Loan <invoke
… />
… />
</sequence>
</sequence>
</process>
Service 2 </process>
Credit
Loan Service Validation
Powerpoint Templates
(Orchestration) Service
Page 38
39. Pourquoi BPEL ?
Indépendance de Platform ( java ou .NET )
SOA+Orchestration = Processus
Facile à intégrer, flexible, visible, agile,
changement à moindre cout.
Fournit un modèle d'interaction robuste
Application complète ( sécurité, fiable ,
évolutif ,etc.)
Powerpoint Templates
Page 39
41. WS-BPEL process definition
process Déclare les namespaces
Déclare des dépendances
des extensions d’attributs
au Schéma XML externe
et les élement du WS-
ou des définitions WSDL imports extensions
BPEL
Les relations qu'un
Relations entre les
processus de WS-BPEL partner message activités des messages
emploiera dans son links exchanges entrants et sortants
comportement
Données internes d'un Les champs(domaines)
business processus ou correlation de données d'application
variables
externes échangées avec le sets qui identifient ensemble
Parten Links une conversation
Processus concurrent :
event fault Traiter les situations
des messages arrivants
handlers handlers exceptionnelles
ou des alarmes de
minuteur
primary WSDL
Représente la logique du activity definitions
processus XML
schemas
Powerpoint Templates
Page 41
42. Elements de Partner Link
WDSL décrit la fonctionnalité de services
fournis avec un Partner Link.
Partner Link décrit la forme de la relation
en décrivant les types de port utilisés dans
une relation peer to peer.
Exemple :
<partnerLinks>
<partnerLink name=“Invoice”
partnerLinkType=“inv:InvoiceType”
partnerRole=“InvoiceServiceProvider”/>
<partnerLink name=“Employee”
partnerLinkType=“emp:EmployeeType”
partnerRole=“EmployeeServiceProvider”/>
</partnerLinks>
Powerpoint Templates
Page 42
43. Partner Links
process
Peer-to-peer conversational partner relationship
partner
link
receive invoke
(Requête) arrivante -
(Requête) sortante - service
service fourni par le
exigé par le processus
processus
myRole partnerRole
WSDL WSDL
partner link type
port type port type
port type fourni Type de port Exigé
Powerpoint Templates
Page 43
44. Variables
process
Variables defined using WSDL messages
request request
receive invoke
response
42
response
reply assign
WSDL 42 XML Schema
WSDL XML
WSDL
messages elements / types
message schemas
message Variables defined using XML schema elements or types
Powerpoint Templates
Page 44
45. Basic Activities
process
Un procecessus de Termine immédiatement
Requette/Réponse receive reply exit l'exécution d'un processus
Invoquer dans un sens Invoque compensate
unique ou opération invoke compensate pour tous les sous- scopes
traités dans un ordre
de Requette/Réponse
Invoque compensation à
MAJ les variables ou assign compensateScope
un seul sous-scope
Partner avec de complet
nouvelles données Attendre une période
wait donnée ou jusqu'à ce
Validez des données
validate qu'un certain temps ait
XML stockées dans
passé
des variables Aucune-op instruction pour
empty
Un processus
Produire une faute à
l'intérieur du processus throw
Emballage pour
extensionActivity
extensions de langue
Powerpoint Templates
Page 45
46. Structured Activities
process
Les activités sont
exécutées dans ordre
partiellement flow pick Bloquer et attendre
A
parallèle jusqu’à l’arrivé d’un
B C M1 M2 … A message approprié ou
e par des liaisons de
contrôle un time-out écoulé
Contient des activités sequence forEach
Boucle ForEach
qui sont exécutées 2. … N.
1. 2. … N. 1.
séquentiellement
while if-elseif-else Branchement
Boucle While
c1 c2
c …
Boucle Répété -jusqu’à repeatUntil scope Un sous-proceuss qui
ademet ses propres
c variables, Partner Link..
Powerpoint Templates
Page 46
47. Démonstration
Outils : GlassFish ESB 2
Eclipse IDE 6.7
GlassFish v2 ™ SA
Java DB
Powerpoint Templates
Page 47
48. JPDL VS BPEL
JPDL est un langage orienté graphe
JPDL est utilisé pour définir la logique métier
BPEL est une norme industrielle:
L’orchestration de services web
BPEL est utilisé pour définir les règles
d’orchestration des processus métiers
Powerpoint Templates
Page 48
49. Conclusion
A la sortie de jBPM 5.0, on pourra utiliser
tous ces outils pour créer un workflow:
BPMN comme langage de modélisation
BPEL comme langage d’exécution
jBPM comme moteur de workflow
Powerpoint Templates
Page 49
Bonjour à toutes et tous, nous avons l’immense plaisir de vous présenter notre sujet qui s’intitule bpmn,jbpm,bpel, ce sujet a été élaboré par ma collègue sarra sakesli et moi-même feker skandrani C’est vrai que le nom du sujet est peu évocateur, mais sachez que toutes ces notions tournent autour du même sujet BPM
Comme on vient de le dire, tous ces outils tournent autour de BPM
Etude de décomposer l'ensemble de l’activitéen processus métier. Modélisation des processus métiers , c'est-à-dire représenter informatiquement un modèle le plus proche possible de la réalité, Exécution : il s'agit de la phase opérationnelle où la solution de BPM est mise en oeuvre. Pilotage , consistant à analyser l'état des processus à travers des tableaux de bords présentant les performances des processus Optimisation , c'est-à-dire proposer des solutions permettant d'améliorer les performances des processus métiers Implémentation de la solution : mise en oeuvre d'une solution de BPM, reliée au système d'information de l'entreprise (applications et bases de données)
un système de notation graphique pour la représentation des processus métiers C’est l’équivalent à UML appliqué a la gestion des processus
BMN est multi-acteur
Start event : décrivent la circonstance de déclenchement du processus (message, timer , règle) Intermediate Event : décrivent un état intermédiaire End event :décrivent un état intermédiaire
Task :les tâches sont les éléments les plus fins manipulés par la norme BPMN. Sub process :constitue une hiérarchie de processus (du macro processus au processus détaillé).
Gateway :connecteur ou branchement seul un chemin est possible sur tous ceux représentés plusieurs chemins possibles Pour les types complexe plusieurs chemin empruntés en même temps
(ligne pleine)Détermine la manière dont les activité s’enchainent. (ligne tirets) : permettent de représenter les flux d'informations entre 2 participants d'un processus. (ligne pointillée) : permet de rattacher un artefact (donnée, annotation) à une activité.
c’est un mécanisme qui permet d’organiser les activités dans différentes catégories pour illustrer des fonctionnalités ou des responsabilités différentes. Les lignes sont regroupés en Pool
Pour conclure, la notation BPMN a le défaut de ses qualités, elle est simple.
jBoss Business Process Management
Le Process Designer développe le Process Definition , et il le déploie sur la base de données des processus, jBPM engine (moteur jBPM) interagit avec la base de données pour répondre aux requêtes de la Web Console qui est l’interface avec laquelle l’End user’s computer (utilisateur final) interagit.
La communication se fait grâce notamment aux schémas graphiques des processus Il est simple d’utilisation grâce aux schémas graphiques, on peut développer un processus métier sans écrire une seule ligne de code A l’origine les BPM étaient déstinés qu’au personnes non techniques
Notamment avec le langage BPEL
Jbpm n’intègre bpmn 2.0 que dans saversion 5.0 qui est en cours de développement L’une des raisons qui nous ont poussées à choisir la version 3 plutôt que la version 4 de jBPM c’est le manque de documentation et de stabilité
OASIS: Organization for the Advancement of Structured Information Standards organisme sans but lucratif, c qui adopte des normes ouvertes pour la société de l'information mondiale. WSDL :dialecte XML permettant de décrire un service Web
W3C :Le World Wide Web Consortium, abrégé par le sigle W3C, est un organisme de standardisation à but non-lucratif, fondé en comme un consortium chargé de promouvoir la compatibilité des technologies du World Wide Web telles que HTML, XHTML, XML, RDF, CSS, PNG, SVG et SOAP. ..
L'orchestration spécifie un processus exécutable dans son integralité en impliquant des échanges de message avec d'autres systèmes, tel que que les ordres d'échange de message sont contrôlés par un seul directeur :le designer d'orchestration Corégraphie :spécifie un protocole d’interactions peer to peer, définissant les ordres légaux de messages échangés avec l'objectif de garantir l'interopérabilité
Basé sur XML donc l’implémentation Java ou .NET est disponible
Developpé par jboss Fonctionne sur le moteur de jbpm Son but est