skip to main content
research-article
Open Access

A rigorous methodology for specification and verification of business processes

Authors Info & Claims
Published:01 October 2009Publication History
Skip Abstract Section

Abstract

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.

References

  1. ABJ+04 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 423Google ScholarGoogle Scholar
  2. AC04 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, CanadaGoogle ScholarGoogle Scholar
  3. ACCL06 Andrei SChin WNCheng AMKLupu MAutomatic debugging of real-time systems based on incremental satisfiability countingIEEE Trans Comput200655783084210.1109/TC.2006.97Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. ACD+03 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 SystemsGoogle ScholarGoogle Scholar
  5. And95 Andrei SThe determinant of the boolean formulaeAnalele Universităţii Bucureşti, Informatică1995XLIV83921378006Google ScholarGoogle Scholar
  6. And04 Andrei SCounting for satisfiability by inverting resolutionArtif Intell Rev20042243393661099.6809810.1007/s10462-004-4329-22321608Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Ark02 Arkin A (2002) Business Process Modeling Language (BPML), version 1.0. Business Process Management Initiative, NovemberGoogle ScholarGoogle Scholar
  8. Bay04 Bayens T (2004) The state of workflow. http://www.jboss.com/products/jbpm/stateofworkflowGoogle ScholarGoogle Scholar
  9. BFN05 Butler MFerreira CNg MYPrecise modelling of compensating business transactions and its application to bpelJ Univers Comput Sci2005115712743Google ScholarGoogle Scholar
  10. CCG+02 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, HeidelbergGoogle ScholarGoogle Scholar
  11. CE82 Clarke EMEmmerson EADesign and synthesis of synchronization skeletons using branching-time temporal logicLect Notes Comput Sci1982131527110.1007/BFb0025774Google ScholarGoogle ScholarCross RefCross Ref
  12. CK04 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 CenterGoogle ScholarGoogle Scholar
  13. CL97 Chang C-LLee RC-TSymbolic logic and mechanical theorem proving1997OrlandoAcademic PressGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  14. Coo71 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–158Google ScholarGoogle Scholar
  15. CWA+96 Clarke EMWing JMAlur RCleaveland RDill DEmerson AGarland SGerman SGuttag JHall AHenzinger THolzmann GJones CKurshan RLeveson NMcMillan KMoore JPeled DPnueli ARushby JShankar NSifakis JSistla PSteffen BWolper PWoodcock JZave PFormal methods: state of the art and future directionsACM Comput Surv199628462664310.1145/242223.242257Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. DLL62 Davis MLogemann GLoveland DA machine program for theorem-provingCommun ACM196253943970217.5400210.1145/368273.368557149690Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dub91 Dubois OCounting the number of solutions for instances of satisfiabilityTheor Comput Sci19918149640725.6804510.1016/0304-3975(91)90315-SGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  18. EB87 Fernandez C, Best E (1987) Notations and terminology on petri net theory. Arbeitspapiere der GMD, p 195Google ScholarGoogle Scholar
  19. EB88 Fernandez C, Best E (1988) Nonsequential processes. a petri net point of view. EATCS monographs on theoretical computer scienceGoogle ScholarGoogle Scholar
  20. Fer04 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–251Google ScholarGoogle Scholar
  21. GGST00 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)Google ScholarGoogle Scholar
  22. GJ90 Garey MRJohnson DSComputers and intractability; a guide to the theory of NP-completeness1990New YorkW.H. FreemanGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  23. GL94 Grumberg OLong DEModel checking and modular verificationACM Trans Programm Lang Syst199416384387110.1145/177492.177725Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Gro04 BPMI Notation Working Group (2004) Business Process Modeling Notation (BPMN), version 1.0Google ScholarGoogle Scholar
  25. HLL+03 Hylands C, Lee E, Liu J, Liu X, Neuendorffer S, Xiong Y, Zhao Y, Zheng H (2003) Overview of the ptolemy projectGoogle ScholarGoogle Scholar
  26. Hol04 Holzmann GJSPIN model checker, the: primer and reference manual2004ReadingAddison–WesleyGoogle ScholarGoogle Scholar
  27. Hoo93 Hooker JNSolving the incremental satisfiability problemJ Logic Programm199315121771860787.6804910.1016/0743-1066(93)90018-C1194824Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Iwa89 Iwana KCNF satisfiability test by counting and polynomial average timeSiam J Comput198918238539110.1137/0218026986674Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. JHG07 Jifeng HHuibiao ZGeguang PA model for BPEL-like languagesJ Front Comput Sci China20071191910.1007/s11704-007-0002-7Google ScholarGoogle ScholarCross RefCross Ref
  30. JM86 Jahanian FMok AKSafety analysis of timing properties in real-time systemsIEEE Trans Softw Eng1986SE-129890904Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. JM87 Jahanian FMok AKA graph-theoretic approach for timing analysis and its implementationIEEE Trans Comput1987C-36896197510.1109/TC.1987.5009519Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. KTK02 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–106Google ScholarGoogle Scholar
  33. Lam94 Lamport LThe temporal logic of actionsACM Trans Program Lang Syst199416387292310.1145/177492.177726Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Lam02 Lamport LSpecifying systems: the TLA+ language and tools for hardware and software engineers2002ReadingAddison–WesleyGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  35. Law87 Lawford MS (1987) Model reduction of discrete real-time systems. PhD thesis, University of Toronto, CanadaGoogle ScholarGoogle Scholar
  36. Obj06 Object Management Group (2006) Business process modeling notation (BPMN), Final Adopted Specification, dtc/06-02-01Google ScholarGoogle Scholar
  37. Pel03 Peltz C (2003) Web services orchestration. a review of emerging technologies, tools and standards. Technical report, Hewlett Packard Co., JanuaryGoogle ScholarGoogle Scholar
  38. QWPZ05 Qiu Z, Wang S, Pu G, Zhao X (2005) Semantics of bpel4ws-like fault and compensation handling. In: FM, pp 350–365Google ScholarGoogle Scholar
  39. RO03 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, SeptemberGoogle ScholarGoogle Scholar
  40. Sas94 Sassone V (1994) Strong concatenable processes: an approach to the category of petri net computations. BRICS Report Series RS-94-33, BRICSGoogle ScholarGoogle Scholar
  41. SBS04 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 43Google ScholarGoogle Scholar
  42. Tho91 Thompson SType theory and functional programming1991ReadingAddison–Wesley0753.68026Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. TJM91 Tiplea FLJucan TMasalagiu CConditional petri net languagesJ Inf Process Cybern (former E.I.K.)19911275566Google ScholarGoogle Scholar
  44. TT02 Tiplea FL, Tiplea A (2002) A simulation preorder for abstraction of reactive systems. In: Proceedings of VMCAI 2002, Springer, Heidelberg, pp 272–288Google ScholarGoogle Scholar
  45. Tur05 Turner KJ (2005) Formalising web services. In: FORTE, pp 473–488Google ScholarGoogle Scholar
  46. Val79 Valiant LGThe complexity of enumeration and reliability problemsSIAM J Comput1979834104210419.6808210.1137/0208032539258Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. vdA03 van der Aalst WMP (2003) Inheritance of business processes: A journey visiting four notorious problems. Petri Net Technology for Communication-Based Systems, pp 383–408Google ScholarGoogle Scholar
  48. Vir04 Viroli MTowards a formal foundation to orchestration languagesElectr. Notes Theor Comput Sci2004105517110.1016/j.entcs.2004.05.008Google ScholarGoogle Scholar
  49. Whi04 White SA (2004) Introduction to BPMN. http://www.bpmn.org/Documents/IntroductiontoBPMN.pdfGoogle ScholarGoogle Scholar
  50. WKS01 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–545Google ScholarGoogle Scholar
  51. YML99 Yu Y, Manolios P, Lamport L (1999) Model checking TLA+ specifications. In: Conference on correct hardware design and verification methods, pp 54–66Google ScholarGoogle Scholar
  52. Zha96 Zhang WNumber of models and satisfiability of sets of clausesTheor Comput Sci199615512772880873.6809410.1016/0304-3975(95)00144-1Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in

Full Access

  • Article Metrics

    • Downloads (Last 12 months)17
    • Downloads (Last 6 weeks)3

    Other Metrics

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader