Formalising Workflow: A CCS-inspired Characterisation of the YAWL Workflow Patterns

We present work concerning the formal specification of business processes. It is of substantial benefit to be able to pin down the meaning of business processes precisely. This is an end in itself, but we are also concerned to do so in order that we might prove properties about the business processes that are being specified. It is a notable characteristic of most languages for representing business processes that they lack a robust semantics, and a notable characteristic of most commercial Business Process Management products that they have no support for verification of business process models. We define a high-level meta-model, called Liesbet, for representing business processes. The ontological commitments for Liesbet are sourced from the YAWL workflow patterns, which have been defined from studies into the behavioural nature of business processes. A formal characterisation of Liesbet is provided using Milner’s Calculus of Communicating Systems (CCS). In this article, we omit some of the technical details of this characterisation and instead present the essential features by means of an abstract machine language, called LCCS. We also explain how we have facilitated the verification of certain properties of business processes specified in Liesbet, and discuss how Liesbet supports the YAWL workflow patterns. We include a simple three-part example of using Liesbet.

[1]  Sanjiva Weerawarana,et al.  Unraveling the Web services web: an introduction to SOAP, WSDL, and UDDI , 2002, IEEE Internet Computing.

[2]  Jan Verelst,et al.  When are two Workflows the Same? , 2005, CATS.

[3]  Simon Parsons,et al.  Knowledge in action: Logical foundations for specifying and implementing dynamical systems by Raymond Reiter, MIT Press, 0-262-18218-1, 448 pp., $60.00/£38.95 , 2005, The Knowledge Engineering Review.

[4]  Rance Cleaveland,et al.  Priorities in process algebras , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[5]  Glenn Bruns,et al.  Distributed systems analysis with CCS , 1997 .

[6]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[7]  Wil M.P. van der Aalst,et al.  YAWL: yet another workflow language , 2005, Inf. Syst..

[8]  Mathias Weske,et al.  Using the pi-Calculus for Formalizing Workflow Patterns , 2005, Business Process Management.

[9]  Raheel Ahmad,et al.  The π-Calculus: A theory of mobile processes , 2008, Scalable Comput. Pract. Exp..

[10]  Patrick Valduriez,et al.  Distributed and parallel database systems , 1996, CSUR.

[11]  Michael Grüninger,et al.  The Process Specification Language (PSL) Theory and Applications , 2003, AI Mag..

[12]  Kun-Lung Wu,et al.  The CHAMPS system: change management with planning and scheduling , 2004, 2004 IEEE/IFIP Network Operations and Management Symposium (IEEE Cat. No.04CH37507).

[13]  Yang Dong,et al.  Approach for workflow modeling using π-calculus , 2003 .

[14]  Raman Kazhamiakin,et al.  A Parametric Communication Model for the Verification of BPEL4WS Compositions , 2005, EPEW/WS-FM.

[15]  Bartosz Kiepusewski,et al.  Expressiveness and suitability of languages for control flow modelling in workflows , 2003 .

[16]  Dragos Manolescu,et al.  Production workflow: concepts and techniques , 2001, SOEN.

[17]  Sebastián Uchitel,et al.  Model-based verification of Web service compositions , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[18]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[19]  Amit P. Sheth,et al.  An overview of workflow management: From process modeling to workflow automation infrastructure , 1995, Distributed and Parallel Databases.

[20]  Gustavo Alonso,et al.  Basic Web Services Technology , 2004 .

[21]  Christoph Bussler,et al.  Workflow Management: Modeling Concepts, Architecture and Implementation , 1996 .

[22]  Steffen Staab,et al.  Web Services: Been There, Done That? , 2003, IEEE Intell. Syst..

[23]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[24]  Franck van Breugel,et al.  Verication of Business Processes for Web Services , 2003 .

[25]  Wolfgang Reisig,et al.  Lectures on Petri Nets I: Basic Models , 1996, Lecture Notes in Computer Science.

[26]  Carlos Delgado Kloos,et al.  Formal Verification of BPEL4WS Business Collaborations , 2004, EC-Web.

[27]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[28]  Rance Cleaveland,et al.  Modeling and Verifying Distributed Systems Using Priorities: A Case Study , 1996, Softw. Concepts Tools.

[29]  DumasMarlon,et al.  Formal semantics and analysis of control flow in WS-BPEL , 2007 .

[30]  John G. Gibbons Knowledge in Action , 2001 .

[31]  Robin Milner,et al.  Operational and Algebraic Semantics of Concurrent Processes , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[32]  Christian Stefansen,et al.  SMAWL: A SMAll Workflow Language Based on CCS , 2005, CAiSE Short Paper Proceedings.

[33]  Xiang Fu,et al.  Analysis of interacting BPEL web services , 2004, WWW '04.

[34]  Francisco Curbera,et al.  Web Services Business Process Execution Language Version 2.0 , 2007 .

[35]  Davide Sangiorgi,et al.  Communicating and Mobile Systems: the π-calculus, , 2000 .

[36]  Dong Yang,et al.  Approach for workflow modeling using pi-calculus. , 2003, Journal of Zhejiang University. Science.

[37]  Wil M. P. van der Aalst,et al.  Diagnosing Workflow Processes using Woflan , 2001, Comput. J..

[38]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[39]  Shiyong Lu,et al.  A model for abstract process specification, verification and composition , 2004, ICSOC '04.

[40]  Manuel Mazzara,et al.  A Foundational Mechanism for WS-BPEL Recovery Framework , 2005 .

[41]  Eric. Newcomer,et al.  Understanding SOA with Web Services , 2004 .

[42]  W.M.P. van der Aalst,et al.  Don't go with the flow: web services composition standards exposed , 2003 .

[43]  Andrea Ferrara,et al.  Web services: a process algebra approach , 2004, ICSOC '04.

[44]  Roozbeh Farahbod,et al.  Abstract operational semantics of the Business Process Execution Language for web services , 2004 .

[45]  Christine Collet,et al.  A flexible workflow model for process-oriented applications , 2001, Proceedings of the Second International Conference on Web Information Systems Engineering.

[46]  Shiyong Lu,et al.  Semantics based verification and synthesis of BPEL4WS abstract processes , 2004, Proceedings. IEEE International Conference on Web Services, 2004..

[47]  Marco Pistore,et al.  Planning with a language for extended goals , 2002, AAAI/IAAI.

[48]  Wil M. P. van der Aalst,et al.  Workflow Patterns: On the Expressive Power of (Petri-net-based) Workflow Languages. , 2002 .

[49]  T. D. Fletcher,et al.  Web Services Choreography Description Language Version 1.0, W3C , 2004 .

[50]  Wil M. P. van der Aalst,et al.  Business Process Management Demystified: A Tutorial on Models, Systems and Standards for Workflow Management , 2003, Lectures on Concurrency and Petri Nets.

[51]  Wil M. P. van der Aalst,et al.  Design and Implementation of the YAWL System , 2004, CAiSE.

[52]  Benjamin C. Pierce,et al.  Pict: a programming language based on the Pi-Calculus , 2000, Proof, Language, and Interaction.

[53]  Mirko Viroli,et al.  Towards a Formal Foundation to Orchestration Languages , 2004, WSFM.

[54]  Alex M. Andrew,et al.  Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems , 2002 .

[55]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[56]  Yaron Goland,et al.  Web Services Business Process Execution Language , 2009, Encyclopedia of Database Systems.