In manufacturing, objects are naturally coupled by the “part-of” relationship.
Our approach is valuable also in this context, as it can identify whether the implementation components have dependencies other than those resulting from the semantic relationships between objects.
In workflow management, several approaches have been proposed for decen- tralizing workflows with the goal of optimizing their execution [12,13]. For ex- ample, the approach in [12] involves minimizing the loads and number of syn- chronization messages exchanged between the distributed workflow components.
Although in our approach we also strive to reduce the number of dependen- cies between components, execution optimization is not our primary focus. The object life cycle components dealt with in this paper need to be refined and maintained by developers, whereas workflow decentralization happens once a workflow is deployed and its results are not exposed to the developers.
6. Bhattacharya, K., Guttman, R., Lyman, K., et al.: A Model-Driven Approach to Industrializing Discovery Processes in Pharmaceutical Research. IBM Systems Journal 44(1), 145–162 (2005)
7. Briand, L.C., Daly, J.W., W¨ust, J.: A Unified Framework for Coupling Mea- surement in Object-Oriented Systems. IEEE Transactions on Software Engineer- ing 25(1), 91–121 (1999)
8. Lee, J.K., Seung, S.J., Kim, S.D., Hyun, W., Han, D.H.: Component Identification Method with Coupling and Cohesion. In: Proc. of the 8th Asia-Pacific Conf. on Software Engineering, pp. 79–86. IEEE Computer Society, Los Alamitos (2001) 9. Muchnick, S.: Advanced Compiler Design and Implementation. Morgan Kaufmann,
San Francisco (1997)
10. M¨uller, D., Reichert, M., Herbst, J.: Flexibility of Data-Driven Process Structures.
In: Eder, J., Dustdar, S. (eds.) BPM Workshops 2006. LNCS, vol. 4103, pp. 181–
192. Springer, Heidelberg (2006)
11. M¨uller, D., Reichert, M., Herbst, J.: Data-Driven Modeling and Coordination of Large Process Structures. In: Meersman, R., Tari, Z. (eds.) OTM 2007, Part I.
LNCS, vol. 4803, pp. 131–149. Springer, Heidelberg (2007)
12. Muth, P., Wodtke, D., Weißenfels, J., Kotz Dittrich, A., Weikum, G.: From Cen- tralized Workflow Specification to Distributed Workflow Execution. Journal of In- telligent Information Systems 10(2), 159–184 (1998)
13. Nanda, M.G., Chandra, S., Sarkar, V.: Decentralizing Execution of Composite Web Services. In: Proc. of the 19th Annual ACM SIGPLAN Conf. on Object-Oriented Programming, Systems, Languages, and Applications, pp. 170–187. ACM, New York (2004)
14. Nandi, P., Kumaran, S.: Adaptive Business Object - A New Component Model for Business Integration. In: Proc. of the 8th Int. Conf. on Enterprise Information Systems, pp. 179–188 (2005)
15. Nigam, A., Caswell, N.S.: Business Artifacts: An Approach to Operational Speci- fication. IBM Systems Journal 42(3), 428–445 (2003)
16. Reijers, H.A., Limam, S., van der Aalst, W.M.P.: Product-Based Workflow Design.
Journal of Management Information Systems 20(1), 229–262
17. Reijers, H.A., Vanderfeesten, I.T.P.: Cohesion and Coupling Metrics for Workflow Process Design. In: Desel, J., Pernici, B., Weske, M. (eds.) BPM 2004. LNCS, vol. 3080, pp. 290–305. Springer, Heidelberg (2004)
18. Ryndina, K., K¨uster, J.M., Gall, H.: Consistency of Business Process Models and Object Life Cycles. In: K¨uhne, T. (ed.) MoDELS 2006. LNCS, vol. 4364, pp. 80–90.
Springer, Heidelberg (2007)
19. Ryndina, K., K¨uster, J.M., Gall, H.: A Tool for Integrating Object Life Cycle and Business Process Modeling. In: Proc. of the BPM Demonstration Program at the 5th Int. Conf. on Business Process Management. CEUR-WS (2007)
20. van der Aalst, W.M.P., Barthelmess, P., Ellis, C.A., Wainer, J.: Proclets: A Frame- work for Lightweight Interacting Workflow Processes. International Journal of Co- operative Information Systems 10(4), 443–481 (2001)
21. van der Aalst, W.M.P., ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.:
Workflow Patterns. Distributed and Parallel Databases 14(1), 5–51 (2003) 22. Wohed, P., van der Aalst, W.M.P., Dumas, M., ter Hofstede, A.H.M.: Analysis
of Web Services Composition Languages: The Case of BPEL4WS. In: Song, I.-Y., Liddle, S.W., Ling, T.-W., Scheuermann, P. (eds.) ER 2003. LNCS, vol. 2813, pp.
200–215. Springer, Heidelberg (2003)
Gero Decker1 and Jan Mendling2
1 Hasso-Plattner-Institute, University of Potsdam, Germany [email protected]
2 Queensland University of Technology, Brisbane, Australia [email protected]
Abstract. Although several process modeling languages allow one to specify processes with multiple start elements, the precise semantics of such models are often unclear, both from a pragmatic and from a the- oretical point of view. This paper addresses the lack of research on this problem and introduces the CASU framework. The contribution of this framework is a systematic description of design alternatives for the spec- ification of instantiation semantics of process modeling languages. We classify six of the most prominent languages by the help of this frame- work. Our work provides the basis for the design of new correctness cri- teria as well as for the formalization of EPCs and extension of BPMN.
It complements research such as the workflow patterns.
1 Introduction
Process modeling techniques have been widely adopted by businesses and other organizations for documenting their operations. In this context, process models describe business activities along with their temporal and logical relationships within business processes of the organization, either as reflection of the status quo or as a road map for change. Process models are also used for configuring information systems, in particular workflow systems, that create and handle singular cases (or instances) according to the rules defined in the model.
There are several business process modeling languages that define the basic elements for constructing individual business process models. In this paper we consider the six most prominent ones and assume that the reader has some basic understanding of their syntax and semantics. They are in historical order:
– Petri nets (PN) [1], a formalism to specify processes with concurrency. In particular, we will focus on Open Workflow Nets (oWFNs) [2] which extend Workflow nets [3] with interface places.
– Event-driven Process Chains (EPCs) [4], the business process modeling lan- guage used within the ARIS framework and the respective toolset [5].
– UML Activity Diagrams (UAD) [6], the process modeling language of UML.
– Yet Another Workflow Language (YAWL) [7], the workflow language that builds on the workflow patterns analysis [8].
– Business Process Execution Language for Web Services (BPEL) [9], the pro- posed OASIS standard for web service composition and execution.
M. Dumas, M. Reichert, and M.-C. Shan (Eds.): BPM 2008, LNCS 5240, pp. 164–179, 2008.
c Springer-Verlag Berlin Heidelberg 2008
– Business Process Modeling Notation (BPMN) [10], the OMG standard no- tation for describing business processes.
In practice these languages tend to be used in different design phases: while executable processes and workflows are often defined as BPEL or YAWL models, Petri nets and UAD specify processes in a way that easily supports software development. EPCs and BPMN are meant to serve as a high-level description of business operations. For an introduction to these languages refer to [11].
In this paper we focus on the problem of process instantiation and its represen- tation in process models. This problem is little understood in theory and practice, and it poses a considerable challenge for mapping conceptual models to executable processes. In particular, such conceptual models tend to have a significant amount of control flow errors like deadlocks [12,13]. 57% of these errors in the SAP Ref- erence Model, i.e. 102 out of 178 [14, p.150], can be traced back to an unsound combination of multiple start and end events. The BPMN specification acknowl- edges that the semantics of multiple start events are often unclear [10, p.36]. Even though there has been a considerable amount of academic contributions on the formalization of control flow constructs in all the six mentioned process modeling languages, these works tend to abstract from the problem of process instantiation.
Most notably, the original workflow patterns [8] do not cover any instantiation patterns. A revised set of control-flow patterns [15] discusses the effect of external signals on the execution of a process instance (WCP-23 Transient Trigger, WCP- 24 Persistent Trigger), but not on instantiation.
Against this background, this paper provides a twofold contribution. First, we define a conceptual framework to describe process instantiation semantics as assumed in different process modeling languages. This framework is called CASU since it builds on four pillars: instantiation creation (C), control threads activation (A), event subscription (S), and unsubscription (U). Second, we use this framework to classify and compare the instantiation semantics of the six mentioned modeling languages. In particular, this comparison reveals additional problems of mapping BPMN to BPEL beyond those discussed in [16,17,18].
The remainder of this paper is structured as follows. In Section 2 we discuss how process instantiation is represented in Petri nets, EPCs, UML-AD, YAWL, BPEL, and BPMN. We define a set of general concepts to make the approaches comparable. Then, Section 3 introduce the CASU framework to describe differ- ent instantiation semantics of process modeling languages. We provide a clas- sification of the languages according to this framework. Section 4 discusses the implications of this work, in particular, its relationship to existing research on the verification of process models as well as potential directions for EPC formal- ization and BPMN extension. Finally, Section 5 concludes the paper.