Transcript Slide 1

1

Business Process Modeling Notation (BPMN), Business Process Executive Language (BPEL), and XML Process Definition Language (XPDL)

Lian Yu The School of Software and Microelectronics Peking University No.24 Jinyuan RD, Beijing 102600, P.R. China 教育部 -IBM 精品课程 : 面向服务的业务流程管理 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Agenda

 Business Process Modeling Notation (BPMN)  Business Process Executive Language (BPEL)  XML Process Definition Language (XPDL)  Brief Comparison  References 2 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Business Process Modeling Notation

   Business Process Modeling Notation (BPMN) is a graphical representation for specifying business processes in a workflow.

BPMN was developed by Business Process Management Initiative (BPMI), and is currently maintained by the Object Management Group since the two organizations merged in 2005. As of January 2009, the current version of BPMN is 1.2, with a major revision process for BPMN 2.0 in progress.

3 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Example of a Business Process Modelling Notation of a process with a normal flow 4 Introduction to BPMN, BPEL, and XPDL 4/28/2020

A standard for business process modeling

    The Business Process Modeling Notation (BPMN) is a standard for business process modeling, and provides a graphical notation for specifying business processes in a Business Process Diagram (BPD), based on a flowcharting technique very similar to activity diagrams from Unified Modeling Language (UML). The objective of BPMN is to support business process management for both technical users and business users by providing a notation that is intuitive to business users yet able to represent complex process semantics. The BPMN specification also provides a mapping between the graphics of the notation to the underlying constructs of execution languages, particularly Business Process Execution Language.

5 Introduction to BPMN, BPEL, and XPDL 4/28/2020

The primary goal of BPMN

   The primary goal of BPMN is to provide a standard notation that is readily understandable by all business stakeholders. These business stakeholders include the business analysts who create and refine the processes, the technical developers responsible for implementing the processes, and the business managers who monitor and manage the processes. Consequently, BPMN is intended to serve as common language to bridge the communication gap that frequently occurs between business process design and implementation.

6 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Widespread adoption of the BPMN

  Currently there are several competing standards for business process modeling languages used by modeling tools and processes.   Widespread adoption of the BPMN will help unify the expression of basic business process concepts e.g., public and private processes, choreographies, as well as advanced process concepts (e.g., exception handling, transaction compensation).

7 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Scope

     BPMN will be constrained to support only the concepts of modeling that are applicable to business processes. This means that other types of modeling done by organizations for non-business purposes will be out of scope for BPMN. For example, the modeling of the following will not be a part of BPMN: Organizational structures Functional breakdowns Data models In addition, while BPMN will show the flow of data (messages), and the association of data artifacts to activities, it is not a data flow diagram.

8 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Elements

      The modeling in BPMN is made by simple diagrams with a small set of graphical elements. It should make it easy for business users as well as developers to understand the flow and the process. The four basic categories of elements are as follows: Flow Objects: Events, Activities, Gateways Connecting Objects: Sequence Flow, Message Flow, Association Swimlanes: Pool, Lane Artifacts (Artefacts): Data Object, Group, Annotation  These four categories of elements give us the opportunity to make a simple business process diagram (BPD). It is also allowed in BPD to make your own type of a Flow Object or an Artifact to make the diagram more understandable.

9 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Flow objects and connecting objects

Flow objects are the main describing elements within BPMN, and consist of three core elements (Events, Activities, and Gateways): Event Gateway 10 Activity Connections Introduction to BPMN, BPEL, and XPDL 4/28/2020

Event

   An Event is represented with a circle and denotes something that happens (rather than Activities which are something that is done). Icons within the circle denote the type of event (e.g. envelope for message, clock for time). Events are also classified as Catching (as in, they might catch an incoming message to Start the process) or Throwing (as in, they might throw a message at the End of the process). 11 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Event

  Start event: Acts as a trigger for the process; indicated by a single narrow border; and can only be Catch, so is shown with an open (outline) icon.   End event: Represents the result of a process; indicated by a single thick or bold border; and can only Throw, so is shown with a solid icon. 12 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Event

   Intermediate event: Represents something that happens between the start and end events; is indicated by a tramline border; and can Throw or Catch (using solid or open icons as appropriate) for example, a task could flow to an event that throws a message across to another pool and a subsequent event waits to catch the response before continuing.

13 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Activity

 An Activity is represented with a rounded-corner rectangle and describes the kind of work which must be done.   Task: A task represents a single unit of work that is not or cannot be broken down to a further level of business process detail without diagramming the steps in a procedure (not the purpose of BPMN) 14 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Activity

  Sub-process: Used to hide or reveal additional levels of business process detail - when collapsed a sub-process is indicated by a plus sign against the bottom line of the rectangle; when expanded the rounded rectangle expands to show all flow objects, connecting objects, and artefacts. Has its own self-contained start and end events, and sequence flows from the parent process must not cross the boundary. 15 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Activity

  Transaction: A form of sub-process in which all contained activities must be treated as a whole, i.e., they must all be completed to meet an objective, and if any one of them fails they must all be compensated (undone). Transactions are differentiated from expanded sub-processes by being surrounded by a tramline border.

16 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Gateway

 A Gateway is represented with a diamond shape and will determine forking and merging of paths depending on the conditions expressed.

17 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Flow objects

Flow objects are connected to each other using Connecting objects, which consist of three types (Sequences, Messages, and Associations):   Sequence Flow A Sequence Flow is represented with a solid line and arrowhead and shows in which order the activities will be performed. The sequence flow may be also have a symbol at its start, a small diamond indicates one of a number of conditional flows from an activity while a diagonal slash indicates the default flow from a decision or activity with conditional flows.

18 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  Message Flow A Message Flow is represented with a dashed line, an open circle at the start, and an open arrowhead at the end. It tells us what messages flow across organisational boundaries (i.e., between pools). A message flow can never be used to connect activities or events within the same pool.

19 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  Association An Association is represented with a dotted line. It is used to associate an Artifact or text to a Flow Object, and can indicate some directionality using an open arrowhead (toward the artifact to represent a result, from the artifact to represent an input, and both to indicate it is read and updated). No directionality would be used when the Artifact or text is associated with a sequence or message flow (as that flow already shows the direction).

20 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Swimlanes and artifacts

Swimlanes Groups 21 Data objects Annotation Introduction to BPMN, BPEL, and XPDL 4/28/2020

Swim lanes

   Swim lanes are a visual mechanism of organising and categorising activities, based on cross functional flowcharting, and in BPMN consist of two types: Pool  Represents major participants in a process, typically separating different organisations. A pool contains one or more lanes (like a real swimming pool). A pool can be open (i.e., showing internal detail) when it is depicted as a large rectangle showing one or more lanes, or collapsed (i.e., hiding internal detail) when it is depicted as an empty rectangle stretching the width or height of the diagram. Lane Used to organise and categorise activities within a pool according to function or role, and depicted as a rectangle stretching the width or height of the pool. A lane contains the Flow Objects, Connecting Objects and Artifacts.

22 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Artifacts

    Artifacts allow developers to bring some more information into the model/diagram. In this way the model/diagram becomes more readable. There are three pre-defined Artifacts and they are: Data Objects: Data Objects show the reader which data is required or produced in an activity. Group: A Group is represented with a rounded-corner rectangle and dashed lines. The Group is used to group different activities but does not affect the flow in the diagram. Annotation: An Annotation is used to give the reader of the model/diagram an understandable impression.

23 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Examples of business process diagrams

24 A process with a normal flow Introduction to BPMN, BPEL, and XPDL 4/28/2020

25 Discussion cycle Introduction to BPMN, BPEL, and XPDL 4/28/2020

26 E-mail voting process Introduction to BPMN, BPEL, and XPDL 4/28/2020

27 Collect votes Introduction to BPMN, BPEL, and XPDL 4/28/2020

BPMN 2.0

 The Business Process Model and Notation is the name of the working proposal for BPMN 2.0

 The vision of BPMN 2.0 is to have one single specification for a new Business Process Model and Notation that defines the notation, metamodel and interchange format but with a modified name that still preserves the "BPMN" brand.  The first beta version of the specification was released in September, 2009. The final release is scheduled for June, 2010 28 Introduction to BPMN, BPEL, and XPDL 4/28/2020

