BPeX: A New Approach to BPMN Model Portability

1,730 views
1,629 views

Published on

Published in: Business, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,730
On SlideShare
0
From Embeds
0
Number of Embeds
17
Actions
Shares
0
Downloads
125
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

BPeX: A New Approach to BPMN Model Portability

  1. 1. Michele Chinosi University of Insubria – Varese (Italy) BPeX: A New Approach to BPMN Model Portability
  2. 2. A Brief Introduction <ul><li>BPMN (Business Process Modeling Notation), developed by BPMI and adopted as standard by OMG (2006). </li></ul><ul><li>WS-BPEL (Web Services – Business Process Execution Language), developed by IBM & Microsoft, adopted by OASIS as standard. Version 2.0 (2007). </li></ul><ul><li>XPDL (XML Process Definition Language), developed by WfMC. Version 2.0 (2005). </li></ul>Michele Chinosi - Architecture & Process - 2008
  3. 3. A Brief Introduction <ul><li>BPMN is a graphical notation to model (represent) business processes </li></ul><ul><li>WS-BPEL is an “ execution language ” </li></ul><ul><ul><li>definition of web services orchestration </li></ul></ul><ul><ul><li>independent from BPMN </li></ul></ul><ul><li>XPDL stores and exchanges the process diagrams </li></ul><ul><ul><li>process design format </li></ul></ul><ul><ul><li>extended to support BPMN </li></ul></ul>Michele Chinosi - Architecture & Process - 2008
  4. 4. BPeX: Business Process eXtensions Michele Chinosi - Architecture & Process - 2008 The BPMN-XPDL-BPEL value chain From Keith Swenson blog “Go Flow”, posted May 26, 2006
  5. 5. BPeX: Business Process eXtensions Michele Chinosi - Architecture & Process - 2008
  6. 6. A Comparison Between WS-BPEL and XPDL Michele Chinosi - Architecture & Process - 2008 WS-BPEL XPDL Expressive power Less expressive More expressive Naming convention Completely different Some names different Structure of the model Completely different Some relevant differences Native referential integrity Partially Missing Execution capabilities Full support No execution allowed Graphical information Not at all Full graphical support Validation / Analysis Complex queries Complex queries
  7. 7. Some XPDL Weaknesses in Details <ul><li>Elements renaming </li></ul><ul><li>Complex conceptual model </li></ul><ul><li>Lack of a native referential integrity </li></ul><ul><li>Complex queries </li></ul>Michele Chinosi - Architecture & Process - 2008
  8. 8. Elements Renaming <ul><li>XPDL 2.0: </li></ul><ul><li>comes 1 year before OMG published BPMN specification </li></ul><ul><li>supports all the elements provided by BPMN specification </li></ul><ul><li>maintains the possibility to describe more generic workflow diagrams </li></ul><ul><li>avoid redundancy and duplicates </li></ul>Michele Chinosi - Architecture & Process - 2008 BPMN XPDL Process WorkflowProcess SequenceFlow Transition SubProcess SubFlow Gateway Route / Join / Split / …
  9. 9. A Complex Conceptual Model <ul><li>We analyzed the XML serialization provided with the example </li></ul><ul><li>We depicted a more high-level graphical conceptual model of the XML tree </li></ul><ul><li>We compared the model with the Business Process Diagram </li></ul>Michele Chinosi - Architecture & Process - 2008
  10. 10. An Example Process <ul><li>This process is taken from XPDL specification [Document nr. WFMC-TC-1025, Section 8.1, pp. 109-127] and modeled using BPMN </li></ul>Michele Chinosi - Architecture & Process - 2008
  11. 11. A Complex Conceptual Model Michele Chinosi - Architecture & Process - 2008
  12. 12. A Complex Conceptual Model <ul><li>XPDL was not originally developed to represent natively BPMN diagrams </li></ul><ul><li>XPDL has to maintain a backward compatibility with its previous version </li></ul><ul><ul><li>Old names, old structure, old relationships </li></ul></ul><ul><li>This introduces: </li></ul><ul><ul><li>more complexity </li></ul></ul><ul><ul><li>some misunderstandings </li></ul></ul><ul><ul><li>fragmentation of information </li></ul></ul>Michele Chinosi - Architecture & Process - 2008
  13. 13. A Complex Conceptual Model Michele Chinosi - Architecture & Process - 2008 BPMN XPDL Processes are children of Pools elements Pools are defined separately from WorkflowProcesses, referencing them through relationships Tasks are specifications of Activity elements Tasks are children of an Implementation element, descendant of an Activity block which belongs to a unique Activities element Events are directly referenced from a Lane element Events are children of an Activity element One Gateway is defined within a Lane The Route element is defined as child of an Activity
  14. 14. Lack of Native Referential Integrity Constraints <ul><li>All the elements do not have a unique ID </li></ul><ul><li>ID and IDRef are of type xsd:NMTOKEN </li></ul><ul><li>More than one element have the same ID </li></ul><ul><li>BPMN specification requires the ID field to be “a unique Id that identifies the object from other objects within the Diagram” </li></ul>Michele Chinosi - Architecture & Process - 2008
  15. 15. Lack of Native Referential Integrity Constraints Michele Chinosi - Architecture & Process - 2008
  16. 16. Lack of Native Referential Integrity Constraints <ul><li>IDREFs are of type xsd:NMTOKEN </li></ul><ul><li>It is possible to set as IDREF value a non-existent ID </li></ul><ul><li>There is the need of a software tool to check the correctness of the values </li></ul><ul><li>XPDL specification state that “The Process attribute defines the Process that is contained within the Pool” </li></ul>Michele Chinosi - Architecture & Process - 2008
  17. 17. Lack of Native Referential Integrity Constraints Michele Chinosi - Architecture & Process - 2008
  18. 18. Complex Queries <ul><li>With XPDL </li></ul><ul><li>for $x in (//Activity[@Id=10]), </li></ul><ul><li>$y in (//Pool[@Process = //$x/ancestor::WorkflowProcess[1]/@Id]//Lane/@Name) </li></ul><ul><li>return $y </li></ul><ul><li>Result: </li></ul><ul><li>/Package[1]/Pools[1]/Pool[2]/Lanes[1]/Lane[1]/@Name - Lane-0 </li></ul><ul><li>With BPeX </li></ul><ul><li>//Lane[//Task/@Id=10]/@Name </li></ul><ul><li>Result: </li></ul><ul><li>/BPD[1]/Pool[2]/Lane[1]/@Name – Lane-0 </li></ul>Michele Chinosi - Architecture & Process - 2008 Which Lane does the Task with Id=10 belong to?
  19. 19. BPeX: Business Process eXtensions <ul><li>Built from scratch </li></ul><ul><li>Clear conceptual model </li></ul><ul><li>Not based on WS-BPEL or XPDL </li></ul><ul><li>It supports all BPMN elements and features </li></ul><ul><li>It has an XML-Schema serialization </li></ul><ul><li>It strengthens BPMN weak connections </li></ul><ul><li>Static analysis and validation </li></ul><ul><li>Constraints / Metrics / Extensions </li></ul>Michele Chinosi - Architecture & Process - 2008
  20. 20. BPeX: Business Process eXtensions <ul><li>ID and IDREF are defined as of types xsd:ID and xsd:IDREF </li></ul><ul><li>We add xsd:KEY and xsd:KEYREF to enforce constraints </li></ul><ul><ul><li>We can assure that a Start Event of type Message will have all and only the attributes provided by BPMN specification </li></ul></ul><ul><li>We can statically validate the model without using software tools </li></ul>Michele Chinosi - Architecture & Process - 2008
  21. 21. BPeX Conceptual Model <ul><li>Graphical BPMN model </li></ul><ul><li>Graphical BPeX model </li></ul>Michele Chinosi - Architecture & Process - 2008
  22. 22. Example Process in BPeX Michele Chinosi - Architecture & Process - 2008
  23. 23. XPDL and BPeX comparison Michele Chinosi - Architecture & Process - 2008 BPeX XPDL
  24. 24. Conclusions Michele Chinosi - Architecture & Process - 2008 XPDL BPeX Expressive power More expressive Bijective correspondence Naming convention Some names different No differences Structure of the model Some relevant differences Few adjustments due Native referential integrity Missing Strong Execution capabilities No execution allowed Not yet but planned Graphical information Full graphical support Supported with extensions Analyses Complex queries required Simple queries
  25. 25. Questions? [email_address] http://bpex.sourceforge.net Michele Chinosi - Architecture & Process - 2008

×