Skip to main content
Log in

A rigorous methodology for specification and verification of business processes

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

Both specification and verification of business processes are gaining more and more attention in the field. Most of the existing works in the last years are dealing with important, yet very specialized, issues. Among these, we can enumerate compensation constructs to cope with exceptions generated by long running business transactions, fully programmable fault and compensation handling mechanism, web service area, scope-based compensation and shared-labels for synchronization, and so on. The main purpose of this paper is to present a semi-automatized framework to describe and analyse business processes. Business analysts can now use a simple specification language (e.g., BPMN [Obj06]) to describe any type of activity in a company, in a concurrent and modular fashion. The associated programs (e.g., BPDs [Obj06]) have to be executed in an appropriate language (e.g., BPEL4WS [ACD+03]). Much more, they have to be confirmed to be sound, via some prescribed (a priori) conditions. We suggest how all the issues can be embedded in a unifying computer tool. We link our work with similar approaches and we justify our particular choices (besides BPMN and BPD): the TLA+ language for expressing the imposed behavioural conditions and Petri Nets ([EB87], [EB88]) to describe an intermediate semantics. In fact, we want to manage in an appropriate way the general relationship diagram (Fig. 1). Examples and case studies are provided.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Altintas I, Berkley C, Jaeger E, Jones M, Ludascher B, Mock S (2004) Kepler: an extensible system for design and execution of scientific workflows. In: SSDBM ’04: proceedings of the 16th international conference on scientific and statistical database management. IEEE Computer Society, Washington, DC, p 423

  2. Andrei S, Chin WN (2004) Incremental satisfiability counting for real-time systems. In: The tenth IEEE real-time and embedded technology and applications symposium (RTAS’2004), Toronto, Canada

  3. Andrei S, Chin WN, Cheng AMK, Lupu M (2006) Automatic debugging of real-time systems based on incremental satisfiability counting. IEEE Trans Comput 55(7): 830–842

    Article  Google Scholar 

  4. Andrews T, Curbera F, Dholakia H, Goland Y, Klein J, Leymann F, Roller KLD, Smith D, Thatte S, Trickovic I, Weerawarana S (2003) Business Process Execution Language for Web Services, version 1.1. BEA Systems, International Business Machines Corporation, Microsoft Corporation, SAP AG, Siebel Systems

  5. Andrei S (1995) The determinant of the boolean formulae. Analele Universităţii Bucureşti, Informatică XLIV: 83–92

    MathSciNet  Google Scholar 

  6. Andrei S (2004) Counting for satisfiability by inverting resolution. Artif Intell Rev 22(4): 339–366

    Article  MATH  MathSciNet  Google Scholar 

  7. Arkin A (2002) Business Process Modeling Language (BPML), version 1.0. Business Process Management Initiative, November

  8. Bayens T (2004) The state of workflow. http://www.jboss.com/products/jbpm/stateofworkflow

  9. Butler M, Ferreira C, Ng MY (2005) Precise modelling of compensating business transactions and its application to bpel. J Univers Comput Sci 11(5): 712–743

    Google Scholar 

  10. Cimatti A, Clarke E, Giunchiglia E, Giunchiglia F, Pistore M, Roveri M, Sebastiani R, Tacchella A (2002) Nusmv 2: an opensource tool for symbolic model checking. In: Proceedings of CAV’02, Lecture Notes in Computer Science. Springer, Heidelberg

  11. Clarke EM, Emmerson EA (1982) Design and synthesis of synchronization skeletons using branching-time temporal logic. Lect Notes Comput Sci 131: 52–71

    Article  Google Scholar 

  12. Curbera F, Khalaf R (2004) Implementing bpel4ws: The architecture of a bpel4ws implementation. In: GGF 10 Workshop: workflow in grid systems, Berlin, March 2004. IBM T.J. Watson Research Center

  13. Chang C-L, Lee RC-T (1997) Symbolic logic and mechanical theorem proving. Academic Press, Orlando

    Google Scholar 

  14. Cook SA (1971) The complexity of theorem-proving procedures. In: STOC’71: proceedings of the third annual ACM symposium on theory of computing. ACM, New York, pp 151–158

  15. Clarke EM, Wing JM, Alur R, Cleaveland R, Dill D, Emerson A, Garland S, German S, Guttag J, Hall A, Henzinger T, Holzmann G, Jones C, Kurshan R, Leveson N, McMillan K, Moore J, Peled D, Pnueli A, Rushby J, Shankar N, Sifakis J, Sistla P, Steffen B, Wolper P, Woodcock J, Zave P (1996) Formal methods: state of the art and future directions. ACM Comput Surv 28(4): 626–643

    Article  Google Scholar 

  16. Davis M, Logemann G, Loveland D (1962) A machine program for theorem-proving. Commun ACM 5: 394–397

    Article  MATH  MathSciNet  Google Scholar 

  17. Dubois O (1991) Counting the number of solutions for instances of satisfiability. Theor Comput Sci 81: 49–64

    Article  MATH  Google Scholar 

  18. Fernandez C, Best E (1987) Notations and terminology on petri net theory. Arbeitspapiere der GMD, p 195

  19. Fernandez C, Best E (1988) Nonsequential processes. a petri net point of view. EATCS monographs on theoretical computer science

  20. Ferrara A (2004) Web services: a process algebra approach. In: ICSOC’04: proceedings of the second international conference on service oriented computing. ACM, New York, pp 242–251

  21. Giunchiglia E, Giunchiglia F, Sebastiani R, Tacchella A (2000) Sat vs. translation based decision procedures for modal logics: a comparative evaluation. J Appl Non-Classical Logics 10(2)

  22. Garey MR, Johnson DS (1990) Computers and intractability; a guide to the theory of NP-completeness. W.H. Freeman, New York

    Google Scholar 

  23. Grumberg O, Long DE (1994) Model checking and modular verification. ACM Trans Programm Lang Syst 16(3): 843–871

    Article  Google Scholar 

  24. BPMI Notation Working Group (2004) Business Process Modeling Notation (BPMN), version 1.0

  25. Hylands C, Lee E, Liu J, Liu X, Neuendorffer S, Xiong Y, Zhao Y, Zheng H (2003) Overview of the ptolemy project

  26. Holzmann GJ (2004) SPIN model checker, the: primer and reference manual. Addison–Wesley, Reading

    Google Scholar 

  27. Hooker JN (1993) Solving the incremental satisfiability problem. J Logic Programm 15(12): 177–186

    Article  MATH  MathSciNet  Google Scholar 

  28. Iwana K (1989) CNF satisfiability test by counting and polynomial average time. Siam J Comput 18(2): 385–391

    Article  MathSciNet  Google Scholar 

  29. Jifeng H, Huibiao Z, Geguang P (2007) A model for BPEL-like languages. J Front Comput Sci China 1(1): 9–19

    Article  Google Scholar 

  30. Jahanian F, Mok AK (1986) Safety analysis of timing properties in real-time systems. IEEE Trans Softw Eng SE-12(9): 890–904

    Google Scholar 

  31. Jahanian F, Mok AK (1987) A graph-theoretic approach for timing analysis and its implementation. IEEE Trans Comput C-36(8): 961–975

    Article  Google Scholar 

  32. Koehler J, Tirenni G, Kumaran S (2002) From business process model to consistent implementation: a case for formal verification methods. In: Proceedings of sixth IEEE international enterprise distributed object computing conference (EDOC), pp 96–106

  33. Lamport L (1994) The temporal logic of actions. ACM Trans Program Lang Syst 16(3): 872–923

    Article  Google Scholar 

  34. Lamport L (2002) Specifying systems: the TLA+ language and tools for hardware and software engineers. Addison–Wesley, Reading

    Google Scholar 

  35. Lawford MS (1987) Model reduction of discrete real-time systems. PhD thesis, University of Toronto, Canada

  36. Object Management Group (2006) Business process modeling notation (BPMN), Final Adopted Specification, dtc/06-02-01

  37. Peltz C (2003) Web services orchestration. a review of emerging technologies, tools and standards. Technical report, Hewlett Packard Co., January

  38. Qiu Z, Wang S, Pu G, Zhao X (2005) Semantics of bpel4ws-like fault and compensation handling. In: FM, pp 350–365

  39. Roj J, Owen M (2003) Bpmn and business process management—introduction to the new business process modeling standard. Technical report, BPMI Library. http://www.bpmi.org/downloads/LIB-2003-09-1.pdf, September

  40. Sassone V (1994) Strong concatenable processes: an approach to the category of petri net computations. BRICS Report Series RS-94-33, BRICS

  41. Salaün G, Bordeaux L, Schaerf M (2004) Describing and reasoning on web services using process algebra. In: ICWS’04: proceedings of the IEEE international conference on web services. IEEE Computer Society, Washington, DC, p 43

  42. Thompson S (1991) Type theory and functional programming. Addison–Wesley, Reading

    MATH  Google Scholar 

  43. Tiplea FL, Jucan T, Masalagiu C (1991) Conditional petri net languages. J Inf Process Cybern (former E.I.K.) 1(27): 55–66

    Google Scholar 

  44. Tiplea FL, Tiplea A (2002) A simulation preorder for abstraction of reactive systems. In: Proceedings of VMCAI 2002, Springer, Heidelberg, pp 272–288

  45. Turner KJ (2005) Formalising web services. In: FORTE, pp 473–488

  46. Valiant LG (1979) The complexity of enumeration and reliability problems. SIAM J Comput 8(3): 410–421

    Article  MATH  MathSciNet  Google Scholar 

  47. van der Aalst WMP (2003) Inheritance of business processes: A journey visiting four notorious problems. Petri Net Technology for Communication-Based Systems, pp 383–408

  48. Viroli M (2004) Towards a formal foundation to orchestration languages. Electr. Notes Theor Comput Sci 105: 51–71

    Article  Google Scholar 

  49. White SA (2004) Introduction to BPMN. http://www.bpmn.org/Documents/IntroductiontoBPMN.pdf

  50. Whittemore J, Kim J, Sakallah K (2001) SATIRE: a new incremental satisfiability engine. In: Proceedings of the 38th ACM/IEEE conference on design automation, pp 542–545

  51. Yu Y, Manolios P, Lamport L (1999) Model checking TLA+ specifications. In: Conference on correct hardware design and verification methods, pp 54–66

  52. Zhang W (1996) Number of models and satisfiability of sets of clauses. Theor Comput Sci 155(1): 277–288

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ştefan Andrei.

Additional information

by C.B. Jones and J.C.P. Woodcock

Rights and permissions

Reprints and permissions

About this article

Cite this article

Masalagiu, C., Chin, WN., Andrei, Ş. et al. A rigorous methodology for specification and verification of business processes. Form Asp Comp 21, 495–510 (2009). https://doi.org/10.1007/s00165-009-0106-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-009-0106-y

Keywords

Navigation