BPMN 2.0

      The proposed features include Aligning BPMN with the business process definition meta model BPDM to form a single consistent language Enabling the exchange of business process models and their diagram layouts among process modeling tools to preserve semantic integrity Expand BPMN to allow model orchestrations and choreographies as stand-alone or integrated models Support the display and interchange of different perspectives on a model that allow a user to focus on specific concerns Serialize BPMN and provide XML schemes for model transformation and to extend BPMN towards business modeling and executive decision support.

29 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Types of BPMN Sub-model

  Business process modeling is used to communicate a wide variety of information to a wide variety of audiences. BPMN is designed to cover this wide range of usage and allows modeling of end-to-end business processes to allow the viewer of the Diagram to be able to easily differentiate between sections of a BPMN Diagram.  There are three basic types of sub-models within an end to-end BPMN model: Private (internal) business processes, Abstract (public) processes, and Collaboration (global) processes: 30 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Private (internal) business processes

    Private business processes are those internal to a specific organization and are the type of processes that have been generally called workflow or BPM processes. If swim lanes are used then a private business process will be contained within a single Pool. The Sequence Flow of the Process is therefore contained within the Pool and cannot cross the boundaries of the Pool. Message Flow can cross the Pool boundary to show the interactions that exist between separate private business processes.

31 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Abstract (public) processes

     This represents the interactions between a private business process and another process or participant. Only those activities that communicate outside the private business process are included in the abstract process. All other “internal” activities of the private business process are not shown in the abstract process. Thus, the abstract process shows to the outside world the sequence of messages that are required to interact with that business process. Abstract processes are contained within a Pool and can be modeled separately or within a larger BPMN Diagram to show the Message Flow between the abstract process activities and other entities. If the abstract process is in the same Diagram as its corresponding private business process, then the activities that are common to both processes can be associated.

32 Introduction to BPMN, BPEL, and XPDL 4/28/2020

   

Collaboration (global) processes

A collaboration process depicts the interactions between two or more business entities. These interactions are defined as a sequence of activities that represent the message exchange patterns between the entities involved. Collaboration processes may be contained within a Pool and the different participant business interactions are shown as Lanes within the Pool. In this situation, each Lane would represent two participants and a direction of travel between them. They may also be shown as two or more Abstract Processes interacting through Message Flow (as described in the previous section). These processes can be modeled separately or within a larger BPMN Diagram to show the Associations between the collaboration process activities and other entities. If the collaboration process is in the same Diagram as one of its corresponding private business process, then the activities that are common to both processes can be associated.

33 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Modeled with BPMN

            Within and between these three BPMN sub-models, many types of Diagrams can be created. The following are the types of business processes that can be modeled with BPMN (those with asterisks may not map to an executable language): High-level private process activities (not functional breakdown)* Detailed private business process As-is or old business process* To-be or new business process Detailed private business process with interactions to one or more external entities (or “Black Box” processes) Two or more detailed private business processes interacting Detailed private business process relationship to Abstract Process Detailed private business process relationship to Collaboration Process Two or more Abstract Processes* Abstract Process relationship to Collaboration Process* Collaboration Process only (e.g., ebXML BPSS or RosettaNet)* Two or more detailed private business processes interacting through their Abstract Processes and/or a Collaboration Process 34 Introduction to BPMN, BPEL, and XPDL 4/28/2020

   BPMN is designed to allow all the above types of Diagrams. However, it should be cautioned that if too many types of sub models are combined, such as three or more private processes with message flow between each of them, then the Diagram may become too hard for someone to understand. Thus, we recommend that the modeler pick a focused purpose for the BPD, such as a private process, or a collaboration process.

35 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Weaknesses of BPMN

     The weaknesses of BPMN could relate to: ambiguity and confusion in sharing BPMN models support for routine work support for knowledge work, and converting BPMN models to executable environments 36 Introduction to BPMN, BPEL, and XPDL 4/28/2020

 The primary goal of BPMN is to provide a a business process modeling notation that is understandable by all business users, from the business analysts that create the design of the processes, to the technical developers responsible for implementing the technology that will perform those processes, and finally, to the business managers who will manage and monitor those processes.

37 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  The secondary goal of BPMN is to ensure that XML languages designed for the execution of business processes, like BPEL4WS (Business Process Execution Language for Web Services), can be visualized with a business-oriented notation.

BPMN enables developers, analysts and business managers the ability to communicate business processes in a standard manner.

The business users should be able to easily read and understand a BPMN business process diagram. The process developers should be able to easily read and implement a business process diagram without further details.

38 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  BPMN is the current modeling standard within the business modeling community.

Unlike object-oriented modelling techniques, BPMN takes a process-oriented approach to process modelling, that is more conducive to the way business analysts model.

BPMN is intended to supply sufficient information to allow it to be the source of an executable process.

BPMN consists of a diagram, called the Business Process Diagram (BPD). The BPMN Business Process Diagram has been designed to be easy to use and understand, but also provides the ability to model complex business processes. 39 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  To model a business process workflow, you set the business process starting event, business decisions, workflow branching (gateways) and workflow outputs & results.

BPMN, which maps directly to BPEL, was developed with a solid mathematical foundation - the Pi-Calculus branch of Process Calculi. This is a formal method of computation for dynamic and mobile processes which ensures that business processes can be directly mapped to any business modeling executable languages for immediate execution. 40 Introduction to BPMN, BPEL, and XPDL 4/28/2020

 PNMsoft provides rich and comprehensive support for Business Process Modeling Notation (BPMN). Live workflows can be exported and imported as BPMN or BPEL files providing an activation layer which enables users to generate applications based on BPMN and BPEL modeling. 41 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Agenda

 Business Process Modeling Notation (BPMN)  Business Process Executive Language (BPEL)  XML Process Definition Language (XPDL)  Brief Comparison  References 42 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Business Process Execution Language (BPEL)

      Business Process Execution Language (BPEL) is a XML based language used to define enterprise business processes within Web services.

Every company has its unique way of defining its business process flow.

The key objective of BPEL is to standardize the format of business process flow definition so companies can work together seamlessly using Web services. BPEL extends the Web services interaction model and enables it to support business transactions. BPEL is based on Web services in the sense that each of the business process involved is assumed to be implemented as a Web service. Processes written in BPEL can orchestrate interactions between Web services using XML documents in a standardized manner. These processes can be executed on any platform or product that complies with the BPEL specification.

43 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Two different types of business processes

   BPEL supports two different types of business processes: Executable processes: Models the actual behavior of a participant in a business interaction. They follow the orchestration paradigm and can be executed by an orchestration engine. Abstract processes: Uses process descriptions that specify the mutually visible message exchange behavior of each of the parties involved in the protocol, without revealing their internal behavior. BPEL is used to model the behavior of both executable and abstract processes 44 Introduction to BPMN, BPEL, and XPDL 4/28/2020

BPEL for Web Services

   BPEL is a specification jointly authored by IBM, Microsoft, and BEA that formed part of a trio of specifications which also included application Web service coordination and transactions to support the development of reliable, inter enterprise workflows.

  The central tenet of BPEL is the ability: Capture both the constitute activities of a workflow and relationships between partners in a platform-neutral

format

(XML), and Support the highest possible level of

technology

interoperability by basing the on commonly adopted Web services standards.

 BPEL is grounded on the WSDL 1.1 specification, Where stateless Web service interfaces are augmented with state management and message correlating features .

45 Introduction to BPMN, BPEL, and XPDL 4/28/2020

The BPEL Stack

The BPEL model is built on a number of layers, with each layer building on the facilities of the previous.

Scopes Partners Activities Basic Activities Structured Activities Service Link Service Reference Message Correlation Message Properties 46 Introduction to BPMN, BPEL, and XPDL 4/28/2020

BPEL Model (Using Class Diagram)

47 Introduction to BPMN, BPEL, and XPDL BPEL 模型示意 4/28/2020

Activity Types in BPEL

Structuring Activities 

Miscellaneous Activities 

Communication Activities 

Exception Handling Activities 

48 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Service Linking, Partners, and Service References

 BPEL provides a means of capturing the roles played by business partners in a Web service-based workflow through

Service linking

,

Partners

, and

Service References

.

Service Link Endpoint Role Endpoint Role Partner PortType PortType Service Reference Service Service 49 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Correlating Web Services Invocations

