Alloy4SPV : A Formal Framework for Software Process Verification

  • Yoann Laurent
  • Reda Bendraou
  • Souheib Baarir
  • Marie-Pierre Gervais
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8569)

Abstract

In this paper we present a framework for software process verification called Alloy4SPV which uses a subset of UML2 Activity Diagrams as a process modeling language. In order to achieve software process verification, we i) define a formal model of our process modeling language using first-order logic, ii) we give it a formal semantics based on the fUML standard, and iii) we implement this formalization using the Alloy language [1]. In order to ease its adoption by process modelers, our framework comes with a graphical tool and a ready to use and customizable set of software process properties. We categorize these properties into two categories, syntactical and behavioral. We extend the set of behavioral properties we identified from the literature with two new categories that we defined, namely, organizational properties which relate to resource management and planning during process execution and business properties which are project/process specific properties.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Jackson, D.: Software Abstractions: Logic, language and analysis. Mit Pr. (2011)Google Scholar
  2. 2.
    Eshuis, R.: Symbolic model checking of uml activity diagrams. TOSEM 15(1), 1–38 (2006)CrossRefGoogle Scholar
  3. 3.
    Wong, P.Y.H., Gibbons, J.: A process-algebraic approach to workflow specification and refinement. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 51–65. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 4.
    Liu, Y., Muller, S., Xu, K.: A static compliance-checking framework for business process models. IBM Systems Journal 46(2), 335–361 (2007)CrossRefGoogle Scholar
  5. 5.
    Trčka, N., van der Aalst, W.M.P., Sidorova, N.: Data-flow anti-patterns: Discovering data-flow errors in workflows. In: van Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 425–439. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    Fahland, D., Favre, C., Jobstmann, B., Koehler, J., Lohmann, N., Völzer, H., Wolf, K.: Instantaneous soundness checking of industrial business process models. In: Dayal, U., Eder, J., Koehler, J., Reijers, H.A. (eds.) BPM 2009. LNCS, vol. 5701, pp. 278–293. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    van der Aalst, W., Van Hee, K., ter Hofstede, A., Sidorova, N., Verbeek, H., Voorhoeve, M., Wynn, M.: Soundness of workflow nets: Classification, decidability, and analysis. Formal Aspects of Computing 23(3), 333–363 (2011)CrossRefMATHMathSciNetGoogle Scholar
  8. 8.
    Guelfi, N., Mammar, A.: A formal semantics of timed activity diagrams and its promela translation. In: IEEE 12th Asia-Pacific Software Engineering Conference, APSEC 2005, p. 8 (2005)Google Scholar
  9. 9.
    van der Aalst, W.M.: The application of petri nets to workflow management. Journal of Circuits, Systems, and Computers 8(01), 21–66 (1998)CrossRefGoogle Scholar
  10. 10.
    Jung, H.T., Joo, S.H.: Transformation of an activity model into a colored petri net model. In: IEEE TISC, pp. 32–37 (2010)Google Scholar
  11. 11.
    Ter Hofstede, A.: Workflow patterns: On the expressive power of (petri-net-based) workflow languages. In: of DAIMI, University of Aarhus, Citeseer (2002)Google Scholar
  12. 12.
    Wohed, P., van der Aalst, W.M.P., Dumas, M., ter Hofstede, A.H.M., Russell, N.: Pattern-based analysis of the control-flow perspective of uml activity diagrams. In: Delcambre, L.M.L., Kop, C., Mayr, H.C., Mylopoulos, J., Pastor, Ó. (eds.) ER 2005. LNCS, vol. 3716, pp. 63–78. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Cunha, A.: Bounded model checking of temporal formulas with alloy. arXiv preprint arXiv:1207.2746 (2012)Google Scholar
  14. 14.
    OMG: Semantics of a foundational subset for executable uml models (fuml) version 1.0 (2011), http://www.omg.org/spec/FUML/
  15. 15.
    Bendraou, R., Gervais, M.-P., Blanc, X.: Uml4spm: A uml2. 0-based metamodel for software process modelling. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 17–38. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  16. 16.
    Bendraou, R., Jézéquel, J., Gervais, M., Blanc, X.: A comparison of six uml-based languages for software process modeling. IEEE Transactions on Software Engineering 36(5), 662–675 (2010)CrossRefGoogle Scholar
  17. 17.
    van Der Aalst, W.M., Ter Hofstede, A.H., Kiepuszewski, B., Barros, A.P.: Workflow patterns. Distributed and Parallel Databases 14(1), 5–51 (2003)CrossRefGoogle Scholar
  18. 18.
    Mendling, J., Moser, M., Neumann, G., Verbeek, H.M.W., van Dongen, B.F., van der Aalst, W.M.P.: Faulty epcs in the sap reference model. In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 451–457. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  19. 19.
    Hsueh, N., Shen, W., Yang, Z., Yang, D.: Applying uml and software simulation for process definition, verification, and validation. Information and Software Technology 50(9), 897–911 (2008)CrossRefGoogle Scholar
  20. 20.
    Trcka, N., van der Aalst, W., Sidorova, N.: Analyzing control-flow and data-flow in workflow processes in a unified way. Computer Science Report (08-31) (2008)Google Scholar
  21. 21.
    Laurent, Y., Bendraou, R., Baarir, S., Gervais, M.-P.: Formalization of fUML: An Application to Process Verification. In: Jarke, M., Mylopoulos, J., Quix, C., Rolland, C., Manolopoulos, Y., Mouratidis, H., Horkoff, J. (eds.) CAiSE 2014. LNCS, vol. 8484, pp. 347–363. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  22. 22.
    Jensen, K.: Coloured petri nets. Petri nets: Central models and their properties, 248–299 (1987)Google Scholar
  23. 23.
    Vakili, A., Day, N.: Temporal logic model checking in alloy. Abstract State Machines, Alloy, B, VDM, and Z, 150–163 (2012)Google Scholar
  24. 24.
    Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: Uml2alloy: A challenging model transformation. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 436–450. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  25. 25.
  26. 26.
    Laurent, Y., Bendraou, R., Gervais, M.P.: Generation of Process using Multi-Objective Genetic Algorithm. In: Proceedings of the 2013 International Conference on Software and Systems Process. ACM (2013) (to be published)Google Scholar
  27. 27.
    Weber, B., Reichert, M., Rinderle-Ma, S.: Change patterns and change support features–enhancing flexibility in process-aware information systems. Data & Knowledge Engineering 66(3), 438–466 (2008)CrossRefGoogle Scholar
  28. 28.
    Dong, Y., ShenSheng, Z.: Using π-calculus to formalize uml activity diagram for business process modeling. In: IEEE ECBS, pp. 47–54 (2003)Google Scholar
  29. 29.
    Abdelhalim, I., Sharp, J., Schneider, S., Treharne, H.: Formal verification of tokeneer behaviours modelled in fuml using csp. In: Dong, J.S., Zhu, H. (eds.) ICFEM 2010. LNCS, vol. 6447, pp. 371–387. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  30. 30.
    Sadiq, W., Orlowska, M.E.: Analyzing process models using graph reduction techniques. Information Systems 25(2), 117–134 (2000)CrossRefGoogle Scholar
  31. 31.
    Alur, R., Dill, D.L.: A theory of timed automata. Theoretical Computer Science 126(2), 183–235 (1994)CrossRefMATHMathSciNetGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Yoann Laurent
    • 1
  • Reda Bendraou
    • 1
  • Souheib Baarir
    • 1
    • 2
  • Marie-Pierre Gervais
    • 1
    • 2
  1. 1.LIP6Sorbonne Universites, UPMC Univ Paris 06, UMR 7606ParisFrance
  2. 2.Universite Paris Ouest Nanterre La DéfenseNanterreFrance

Personalised recommendations