Welcome Michele Chinosi University of Insubria – Varese (Italy) BPeX: A New Approach to BPMN Model Portability
Welcome
Michele ChinosiUniversity of Insubria – Varese (Italy)
BPeX: A New Approach to BPMN Model Portability
April 21-23, 2008 Renaissance Washington, DC
Agenda
• Brief introduction to BPMN, WS-BPEL, XPDL
• BPeX: a new modeling approach
• A view of XPDL “weaknesses”
• How BPeX can aid to overcome these weak points
• A comparison between XPDL and BPeX
Michele Chinosi - Architecture & Process - 2008 2
April 21-23, 2008 Renaissance Washington, DC
A Brief Introduction
• BPMN (Business Process Modeling Notation), developed by BPMI and adopted as standard by OMG (2006, BPMN 1.0 – 2008, BPMN 1.1)
• WS-BPEL (Web Services – Business Process Execution Language), developed by BEA, IBM & Microsoft, adopted by OASIS as standard. Version 2.0 (2007).
• XPDL (XML Process Definition Language), developed by WfMC. (2005, XPDL 2.0 – 2008, XPDL 2.1).
Michele Chinosi - Architecture & Process - 2008 3
April 21-23, 2008 Renaissance Washington, DC
A Brief Introduction
• BPMN is a graphical notation to model (represent) business processes.– Standard for the look of a process
• WS-BPEL is an “execution language”– definition of web services orchestration– independent from BPMN
• XPDL stores and exchanges the process diagrams– process design format– extended to support BPMN
Michele Chinosi - Architecture & Process - 2008 4
April 21-23, 2008 Renaissance Washington, DC
BPeX: Business Process eXtensions
Michele Chinosi - Architecture & Process - 2008 5
The BPMN-XPDL-BPEL value chainFrom Keith Swenson blog “Go Flow”, posted May 26, 2006
April 21-23, 2008 Renaissance Washington, DC
BPeX: Business Process eXtensions
Michele Chinosi - Architecture & Process - 2008 6
April 21-23, 2008 Renaissance Washington, DC
A Comparison BetweenWS-BPEL and XPDL
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
Michele Chinosi - Architecture & Process - 2008 7
April 21-23, 2008 Renaissance Washington, DC
Some XPDL Weaknesses in Details
• Elements renaming
• Complex conceptual model
• Lack of a native referential integrity
• Complex queries
Michele Chinosi - Architecture & Process - 2008 8
April 21-23, 2008 Renaissance Washington, DC
Elements RenamingXPDL 2.0:
•comes 1 year before OMG published BPMN specification
•supports all the elements provided by BPMN specification
•maintains the possibility to describe more generic workflow diagrams
•avoid redundancy and duplicates
Michele Chinosi - Architecture & Process - 2008 9
BPMN XPDL
Process WorkflowProcess
SequenceFlow Transition
SubProcess SubFlow
Gateway Route / Join / Split / …
April 21-23, 2008 Renaissance Washington, DC
A Complex Conceptual Model
• We analyzed the XML serialization provided with the example inside the XPDL specification
• We depicted a more high-level graphical conceptual model of the XML tree
• We compared the model with the Business Process Diagram
Michele Chinosi - Architecture & Process - 2008 10
April 21-23, 2008 Renaissance Washington, DC
An Example Process
This process is taken from XPDL specification [Document nr. WFMC-TC-1025, Section 8.1, pp. 109-127] and modeled using BPMN
Michele Chinosi - Architecture & Process - 2008 11
April 21-23, 2008 Renaissance Washington, DCMichele Chinosi - Architecture & Process - 2008 12
A Complex Conceptual Model
April 21-23, 2008 Renaissance Washington, DC
A Complex Conceptual Model
• XPDL was not originally developed to represent natively BPMN diagrams
• XPDL has to maintain a backward compatibility with its previous version– Old names, old structure, old relationships
This introduces:– more complexity– some misunderstandings– fragmentation of information
Michele Chinosi - Architecture & Process - 2008 13
April 21-23, 2008 Renaissance Washington, DC
A Complex Conceptual Model
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
Michele Chinosi - Architecture & Process - 2008 14
April 21-23, 2008 Renaissance Washington, DC
Lack of Native Referential Integrity Constraints
• All the elements do not have a unique ID
• ID and IDRef are of type xsd:NMTOKEN
• More than one element have the same ID
• BPMN specification requires the ID field to be “a unique Id that identifies the object from other objects within the Diagram”
Michele Chinosi - Architecture & Process - 2008 15
April 21-23, 2008 Renaissance Washington, DC
Lack of Native Referential Integrity Constraints
Michele Chinosi - Architecture & Process - 2008 16
April 21-23, 2008 Renaissance Washington, DC
Lack of Native Referential Integrity Constraints
• IDREFs are of type xsd:NMTOKEN
• It is possible to set as IDREF value a non-existent ID
• There is the need of a software tool to check the correctness of the values
• XPDL specification state that “The Process attribute defines the Process that is contained within the Pool”
Michele Chinosi - Architecture & Process - 2008 17
April 21-23, 2008 Renaissance Washington, DC
Lack of Native Referential Integrity Constraints
Michele Chinosi - Architecture & Process - 2008 18
April 21-23, 2008 Renaissance Washington, DC
BPeX: Business Process eXtensions
• ID and IDREF are defined as of types xsd:ID and xsd:IDREF
• We add xsd:KEY and xsd:KEYREF to enforce constraints– We can assure that a Start Event of type
Message will have all and only the attributes provided by BPMN specification
• We can statically validate the model without using software tools
Michele Chinosi - Architecture & Process - 2008 19
April 21-23, 2008 Renaissance Washington, DC
Complex Queries
With XPDLfor $x in (//Activity[@Id=10]),
$y in (//Pool[@Process = //$x/ancestor::WorkflowProcess[1]/@Id]//Lane/@Name)return $y
Result:/Package[1]/Pools[1]/Pool[2]/Lanes[1]/Lane[1]/@Name - Lane-0
With BPeX
//Lane[//Task/@Id=10]/@Name
Result:/BPD[1]/Pool[2]/Lane[1]/@Name – Lane-0
Michele Chinosi - Architecture & Process - 2008 20
Which Lane does the Task with Id=10 belong to?
April 21-23, 2008 Renaissance Washington, DC
BPeX: Business Process eXtensions• Built from scratch with a clear conceptual model
• Not based on WS-BPEL or XPDL
– BPeX can be translated to XPDL and BPEL using XSLT
– BPeX can be extended to integrate XPDL or BPEL features
• It supports all BPMN elements and features
• It has an XML-Schema serialization
• It strengthens BPMN weak connections
• Static analysis and validation
• Constraints / Metrics / Extensions
Michele Chinosi - Architecture & Process - 2008 21
April 21-23, 2008 Renaissance Washington, DC
BPeX: success stories • Partnership with Euranet (an European business consulting
company) and Università degli Studi di Bologna (Italy)
• We modeled some real cases taken from several SME
• We started implementing some constraints taken from NIST /
ISO procedures to aid users modeling processes
• We extended BPeX to support some simple time/cost metrics
(BPM 2007)
• We successfully added privacy policies to web-based
processes modeled with BPMN (WOSIS 2008)
Michele Chinosi - Architecture & Process - 2008 22
April 21-23, 2008 Renaissance Washington, DC
BPeX Conceptual Model
Graphical BPMN model
Graphical BPeX model
Michele Chinosi - Architecture & Process - 2008 23
April 21-23, 2008 Renaissance Washington, DC
Example Process in BPeX
Michele Chinosi - Architecture & Process - 2008 24
April 21-23, 2008 Renaissance Washington, DC
XPDL and BPeX comparison
Michele Chinosi - Architecture & Process - 2008 25
BPe
X XP
DL
April 21-23, 2008 Renaissance Washington, DC
Conclusions
Michele Chinosi - Architecture & Process - 2008 26
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
April 21-23, 2008 Renaissance Washington, DC
Summary
• Introduction to BPMN, BPEL, XPDL
• Our proposal BPeX
• Analysis of the XPDL weak points using a practical example
• How BPeX can aid to overcome these weak points
• A comparison between XPDL and BPeX
Michele Chinosi - Architecture & Process - 2008 27
April 21-23, 2008 Renaissance Washington, DC
[email protected]://bpex.sourceforge.net
28Michele Chinosi - Architecture & Process - 2008