”no”/>

yes

”/> Correlation Set Insert Correlated Values Outgoing Message Correlation Set Store Correlated Values Outgoing Message

yes

”/> Correlation Set Check Correlated Values Incoming Message Initialize Correlation Set Correlation Set Store Correlated Values Incoming Message Route to Existing Process Instance 50

Figure. Initiators and followers of correlation sets.

Introduction to BPMN, BPEL, and XPDL 4/28/2020

An Example: Purchasing a Pay Per View

6-51 Figure. Purchasing a Pay Per View event for cable television subscribers. 0B102 Web Services Technologies

Agenda

 Business Process Modeling Notation (BPMN)  Business Process Executive Language (BPEL)  XML Process Definition Language (XPDL)  Brief Comparison  References 52 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XML Process Definition Language (XPDL)

  The XML Process Definition Language (XPDL) is a format standardized by the Workflow Management Coalition (WfMC) to interchange Business Process definitions between different workflow products, i.e. between different modeling tools and management suites. XPDL defines an XML schema for specifying the declarative part of workflow / business process.

53 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XML Process Definition Language (XPDL)

   XPDL is designed to exchange the process definition, both the graphics and the semantics of a workflow business process. XPDL is currently the best file format for exchange of BPMN diagrams; it has been designed specifically to store all aspects of a BPMN diagram.   XPDL contains elements to hold graphical information, such as the X and Y position of the nodes, as well as executable aspects which would be used to run a process. This distinguishes XPDL from BPEL which focuses exclusively on the executable aspects of the process. BPEL does not contain elements to represent the graphical aspects of a process diagram.

54 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Workflow Management Coalition

  The Workflow Management Coalition, founded in August 1993, began by defining the Workflow Reference Model (ultimately published in 1995) that outlined the five key interfaces that a workflow management system must have. Interface 1 was for defining the business process, which includes two aspects: a process definition expression language and a programmatic interface to transfer the process definition to/from the workflow management system.

55 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Workflow Process Definition Language (WPDL)

   The first revision of a process definition expression language was called Workflow Process Definition Language (WPDL) which was published in 1998. This process meta-model contained all the key concepts required to support workflow automation expressed using URL Encoding. Interoperability demonstrations were held to confirm the usefulness of this language as a way to communicate process models.

56 Introduction to BPMN, BPEL, and XPDL 4/28/2020

   

XML Process Definition Language (XPDL)

By 1998, the first standards based on XML began to appear. The utility of using an XML syntax upon which to base an interchange language was apparent.  The Workflow Management Coalition Working Group 1 produced an updated process definition expression language called XML Process Definition Language (XPDL) now known as XPDL 1.0. This second revision was an XML based interchange language that contained many of the same concepts as WPDL, with some improvements. XPDL 1.0 was ratified by the WfMC in 2002, and was subsequently implemented by more than two dozen workflow/BPM products to exchange process definitions. There was a large number of research projects and academic studies on workflow capabilities around XPDL, which was essentially the only standard language at the time for interchange of process design.

57 Introduction to BPMN, BPEL, and XPDL 4/28/2020

WfMC endorsed BPMN

   The WfMC continued to update and improve the process definition interchange language. In 2004 the WfMC endorsed BPMN, a graphical formalism to standardize the way that process definitions were visualized.  XPDL was extended specifically with the goal to be able to represent in XML all of the concepts present in a BPMN diagram. This third revision of a process definition expression language is known as XPDL 2.0 and was ratified by the WfMC in Oct of 2005.

58 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XPDL 2.1

  In April 2008, the WfMC ratified XPDL 2.1 as the fourth revision of this specification.

XPDL 2.1 includes extension to handle new BPMN 1.1 constructs, as well as clarification of conformance criteria for implementations.

  XPDL 2.1 Schema (bpmnxpdl_31.xsd): http://www.wfmc.org/standards/docs/bpmnxpdl_31.xsd

59 Introduction to BPMN, BPEL, and XPDL 4/28/2020

    

About XPDL 2.1: XPDL is the Serialization Format for BPMN

