semantics (requirements) of business process

26
Semantics (requirements) of Business Process Ang Chen 31 Jan. 2008

Upload: angchen

Post on 10-Dec-2014

2.494 views

Category:

Education


1 download

DESCRIPTION

Discuss the semantics requirements of business process, mainly for the modeling of control-flow, dataflow, and transaction in business process modeling

TRANSCRIPT

Page 1: Semantics (requirements) of Business Process

Semantics (requirements) of Business Process

Ang Chen31 Jan. 2008

Page 2: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Objective: to observe

• The requirements of BP semantics via Workflow Patterns and BPEL

• The role of Petri Net in BP modeling: Graphical notation? Semantics foundation? Executable language?

• Advantages / disadvantages of using PN as semantics basis of BP (e.g. comparing with Pi-calculus)

• The missing part of BP modeling with PN, i.e. the data-flow

2

Page 3: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Papers• [1]. Workflow Patterns. W.M.P van der Aalst, A.H.M. ter Hofstede, B.

Kiepuszewski, and A.P. Barros. Distributed and Parallel Databases, 14(3), July 2003

• [2]. Formal semantics and analysis of control flow in WS-BPEL. Science of Computer Programming, Volume 67, Issues 2-3, 1 July 2007. Chun Ouyang, Eric Verbeek, Wil M.P. van der Aalst, Stephan Breutel, Marlon Dumas and Arthur H.M. ter Hofstede

• [3]. A pi-calculus based semantics for WS-BPEL. Journal of Logic and Algebraic Programming, Volume 70, Issue 1, January 2007. Roberto Lucchi and Manuel Mazzara

• [4]. Information System Behavior Specification by High-Level Petri Nets. A. Oberweis, P. Sander. ACM Transactions on Information Systems, Vol. 1, No. 4, October 1996

• [5]. Petri Net + Nested Relational Calculus = Dataflow. Jan Hidders, Natalia Kwasnikowska, Jacek Sroka, Jerzy Tyszkiewicz, and Jan Van den Bussche. 2005

3

Page 4: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Topics

• Workflow Patterns [1] and BPEL: they represent requirements of business process modeling in academic and industry, respectively

• Semantics (of BPEL control-flow): Petri Net [2], Pi-Calculus [3]

• Data-Flow modeling: [4] [5]

• Not included: Transaction

4

Page 5: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Topics

Workflow

patterns

BPEL

Petri Net

Pi-Calculus

Data-Flow

Modeling

[1]

[4] [5]

realize

formalization [2]

formalization [3]

use

5

Page 6: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Outline

• Non-local semantics of workflow patterns

• BPEL formalization

• Data-Flow Modeling in BP

• Conclusion

6

Page 7: Semantics (requirements) of Business Process

Non-local semantics of Workflow Patterns

Page 8: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Workflow patterns

• [1]. identifies 20 control-flow patterns and uses them to evaluate products

• Basic constructs (1-5): sequence, join, split

• Advanced branching and synchronization (6-9): merges

• Structural (10-11): arbitrary cycle, implicit termination

• Multi-instances (12-15)

• State-Based (16-18)

• Cancellation (19-20)

8

Page 9: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Non-local semantics (Join) I

• Non-blocking (asynchronous) Join (N of M): select N from M without waiting M inputs

•xor-join:1 of M non-blocking join, D or E are activated once per case•multi-merge: D, E can be activated several times per case•discriminator: D, E can be activated several times, then reset

EC

D

join

A

B

9

split

Page 10: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Non-local semantics (Join) II

• In non-blocking join, the connector needs non-local information to take decision

A

B

C

split Gjoin

E

F

10

Page 11: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Non-local semantics of workflow patterns

• Most workflow patterns need non-local information between the activities, e.g. merge, case cancellation, cycles with multiple instances ...

11

Page 12: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Role of PN

• PN can be a semantics basis

• pros: easy to be verified for analysis purpose

• cons: few patterns can be modeled directly due to its local semantics

