Abstract
This paper studies the semantics of a central part of the Unified Modeling Language UML. It discusses UML class, object and state diagrams and presents a new integrated semantics for both on the basis of graph transformation. Graph transformation is a formal technique having some common ideas with the UML. Graph transformation rules are associated with the operations in class diagrams and with the transitions in state diagrams. The resulting graph transformations are combined into a one system in order to obtain a single coherent semantic description.
Keywords
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.
This work was partially supported by the project Abstract Implementation of and Documentation with UML (UML-AID) funded by the Deutsche Forschungsgemeinschaft and the ESPRIT Working Group Applications of Graph Transformation (APPLIGRAPH).
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ralph-Johan Back, Luigia Petre, and Ivan Porres Paltor. Analysing UML use cases as contracts. In Robert France and Bernhard Rumpe, editors, UML’ 99-The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28–30. 1999, Proceedings, volume 1723 of LNCS, pages 518–533. Springer, 1999.
Luciano Baresi and Mauro Pezzè. On formalizing UML with high-level Petri Nets. In G. Agha and F. De Cindio, editors, Proc. Concurrent Object-Oriented Programming and Petri Nets, volume 2001 of Lecture Notes in Computer Science, pages 271–300, 2001.
Christie Bolton and Jim Davies. Using relational and behavioural semantics in the verification of object models. In Scott F. Smith and Carolyn L. Talcott, editors, Formal Methods for Open Object-Based Distributed Systems IV-Proc. FMOODS’2000, September, 2000, Stanford, California, USA. Kluwer Academic Publishers, 2000.
Grady Booch, James Rumbaugh, and Ivar Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1998.
Paolo Bottoni, Manuel Koch, Francesco Parisi-Presicce, and Gabriele Taentzer. Consistency checking and visualization of OCL constraints. In Andy Evans, Stuart Kent, and Bran Selic, editors, UML 2000-The Unified Modeling Language. Advancing the Standard. Third International Conference, York, UK, October 2000, Proceedings, volume 1939 of LNCS, pages 294–308. Springer, 2000.
Paolo Bottoni, Manuel Koch, Francesco Parisi-Presicce, and Gabriele Taentzer. A visualization of ocl using collaborations. In Martin Gogolla and Cris Kobryn, editors, UML 2001-The Unified Modeling Language. Modeling Languages, Concepts, and Tools, volume 2185 of Lecture Notes in Computer Science, pages 257–271, 2001.
Giorgio Busatto, Gregor Engels, Katharina Mehner, and Annika Wagner. A framework for adding packages to graph transformation systems. In Hartmut Ehrig, Gregor Engels, Hans-Jörg Kreowski, and Grzegorz Rozenberg, editors, Proc. Theory and Application of Graph Transformations, volume 1764 of Lecture Notes in Computer Science, pages 352–367, 2000.
Tony Clark, Andy Evans, and Stuart Kent. The metamodelling language calculus: Foundation semantics for UML. In Heinrich Hussmann, editor, Fundamental Approaches to Software Engineering. 4th International Conference, FASE 2001 Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2001 Genova, Italy, April 2–6. 2001 Proceedings, volume 2029 of LNCS, pages 17–31. Springer, 2001.
Frank Drewes, Berthold Hoffmann, and Detlef Plump. Hierarchical graph transformation. Journal of Computer and System Sciences, 2002. To appear; short version in Proc. FOSSACS 2000, LNCS 1784.
Desmond D’Souza and Alan Wills. Objects, Components and Frameworks With UML: The Catalysis Approach. Addison-Wesley, 1998.
Hartmut Ehrig, Gregor Engels, Hans-Jörg Kreowski, and Grzegorz Rozenberg, editors. Handbook of Graph Grammars and Computing by Graph Transformation, Vol. 2: Applications, Languages and Tools. World Scientific, Singapore, 1999.
Hartmut Ehrig, Hans-Jörg Kreowski, Ugo Montanari, and Grzegorz Rozenberg, editors. Handbook of Graph Grammars and Computing by Graph Transformation, Vol. 3: Concurrency, Parallelism, and Distribution. World Scientific, Singapore, 1999.
Gregor Engels, Jan Hendrik Hausmann, Reiko Heckel, and Stefan Sauer. Dynamic meta modeling: A graphical approach to the operational semantics of behavioral diagrams in UML. In Andy Evans, Stuart Kent, and Bran Selic, editors, UML 2000-The Unified Modeling Language. Advancing the Standard, volume 1939 of Lecture Notes in Computer Science, pages 323–337, 2000.
Gregor Engels, Reiko Heckel, and Jochen Malte Küster. Rule-based specification of behavioral consistency based on the UML meta-model. In Martin Gogolla and Cris Kobryn, editors, UML 2001-The Unified Modeling Language. Modeling Languages, Concepts, and Tools, volume 2185 of Lecture Notes in Computer Science, pages 272–286, 2001.
Gregor Engels and Andy Schuerr. Encapsulated hierachical graphs, graph types, and meta types. In SEGRAGRA’95, Joint COMPUGRAPH/SEMAGRAPH Workshop on Graph Rewriting and Computation, volume 2 of Electronic Notes in Theoretical Computer Science. Elsevier, 1995.
Andy Evans and Stuart Kent. Core meta-modelling semantics of UML: The pUML approach. In Robert France and Bernhard Rumpe, editors, UML’ 99-The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28–30. 1999, Proceedings, volume 1723 of LNCS, pages 140–155. Springer, 1999.
Clemens Fischer, Ernst-Rüdiger Olderog, and Heike Wehrheim. A CSP view on UML-RT structure diagrams. In Heinrich Hussmann, editor, Fundamental Approaches to Software Engineering. 4th International Conference, FASE 2001 Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2001 Genova, Italy, April 2-6. 2001 Proceedings, volume 2029 of LNCS, pages 91–108. Springer, 2001.
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. Theory and Application to Graph Transformations (TAGT’98), Paderborn, November, 1998, volume 1764 of LNCS. Springer, 1998.
Robert France, Andy Evans, and Kevin Lano. The UML as a formal modeling notation. In Haim Kilov, Bernhard Rumpe, and Ian Simmonds, editors, Proceedings OOPSLA’ 97 Workshop on Object-oriented Behavioral Semantics, pages 75–81. echnische Universität München, TUM-I9737, 1997.
Martin Gogolla. Graph transformations on the UML metamodel. In Jose D. P. Rolim, Andrei Z. Broder, Andrea Corradini, Roberto Gorrieri, Reiko Heckel, Juraj Hromkovic, Ugo Vaccaro, and Joe B. Wells, editors, Proc. ICALP Workshop Graph Transformations and Visual Modeling Techniques (GVMT’2000), pages 359–371. Carleton Scientific, Waterloo, Ontario, Canada, 2000.
Martin Gogolla and Francesco Parisi-Presicce. State diagrams in UML: A formal semantics using graph transformations. In Manfred Broy, Derek Coleman, Tom Maibaum, and Bernhard Rumpe, editors, Proc. ICSE’98 Workshop Precise Semantics of Modeling Techniques, Technical Report TUM-I9803, pages 55–72, 1998.
David Harel. On visual formalisms. Communications of the A CM, 31(5):514–530, 1988.
Hans-Jörg Kreowski and Sabine Kuske. Graph transformation units with interleaving semantics. Formal Aspects of Computing, 11(6):690–723, 1999.
Sabine Kuske. Transformation Units—A structuring Principle for Graph Transformation Systems. PhD thesis, University of Bremen, 2000.
Sabine Kuske. A formal semantics of uml state machines based on structured graph transformation. In Martin Gogolla and Cris Kobryn, editors, UML 2001-The Unified Modeling Language. Modeling languages, Concepts, and Tools, volume 2185 of Lecture Notes in Computer Science, pages 241–256, 2001.
J. Küster Filipe, K.-K. Lau, M. Ornaghi, K. Taguchi, A. Wills, and H. Yatsu. Formal specification of Catalysis frameworks. In Jing Song Dong, Jifeng He, and Martin Purvis, editors, Proc. 7th Asia-Pacific Software Engineering Conference, pages 180–187. IEEE Computer Society Press, 2000.
Gihwon Kwon. Rewrite rules and operational semantics for model checking UML statecharts. In Andy Evans, Stuart Kent, and Bran Selic, editors, UML 2000-The Unified Modeling Language. Advancing the Standard. Third International Conference, York, UK, October 2000, Proceedings, volume 1939 of LNCS, pages 528–540. Springer, 2000.
Diego Latella, Istvan Majzik, and Mieke Massink. Towards a formal operational semantics of UML statechart diagrams. In Proc. FMOODS’99, IFIP TC6/WG6.1 Third International Conference on Formal Methods for Open Object-Based Distributed Systems, Florence, Italy, February 15–18, 1999. Kluwer, 1999.
Johan Lilius and Ivan Porres Paltor. Formalising UML state machines for model checking. In Robert France and Bernhard Rumpe, editors, Proc. UML’99-The Unified Modeling Language. Beyond the Standard, volume 1723 of Lecture Notes in Computer Science, pages 430–445, 1999.
Jing Liu, Jin Song Dong, Kun Shi, and Brendan Mahony. Linking UML with integrated formal techniques. In Keng Siau and Terry Halpin, editors, Unified Modeling Language: Systems Analysis, Design and Development Issues, chapter 13, pages 210–223. Idea Publishing Group, 2001.
Andrea Maggiolo-Schettini and Adriano Peron. Semantics of full statecharts based on graph rewriting. In Hans-Jürgen Schneider and Hartmut Ehrig, editors, Proc. Graph Transformation in Computer Science, volume 776 of Lecture Notes in Computer Science, pages 265–279, 1994.
Andrea Maggiolo-Schettini and Adriano Peron. A Graph Rewriting Framework for Statecharts Semantics. In Janice E. Cuny, Hartmut Ehrig, Gregor Engels, and Grzegorz Rozenberg, editors, Proc. 5th Int. Workshop on Graph Grammars and their Application to Computer Science, volume 1073, pages 107–121. Springer-Verlag, 1996.
OMG. Unified Modeling Language specifcation, 2001. Available at http://www.omg.org//.
Dorina C. Petriu and Yimei Sun. Consistent behaviour representation in activity and sequence diagrams. In Andy Evans, Stuart Kent, and Bran Selic, editors, Proc. UML 2000-The Unified Modeling Language. Advancing the Standard, volume 1939 of Lecture Notes in Computer Science, pages 359–368, 2000.
Terrence W. Pratt. Definition of programming language semantics using grammars for hierarchical graphs. In Volker Claus, Hartmut Ehrig, and Grzegorz Rozenberg, editors, Proc. Graph Grammars and Their Application to Computer Science and Biology, volume 73 of Lecture Notes in Computer Science, pages 389–400, 1979.
Gianna Reggio, Egidio Astesiano, Christine Choppy, and Heinrich Hussmann. Analysing UML active classes and associated state machines-A lightweight formal approach. In Tom Maibaum, editor, Proc. Fundamental Approaches to Software Engineering (FASE 2000), Berlin, Germany, volume 1783 of Lecture Notes in Computer Science, 2000.
Grzegorz Rozenberg, editor. Handbook of Graph Grammars and Computing by Graph Transformation, Vol. 1: Foundations. World Scientific, Singapore, 1997.
James Rumbaugh, Ivar Jacobson, and Grady Booch. The Unified Modeling Language Reference Manual. Addison-Wesley, 1998.
Andy Schürr and Andreas J. Winter. UML packages for PROgrammed Graph REwriting Systems. In Hartmut Ehrig, Gregor Engels, Hans-Jörg Kreowski, and Grzegorz Rozenberg, editors, Proc. Theory and Application of Graph Transformations, volume 1764 of Lecture Notes in Computer Science, pages 396–409, 2000.
Aliki Tsiolakis and Hartmut Ehrig. Consistency analysis of UML class and sequence diagrams using attributed graph grammars. In Hartmut Ehrig and Gabriele Taentzer, editors, Proc. Joint APPLIGRAPH and GETGRATS Workshop on Graph Transformation Systems, Report Nr. 2000-2, Technical University of Berlin, pages 77–86, 2000.
Jos Warmer and Anneke Kleppe. The Object Constraint Language: Precise Modeling with UML. Addison-Wesley, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kuske, S., Gogolla, M., Kollmann, R., Kreowski, HJ. (2002). An Integrated Semantics for UML Class, Object and State Diagrams Based on Graph Transformation. In: Butler, M., Petre, L., Sere, K. (eds) Integrated Formal Methods. IFM 2002. Lecture Notes in Computer Science, vol 2335. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47884-1_2
Download citation
DOI: https://doi.org/10.1007/3-540-47884-1_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43703-1
Online ISBN: 978-3-540-47884-3
eBook Packages: Springer Book Archive