BPMN is a visual process notation standard from the OMG, endorsed by WfMC, and broadly adopted across the industry. But the BPMN standard defines only the look of how the process definition is displayed on the screen. How you store and interchange those process definitions is outside the scope of the standard, and this is where XPDL comes in. XPDL provides a file format that supports every aspect of the BPMN process definition notation including graphical descriptions of the diagram, as well as executable properties used at run time. With XPDL, a product can write out a process definition with full fidelity, and another product can read it in and reproduce the same diagram that was sent.

60 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XPDL Enables a Process Definition Ecosystem

   XPDL is used today by more than 80 different products today to exchange process definitions. As a greater percentage part of the organization starts to use process tools for everyday work, it will become less and less reasonable to take a single-vendor strategy to process definition work. Users need to go beyond the vendor lock-in, and take a "best of breed" approach that allows the use of their favorite process technology to accomplish specific process oriented tasks, such as simulation and optimization, and future tasks that we can only dream of today. 61 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XPDL Enables a Process Definition Ecosystem

  XPDL is extensible so that it allows each different tool to store implementation specific information within the XPDL, and have those values preserved even when manipulated by tools that do not understand those extensions. This is the only way to provide for a "round trip" through multiple tool and still be able to return to the original tool with complete fidelity. 62 Introduction to BPMN, BPEL, and XPDL 4/28/2020

How Does XPDL Compare to BPEL?

   BPEL and XPDL are entirely different yet complimentary standards. BPEL is an "execution language" designed to provide a definition of web services orchestration. It defines only the executable aspects of a process, when that process is dealing exclusively with web services and XML data. BPEL does not define the graphical diagram, human oriented processes, subprocess, and many other aspects of a modern business process: it simply was never defined to carry the business process diagram from design tool to design tool.

63 Introduction to BPMN, BPEL, and XPDL 4/28/2020

XPDL Conformance

    The WfMC has started an interoperability test procedure between the various implementers of XPDL. It is in everyone’s interest to make sure that the files we read and write can actually be interchanged with other products. This additional step beyond the “claim” for XPDL support will help to ensure that we and our customers get full value from XPDL. This discussion is focused at vendors and individuals who have actually implemented XPDL, or who expect to implement it in the near future.

64 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Powered By XPDL

   XPDL is the most widely deployed process definition language and XML-based BPM standard, leveraged by broad spectrum of software applications ranging from ERP, call center and CRM, BI and BAM, process modeling and simulation, enterprise content management, as well as of course several of the leading workflow and BPM Suites.

It has become the de facto global standard for workflow and BPM, and a common requirement of RFPs, and has been the foundation for mission critical systems and infrastructure, such as the provisioning systems at Telecom Italia. There are over 80 products and applications that leverage XPDL on Java, Microsoft .NET Framework, or Linux.

65 Introduction to BPMN, BPEL, and XPDL 4/28/2020

WfMC (Workflow Management Coalition)

 The XPDL is approved by WfMC (Workflow Management Coalition), a global consortium of professionals, research scholars and groups engaged in workflow, BPM (Business Process Management) and Business Process Modeling, and ,also, including well known technology companies such as IBM, Hewlett-Packard, Fujitsu, TIBCO Software Inc, NEC Soft etc., for defining standards for the interoperability of workflow management. 66 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Defines an XML schema

   The XPDL primarily defines an XML schema which is used for specifying the declarative part of workflow in a business process. Unlike BPEL (Business Process Execution Language), XPDL is not an executable programming language. The XPDL is strictly a process design format for storing process syntax for business process models and graphical information of the process elements. 67 Introduction to BPMN, BPEL, and XPDL 4/28/2020

WPDL (Workflow Process Definition Language)

   Design of the XPDL is primarily based on an earlier process definition expression language ratified by WfMC and published in 1998, called WPDL (Workflow Process Definition Language). The WPDL was a process meta-model language supporting workflow automation via use of URL encoding. The WPDL process meta-language was particularly found useful in implementing interoperability in communication processes. 68 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Store and exchange the process diagram

 The key objective of XPDL is to store and exchange the process diagram enabling serialization of BPMN in particular and , also, any other process model or process design tool which are compatible to and capable of using XPDL meta model definitions. 69 Introduction to BPMN, BPEL, and XPDL 4/28/2020

