Skip to main content

Capturing and Verifying Dynamic Systems Behavior Using UML and \(\pi \)-Calculus

  • Conference paper
  • First Online:
Theoretical Information Reuse and Integration

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 446))

Abstract

UML is a semi-formal modeling language for object oriented systems. It is widely accepted and its applications become more and more widespread in real word projects. The UML diagrams suffer from lack of formal semantics which hinders their automatic verification. It is actually a problem that always arises. Formal methods can be used to overcome it. \(\pi \)-calculus is a flexible formal theory with several applications. It offers a rich theory and tools for verification purposes. Thus, this paper presents an approach for capturing and verifying the dynamic behavior of systems using UML diagrams and \(\pi \)-calculus. We illustrate our approach by an example in order to explain it. Then we tackle another small example to show the verification capabilities provided by the approach. An implementation of the approach is presented.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Object Management Group (OMG), Unified Modeling Language (2012). http://www.omg.org/spec/UML/

  2. Milner, R.: Communicating and Mobile Systems: The \(\pi \)-calculus. Cambridge University Press (1999)

    Google Scholar 

  3. Heckel, R., Sauer, S.: Strengthening UML collaboration diagrams by state transformations. Fundamental Approaches to Software Engineering, pp. 109–123. Springer, Berlin (2001)

    Chapter  Google Scholar 

  4. Ambler, S.W.: The Elements of UML\(^{TM}\)2.0 Style. Cambridge University Press (2005)

    Google Scholar 

  5. Belghiat, A., Chaoui, A., Beldjehem, M.: Capturing and verifying dynamic program behaviour using UML communication diagrams and pi-calculus. In: IEEE International Conference on Information Reuse & Integration (IRI), pp. 318–325. IEEE (2015)

    Google Scholar 

  6. Victor, B.: A Verification Tool for the Polyadic \(\pi \)-Calculus. Licentiate thesis, Department of Computer Systems. Uppsala University (1994)

    Google Scholar 

  7. Victor, B., Moller, F.: The Mobility Workbench - A Tool for the \(\pi \)-calculus. In Dill, D. (eds.) Proceedings of the Conference on Computer-Aided Verification (CAV’94). LNCS, vol. 818, pp. 428–440. Springer Verlag, (1994)

    Google Scholar 

  8. Lano , K., Bicarregui, J.: Formalizing the UML in Structured Temporal Theories. In Rumpe, B., Kilov, H. (eds.) Proceedings of Second ECOOP Workshop on Precise Behavioral Semantics. ECOOP’98. Munich, Germany (1998)

    Google Scholar 

  9. Overgaard, G.: A formal approach to collaborations in the Unified Modeling Language. In: Proceedings of the UML’99—Beyond the Standard. LNCS, vol. 1723, pp. 99–115. Springer-Verlag (1999)

    Google Scholar 

  10. Gomaa, H.: Validation of Dynamic Behavior in UML Using Colored PetriNets. In: Proceedings of the UML2000 (2000)

    Google Scholar 

  11. Saldhana, J., Shatz, S.M.: UML diagrams to object petri net models: an approach for modeling and analysis. In: Proceedings of the International Conference on Software Engineering and Knowledge Engineering (SEKE). pp. 103–110. Chicago (2000)

    Google Scholar 

  12. Dong, Z., He, X.: Integrating UML statechart and collaboration diagrams using hierarchical predicate transition nets. In: Proceedings of pUML, pp. 99–112 (2001)

    Google Scholar 

  13. Elmansouri, R., Chaoui, A., Kerkouche, E., Khalfaoui, K.: From UML statechart and collaboration diagrams to colored petri net models: a graph transformation based approach for modeling and analysis of business processes in virtual enterprises. In: Proceedings of the Fourth South-East European Workshop on Formal Methods. IEEE, Washington, DC, USA (2009)

    Google Scholar 

  14. Merah, E., Messaoudi, N., Saidi, H., Chaoui, A.: Design of ATL rules for transforming UML 2 communication diagrams into buchi automata. Int. J. Softw. Eng. Appl. 7(2), 1–15 (2013)

    Google Scholar 

  15. Motameni, H., Ghassempouri, T.: Transforming fuzzy communication diagram to fuzzy petri net. Am. J. Sci. Res. 16, 62–73 (2011)

    Google Scholar 

  16. Haroonabadi, A., Teshnehlab, M.: A novel method for behavior modeling in uncertain information systems. World Acad. Sci. Eng. Technol. 41, 959–966 (2008)

    Google Scholar 

  17. Gagnon, P., Mokhati, F., Badri, M.: Applying model checking to concurrent UML models. J. Object Technol. 7(1), 59–84 (2008)

    Article  Google Scholar 

  18. Chama, W., Elmansouri, R., Chaoui, A.: Model checking and code generation for UML diagrams using graph transformation. Int. J. Softw. Eng. Appl. (IJSEA), 3(6) (2012)

    Google Scholar 

  19. Fakhroutdinov, K.: (2013). http://www.uml-diagrams.org/

  20. Belghiat, A., Chaoui, A., Maouche, M., Beldjehem, M.: Formalization of mobile UML statechart diagrams using the \(\pi \)-calculus: an approach for modeling and analysis. In Dregvaite, G., Damasevicius, R. (eds.) ICIST 2014, CCIS 465, pp. 236–247. Springer (2014)

    Google Scholar 

  21. Yang, D., Zhang, S.S.: Using \(\pi \)-calculus to formalize UML activity diagrams. In: 10th International Conference and Workshop on the Engineering of Computer-based Systems, pp. 47–54. IEEE Computer Society (2004)

    Google Scholar 

  22. Lam, V.S.W.: On \(\pi \)-calculus semantics as a formal basis for UML activity diagrams. Int. J. Softw. Eng. Knowl. Eng. 18(4), 541–567 (2008)

    Article  Google Scholar 

  23. Kollmann, R., Gogolla, M.: Capturing dynamic program behaviour with UML collaboration diagrams. In Sousa, P., Ebert, J. (eds.) Proceedings of the 5th European Conference on Software Maintenance and Reengineering. IEEE, Los Alamitos (2001)

    Google Scholar 

  24. Object Management Group (OMG), Model Driven Architecture (MDA) (2004). http://www.omg.org/mda/

  25. Karsai, G., Agrawal, A.: Graph transformations in OMG’s model-driven architecture. Applications of Graph Transformations with Industrial Relevance. LNCS, vol. 3062, pp. 243–259. Springer, Berlin (2004)

    Chapter  Google Scholar 

  26. AToM\(^{3}\) (2002). Home page: http://atom3.cs.mcgill.ca

  27. Python. Home page: http://www.python.org

Download references

Acknowledgments

The authors would like to thank Mr. Rachid Echahed (CNRS and University of Grenoble, France) for his advices and comments regarding this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Aissam Belghiat .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Belghiat, A., Chaoui, A., Beldjehem, M. (2016). Capturing and Verifying Dynamic Systems Behavior Using UML and \(\pi \)-Calculus. In: Bouabana-Tebibel, T., Rubin, S. (eds) Theoretical Information Reuse and Integration. Advances in Intelligent Systems and Computing, vol 446. Springer, Cham. https://doi.org/10.1007/978-3-319-31311-5_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-31311-5_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-31309-2

  • Online ISBN: 978-3-319-31311-5

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics