Advertisement

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

  • M. F. van Amstel
  • M. G. J. van den Brand
  • Z. Protić
  • T. Verhoeff
Part of the Lecture Notes in Computer Science book series (LNCS, 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.

Keywords

State Machine Action Object Communication Function Parallel Composition Process Algebra 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 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. 3.
    Baeten, J.C.M.: A brief history of process algebra. Theoretical Computer Science 335(2–3), 131–146 (2005)CrossRefMathSciNetzbMATHGoogle Scholar
  4. 4.
    Object Management Group: Unified Modeling Language: Superstructure specification, version 2.1.1. Document – formal/2007-02-05, OMG (2007)Google Scholar
  5. 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. 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. 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. 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. 9.
    Nicollin, X., Sifakis, J., Yovine, S.: From ATP to timed graphs and hybrid systems. Acta Informatica 30(2), 181–202 (1993)CrossRefMathSciNetzbMATHGoogle Scholar
  10. 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)CrossRefGoogle Scholar
  11. 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. 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. 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. 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. 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)CrossRefGoogle Scholar
  16. 16.
    Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Information and Control 60(1–3), 109–137 (1984)CrossRefMathSciNetzbMATHGoogle Scholar
  17. 17.
    Baeten, J.C.M., Basten, T., Reniers, M.A.: Algebra of communicating processes. Lecture notes (DRAFT) (2005)Google Scholar
  18. 18.
    Thompson, K.: Regular expression search algorithm. Communications of the ACM 11(6), 419–422 (1968)CrossRefzbMATHGoogle Scholar
  19. 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. 20.
    ArgoUML v0.24 (Viewed January 2008), http://argouml.tigris.org/
  21. 21.
    Telelogic Rhapsody 7.1.1 (Viewed January 2008), http://modeling.telelogic.com/products/rhapsody/index.cfm
  22. 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)CrossRefGoogle Scholar
  23. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • M. F. van Amstel
    • 1
  • M. G. J. van den Brand
    • 1
  • Z. Protić
    • 1
  • T. Verhoeff
    • 1
  1. 1.Department of Mathematics and Computer ScienceTechnische Universiteit EindhovenEindhovenThe Netherlands

Personalised recommendations