Semantics (requirements) of Business Process

1,354 views
1,242 views

Published on

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

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,354
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
73
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Semantics (requirements) of Business Process

  1. 1. Semantics (requirements) of Business Process Ang Chen 31 Jan. 2008
  2. 2. 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 A.Chen, 31 jan 2008 2
  3. 3. 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 A.Chen, 31 jan 2008 3
  4. 4. 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 A.Chen, 31 jan 2008 4
  5. 5. Topics [1] Workflow realize Petri Net patterns formalization [2] use [4] [5] BPEL Data-Flow Modeling formalization [3] Pi-Calculus A.Chen, 31 jan 2008 5
  6. 6. Outline • Non-local semantics of workflow patterns • BPEL formalization • Data-Flow Modeling in BP • Conclusion A.Chen, 31 jan 2008 6
  7. 7. Non-local semantics of Workflow Patterns
  8. 8. 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) A.Chen, 31 jan 2008 8
  9. 9. Non-local semantics (Join) I A D split B join C E • 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 A.Chen, 31 jan 2008 9
  10. 10. Non-local semantics (Join) II B E A split join G C F • In non-blocking join, the connector needs non-local information to take decision A.Chen, 31 jan 2008 10
  11. 11. 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 ... A.Chen, 31 jan 2008 11
  12. 12. 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 A.Chen, 31 jan 2008 12
  13. 13. BPEL Formalization
  14. 14. 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 A.Chen, 31 jan 2008 14
  15. 15. 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) A.Chen, 31 jan 2008 15
  16. 16. Petri Net [2] to skip Y Ready to skip Y Ready Start Y Start skip Y X skip Run X X Run X C Y Y Completed X skipped Y Completed skipped Finished Activity X Y ! :-) Finished Scope Q • Activities and scopes are transformed into PN structure • State-oriented, easy to find case states A.Chen, 31 jan 2008 16
  17. 17. 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 A.Chen, 31 jan 2008 17
  18. 18. 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 A.Chen, 31 jan 2008 18
  19. 19. Data-Flow Modeling in BP
  20. 20. 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) A.Chen, 31 jan 2008 20
  21. 21. 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) A.Chen, 31 jan 2008 21
  22. 22. NR/T Net • 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 A.Chen, 31 jan 2008 22
  23. 23. 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 A.Chen, 31 jan 2008 23
  24. 24. 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 A.Chen, 31 jan 2008 24
  25. 25. 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 A.Chen, 31 jan 2008 25
  26. 26. 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 A.Chen, 31 jan 2008 26

×