• Not easy to directly model BP with PN, extension of PN semantics is necessary

12

Page 13: Semantics (requirements) of Business Process

BPEL Formalization

Page 14: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

BPEL

• Business Process Execution Language based on Web Service, for the composition of Web Service

• Units of composition: Activity, Scope

• Control-Flow constructs: sequence, flow, switch, pick, while, link, fault, compensation

• The specification does not provide a formal semantics, thus not clear (or ambiguous) in some details, e.g. completion conditions of parallel tasks

14

Page 15: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

BPEL Semantics

• Semantics of BPEL control-flow in Petri Net [2] and Pi-Calculus [3]

• Both: obtain unambiguous semantics of BPEL

• [2] provides static analysis methods, e.g. find unreachable activities

• [3] possible to verify the behavioral equivalence of processes (future work)

15

Page 16: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Petri Net [2]

• Activities and scopes are transformed into PN structure

• State-oriented, easy to find case states

Start

Ready

Completed

Finished

Y

Y

skipped

skip

to skip

Run X

Activity X

X

Y

Y

Start

Ready

Completed

Finished

YY

skipped

skip

to skip

Run X

Scope Q

!

X

Y

YC

X

:-)

16

Page 17: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Pi-Calculus [3]

• Formalization of control-flow is quite direct, but difficult to read

• Abstraction of service is well preserved, e.g. action signature

• Channels are used to handle faults and compensations

• States of processes are encoded, however, states of cases are lost

17

Page 18: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

BPEL formalization

• There has been debates on the semantics basis of BP languages, e.g. PN vs. Pi-calculus

• Each approach has its advantages

• Till now, verifications are limited to static control-flow analysis

• Data-flow analysis is missing

18

Page 19: Semantics (requirements) of Business Process

Data-Flow Modeling in BP

Page 20: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Data-Flow

• Very general topic, many work have been done in database and parallel computing domain

• Few publications in BP modeling, especially the integration of Control-Flow and Data-Flow (e.g. be able to extract CF from DF)

• [4] , [5] try to address the data-flow problem in information system with Petri Net (control-flow + data-flow)

20

Page 21: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Data-Flow modeling [4]• [4] proposes Predicate/Transition Net + Nested

Relation Calculus

• Add formally defined behaviors to information systems

• Processes are modeled by Predicate/Transition Net, tokens are relation instances

• A different approach than CRUD in SQL to manage data (based on insertion and deletion of tuples)

21

Page 22: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

NR/T Net

22

• Places are relations, relation instances are sets of tuples

• Use tuples and filter table to manipulate relation instances

• Filter tables inscribed on PN arcs give rules of manipulating instances (Inclusion order vs. Object order)

• Transitions are annotated by logical formulas

Page 23: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Data-Flow modeling [5]

• [5] : Petri Net + Nested Relational Calculus = Data-Flow Language

• Use operations on set and record

• Edge annotation (simple condition), transition label (set operations, user-defined labels)

• Use simple control-flow, it is designed to describe the flow of large amount of data

• CRUD operations on data are not concerned

23

Page 24: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Data-Flow

• Control-flow is a particular kind of data-flow

• No convenient solutions (yet) for data-flow modeling in BP

• Related topic: process mining tries to discover control-flow from observed data-flow

24

Page 25: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

Conclusion

• This study motivates to propose an approach which:

• Integrates Control-Flow and Data-Flow

• Supports relational data model

• Based on PN or Process algebra, or both

• Can be a semantics basis of BPEL and other languages

• Supports all workflow patterns, if possible

25

Page 26: Semantics (requirements) of Business Process

A.Chen, 31 jan 2008

BP Modeling with ID-Net

• Places are typed, e.g. by relations. Tokens are identifications, e.g. relation keys

• Transitions are processes whose behaviors are described by process algebra

• Operations on relational data are attached to the transition process without changing the ID-Net’s control-flow, i.e. data-flow integration

• Both case state and process state are traceable

26