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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
FALCON, http://www.esi.nl/falcon/
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)
Baeten, J.C.M.: A brief history of process algebra. Theoretical Computer Science 335(2–3), 131–146 (2005)
Object Management Group: Unified Modeling Language: Superstructure specification, version 2.1.1. Document – formal/2007-02-05, OMG (2007)
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)
Baeten, J.C.M., Weijland, W.P.: Process Algebra. Cambridge Tracts in Theoretical Computer Science, vol. (18). Cambridge University Press, Cambridge (1990)
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)
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)
Nicollin, X., Sifakis, J., Yovine, S.: From ATP to timed graphs and hybrid systems. Acta Informatica 30(2), 181–202 (1993)
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)
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)
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)
Pintér, G., Majzik, I.: Program code generation based on UML statechart models. Periodica Polytechnica 47(3–4), 187–204 (2003)
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)
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)
Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Information and Control 60(1–3), 109–137 (1984)
Baeten, J.C.M., Basten, T., Reniers, M.A.: Algebra of communicating processes. Lecture notes (DRAFT) (2005)
Thompson, K.: Regular expression search algorithm. Communications of the ACM 11(6), 419–422 (1968)
Object Management Group: Meta Object Facility MOF 2.0/XMI mapping specification, version 2.1. Document – formal/05-09-01, OMG (2005)
ArgoUML v0.24 (Viewed January 2008), http://argouml.tigris.org/
Telelogic Rhapsody 7.1.1 (Viewed January 2008), http://modeling.telelogic.com/products/rhapsody/index.cfm
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)
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)
Author information
Authors and Affiliations
Editor information
Rights 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)