Dynamic Meta Modeling: A Graphical Approach to the Operational Semantics of Behavioral Diagrams in UML
In this paper, dynamic meta modeling is proposed as a new approach to the operational semantics of behavioral UML diagrams. The dynamic meta model extends the well-known static meta model by a speci.cation of the system’s dynamics by means of collaboration diagrams. In this way, it is possible to de.ne the behavior of UML diagrams within UML.
The conceptual idea is inherited from Plotkin’s structured operational semantics (SOS) paradigm, a style of semantics speci.cation for concurrent programming languages and process calculi: Collaboration diagrams are used as deduction rules to specify a goal-oriented interpreter for the language. The approach is exemplified using a fragment of UML statechart and object diagrams.
Formally, collaboration diagrams are interpreted as graph transformation rules. In this way, dynamic UML semantics can be both mathematically rigorous so as to enable formal specifications and proofs and, due to the use of UML notation, understandable without prior knowledge of heavy mathematic machinery. Thus, it can be used as a reference by tool developers, teachers, and advanced users.
Keywords:UML meta model statechart diagrams precise behavioral semantics graph transformation
Unable to display preview. Download preview PDF.
- 2.R. Bardohl, G. Taentzer, M. Minas, and A. Schürr. Application of graph transformation to visual languages. In Ehrig et al. , pages 105–180.Google Scholar
- 3.R. Breu and R. Grosu. Relating events, messages, and methods of multiple threaded objects. JOOP, pages 8–14, January 2000.Google Scholar
- 4.A. Corradini, R. Heckel, and U. Montanari. Graphical operational semantics. In A. Corradini and R. Heckel, editors, Proc. ICALP2000 Workshop on Graph Transformation and Visual Modelling Techniques, Geneva, Switzerland, Geneva, July 2000. Carleton Scientific.Google Scholar
- 6.H. Ehrig, G. Engels, H.-J. Kreowski, and G. Rozenberg, editors. Handbook of Graph Grammars and Computing by Graph Transformation, Volume 2: Applications, Languages, and Tools. World Scientific, 1999.Google Scholar
- 7.H. Ehrig, H.-J. Kreowski, U. Montanari, and G. Rozenberg, editors. Handbook of Graph Grammars and Computing by Graph Transformation, Volume 3: Concurrency and Distribution. World Scientific, 1999.Google Scholar
- 8.G. Engels, R. Hücking, St. Sauer, and A. Wagner. UML collaboration diagrams and their transformation to Java. In R. France and B. Rumpe, editors, Proc.UML’99 Int. Conference, Fort Collins, CO, USA, volume 1723 of LNCS, pages 473–488. Springer Verlag, October 1999.Google Scholar
- 9.A. Evans and S. Kent. Core meta modelling semantics of UML: The pUML approach. In France and Rumpe , pages 140–155.Google Scholar
- 10.T. Fischer, J. Niere, L. Torunski, and A. Zündorf. Story diagrams: A new graph transformation language based on UML and Java. In H. Ehrig, G. Engels, H.-J. Kreowski, and G. Rozenberg, editors, Proc. 6th Int. Workshop on Theory and Application of Graph Transformation (TAGT’98), Paderborn, November 1998, volume 1764 of LNCS. SpringerVerlag, 2000.Google Scholar
- 11.R. France and B. Rumpe, editors. Proc. UML’99 — Beyond the Standard, volume 1723 of LNCS. Springer Verlag, 1999.Google Scholar
- 12. F. Gadducci and U. Montanari. The tile model. In G. Plotkin, C. Stirling, and M. Tofte, editors, Proof, Language and Interaction: Essays in Honour of Robin Milner. MIT Press, 1999.Google Scholar
- 13.M. Gogolla and F. Parisi-Presicce. State diagrams in UML — a formal semantics using graph transformation. In ICSE’98 Workshop on Precise Semantics of Modelling Techniques, 1998. Tech. Rep. TUM-I9803, TU München.Google Scholar
- 14.M. Gogolla and M. Richters. Equivalence rules for UML class diagrams. In P.-A. Muller and J. Bezivin, editors, Proc. UML’98 Workshop, pages 86–97. Universite de Haute-Alsace, Mulhouse, 1998.Google Scholar
- 15.A. Knapp. A formal semantics of UML interactions. In France and Rumpe , pages 116–130.Google Scholar
- 16.M. Korff. Single pushout transformations of equationally defined graph structures with applications to actor systems. In Proc. Graph Grammar Workshop, Dagstuhl, 1993, volume 776 of LNCS, pages 234–247. Springer Verlag, 1994.Google Scholar
- 17.J. Lillius and I. Paltor. Formalising UML state machines for model checking. In France and Rumpe , pages 430–445.Google Scholar
- 18.Object Management Group. Action semantics for the UML, November 1998. http://www.omg.org/pub/docs/ad/98-11-01.pdf.
- 19.Object Management Group. Analysis and design platform task forceff white paper on the profile mechanism, April 1999. http://www.omg.org/pub/docs/ad/99-04-07.pdf.
- 22.G. Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, Aarhus University, Computer Science Department, 1981.Google Scholar
- 23.G. Reggio, E. Astesiano, C. Choppy, and H. Hussmann. Analysing UML active classes and associated state machines — a lightweight formal approach. In T. Maibaum, editor, Fundamental Approaches to Software Engineering (FASE’00), Berlin, Germany, number 1783 in LNCS, pages 127–146. Springer Verlag, March/April 2000.CrossRefGoogle Scholar
- 24.G. Rozenberg, editor. Handbook of Graph Grammars and Computing by Graph Transformation, Volume 1: Foundations. World Scientific, 1997.Google Scholar