A process design format

    XPDL is basically a process design format in XML that represents drawing of the process definition. XPDL facilitates modification of a process diagram without necessarily using process design tools. The XPDL format file includes the vector coordinates that may represent points or lines used in process flow design. Using XPDL, an XPDL compliant BPM engine can run the process model. 70 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Implementation of file format exchange of BPMN

 The XPDL is particularly suitable for implementation of file format exchange of BPMN (Business Process Modeling Notation) diagrams, an OMG (Object Management Group) standard using graphic notations for representing business processes in a workflow . 71 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Business Process Modelling Notation v. 1.2

Gateways Activities Data-based Exclusive Gateway Paralllel Gateway Inclusive Gateway Event-based Exclusive Gateway Complex Gateway Task Multiple Instances Collapsed Subprocess Plain Message Timer Error Cancel Compensation Conditional Signal Multiple Link Terminate Events Start Intermediate Catching End Throwing v.0.2

72 Loop Ad-hoc Subprocesses ∼ Sequence Flow Conditional Flow Default Flow Message Flow Introduction to BPMN, BPEL, and XPDL

Author: Web: Christoph Hartmann http://www.acidum.de

Data Data Object Undirected Association Directed Association Bidirected Association Data Object Transaction Transaction Documentation Group Text Annotation 4/28/2020

Agenda

 Business Process Modeling Notation (BPMN)  Business Process Executive Language (BPEL)  XML Process Definition Language (XPDL)  Brief Comparison  References 73 Introduction to BPMN, BPEL, and XPDL 4/28/2020

  

BPEL, XPDL and BPMN

BPEL supports web services and system to system applications workflow because:   BPEL specifies the behavior of business processes between web services using web services. Messages and partners are both defined using WSDL. BPEL extends WSDL by adding include partnerLink constructs to it.

BPEL does not support human workflow.

Some people prefer XPDL for human workflow because this is what it is best suited for.

  XPDL is one of the few BP standards that includes human interactions as part of a business process.

XPDL also lacks transaction and fault semantics, making it less than ideal for system-to-system workflows.

BPMN is a notation that has been mapped to both XPDL and BPEL. BPMN is capable of modeling processes that cannot be represented using BPEL 74 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Compare WS-BPEL and BPMN

   The BPMN specification includes an informal and partial mapping from BPMN to BPEL 1.1. A more detailed mapping of BPMN to BPEL has been implemented in a number of tools, including an open-source tool known as BPMN2BPEL.  However, the development of these tools has exposed fundamental differences between BPMN and BPEL, which make it very difficult, and in some cases impossible, to generate human-readable BPEL code from BPMN models. Even more difficult is the problem of BPMN-to-BPEL round-trip engineering:  generating BPEL code from BPMN diagrams and maintaining the original BPMN model and the generated BPEL code synchronized, in the sense that any modification to one is propagated to the other.

75 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Compare the goals of BPEL and XPDL

The goal of BPEL

   To provide a definition of web service orchestration, the underlying sequence of interactions, the flow of data from point to point. Ultimately BPEL is all about bits and bytes being moved from place to place and manipulated. It does not however attempt to represent the drawing that you used specify the orchestration.

The goal of XPDL

   To store and exchange the process diagram. It allows one process design tool to write out the diagram, and another to read the diagram, and for the picture that you see to be as similar as possible. It does not, however, guarantee the precise execution semantics. As you see, BPEL and XPDL are entirely different things for entirely different purposes.

76 Introduction to BPMN, BPEL, and XPDL 4/28/2020

Agenda

 Business Process Modeling Notation (BPMN)  Business Process Executive Language (BPEL)  XML Process Definition Language (XPDL)  Brief Comparison  References 77 Introduction to BPMN, BPEL, and XPDL 4/28/2020

References

  BPEL, XPDL and BPMN: http://social.msdn.microsoft.com/forums/en US/architecturegeneral/thread/b8692bd8-5c32-47e8-96f8-46c33210ee99/ BPMN – BPEL and XPDL Editors, http://davidkbarker.wordpress.com/2007/11/15/9/ 78 Introduction to BPMN, BPEL, and XPDL 4/28/2020

79 Questions Introduction to BPMN, BPEL, and XPDL 4/28/2020