Skip to main content

Transforming Process Algebra Models into UML State Machines: Bridging a Semantic Gap?

  • Conference paper
Theory and Practice of Model Transformations (ICMT 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5063))

Abstract

There exist many formalisms for modeling the behavior of (software) systems. These formalisms serve different purposes. Process algebras are used for algebraic and axiomatic reasoning about the behavior of distributed systems. UML state machines are suitable for automatic software generation. We have developed a transformation from the process algebra ACP into UML state machines to enable automatic software generation from process algebra models. This transformation needs to preserve both behavioral and structural properties. The combination of these preservation requirements gives rise to a semantic gap. It implies that we cannot transform ACP models into UML state machines on a syntactic level only.

We address this semantic gap and propose a way of bridging it. To validate our proposal, we have implemented a tool for automatic transformation of ACP process algebra models into UML state machines.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. FALCON, http://www.esi.nl/falcon/

  2. van Amstel, M.F., van de Plassche, E., Hamberg, R., van den Brand, M.G.J., Rooda, J.E.: Performance analysis of a palletizing system. SE Report 2007-09, Department of Mechanical Engineering, Eindhoven University of Technology (2007)

    Google Scholar 

  3. Baeten, J.C.M.: A brief history of process algebra. Theoretical Computer Science 335(2–3), 131–146 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  4. Object Management Group: Unified Modeling Language: Superstructure specification, version 2.1.1. Document – formal/2007-02-05, OMG (2007)

    Google Scholar 

  5. Bergstra, J.A., Klop, J.W.: Algebra of communicating processes. In: de Bakker, J.W., Hazewinkel, M., Lenstra, J.K. (eds.) Proceedings of the CWI Symposium. CWI Monographs, vol. 1, pp. 89–138. Centre for Mathematics and Computer Science, North-Holland (1986)

    Google Scholar 

  6. Baeten, J.C.M., Weijland, W.P.: Process Algebra. Cambridge Tracts in Theoretical Computer Science, vol. (18). Cambridge University Press, Cambridge (1990)

    Google Scholar 

  7. van Beek, D.A., Man, K.L., Reniers, M.A., Rooda, J.E., Schiffelers, R.R.H.: Syntax and semantics of timed Chi. CS-Report 05–09, Department of Computer Science, Eindhoven University of Technology (2005)

    Google Scholar 

  8. Groote, J.F., Mathijssen, A., Reniers, M., Usenko, Y., van Weerdenburg, M.: The formal specification language mCRL2. In: Brinksma, E., Harel, D., Mader, A., Stevens, P., Wieringa, R. (eds.) Methods for Modelling Software Systems (MMOSS). Number 06351 in Dagstuhl Seminar Proceedings, Internationales Begegnungs- und Forschungszentrum fuer Informatik (2007)

    Google Scholar 

  9. Nicollin, X., Sifakis, J., Yovine, S.: From ATP to timed graphs and hybrid systems. Acta Informatica 30(2), 181–202 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  10. Pardo, J.J., Valero, V., Cuartero, F., Cazorla, D.: Automatic translation of a timed process algebra into dynamic state graphs. In: Proceedings of the 8th Asia-Pacific Conference on Software Engineering, pp. 63–70. IEEE Computer Society, Los Alamitos (2001)

    Chapter  Google Scholar 

  11. Cerone, A.: From process algebra to visual language. In: Lakos, C., Esser, R., Kristensen, L.M., Billington, J. (eds.) Proceedings of the 23rd Conference on Application and Theory of Petri Nets. Conferences in Research and Practice in Information Technology, vol. 12, pp. 27–36. Australian Computer Society (2002)

    Google Scholar 

  12. Bortnik, E.M., Mortel-Fronczak, J.M., Rooda, J.E.: Translating χ models to UPPAAL timed automata. SE Report 2007-06, Department of Mechanical Engineering, Eindhoven University of Technology (2007)

    Google Scholar 

  13. Pintér, G., Majzik, I.: Program code generation based on UML statechart models. Periodica Polytechnica 47(3–4), 187–204 (2003)

    Google Scholar 

  14. Niaz, I.A., Tanaka, J.: Code generation from UML statecharts. In: Hamza, M.H. (ed.) Proceedings of the 7th IASTED International Conference on Software Engineering and Applications, pp. 315–321. ACTA Press (2003)

    Google Scholar 

  15. Crane, M.L., Dingel, J.: UML vs. classical vs. Rhapsody statecharts: Not all models are created equal. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 97–112. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  16. Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Information and Control 60(1–3), 109–137 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  17. Baeten, J.C.M., Basten, T., Reniers, M.A.: Algebra of communicating processes. Lecture notes (DRAFT) (2005)

    Google Scholar 

  18. Thompson, K.: Regular expression search algorithm. Communications of the ACM 11(6), 419–422 (1968)

    Article  MATH  Google Scholar 

  19. Object Management Group: Meta Object Facility MOF 2.0/XMI mapping specification, version 2.1. Document – formal/05-09-01, OMG (2005)

    Google Scholar 

  20. ArgoUML v0.24 (Viewed January 2008), http://argouml.tigris.org/

  21. Telelogic Rhapsody 7.1.1 (Viewed January 2008), http://modeling.telelogic.com/products/rhapsody/index.cfm

  22. van den Brand, M.G.J., van Deursen, A., Heering, J., de Jong, H.A., de Jonge, M., Kuipers, T., Klint, P., Moonen, L., Olivier, P.A., Scheerder, J., Vinju, J.J., Visser, E., Visser, J.: The ASF+SDF meta-environment: A component-based language development environment. In: Wilhelm, R. (ed.) CC 2001 and ETAPS 2001. LNCS, vol. 2027, pp. 365–370. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  23. van Deursen, A.: An overview of ASF+SDF. In: van Deursen, A., Heering, J., Klint, P. (eds.) Language Prototyping: An Algebraic Specification Approach. AMAST Series in Computing, vol. 5, pp. 1–29. World Scientific, Singapore (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Antonio Vallecillo Jeff Gray Alfonso Pierantonio

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

van Amstel, M.F., van den Brand, M.G.J., Protić, Z., Verhoeff, T. (2008). Transforming Process Algebra Models into UML State Machines: Bridging a Semantic Gap?. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds) Theory and Practice of Model Transformations. ICMT 2008. Lecture Notes in Computer Science, vol 5063. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69927-9_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-69927-9_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-69926-2

  • Online ISBN: 978-3-540-69927-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics