Skip to main content
Log in

Towards an integrated graph-based semantics for UML

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

This paper shows how a central part of the Unified Modeling Language (UML) can be integrated into a single visual semantic model. It discusses UML models composed of class, object, state, sequence and collaboration diagrams and presents an integrated semantics of these models. As formal basis the theoretically well-founded area of graph transformation is employed which supports a visual and rule-based transformation of UML model states. For the translation of a UML model into a graph transformation system the operations in class diagrams and the transitions in state diagrams are associated with graph transformation rules that are then combined into one system in order to obtain a single coherent semantic description. Operation calls in sequence and collaboration diagrams can be associated with applications of graph transformation rules in the constructed graph transformation system so that valid sequence and collaboration diagrams correspond to derivations, i.e., to sequences of graph transformation rule applications. The main aim of this paper is to provide a formal framework that supports visual simulation of integrated UML specifications in which system states and state changes are modeled in a straightforward way.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Baresi, L., Pezzè, M.: On formalizing UML with high-level Petri nets. In: Agha, G., Cindio, F.D. (eds.) Proceedings of Concurrent Object-Oriented Programming and Petri Nets. Lecture Notes in Computer Science, vol. 2001, pp. 271–300. Springer, Heidelberg (2001)

  2. von der Beek M.: A structured operational semantics for UML-statecharts. Softw. Syst. Model. 1(2), 130–141 (2002)

    Article  Google Scholar 

  3. Boehm P., Fonio H.R., Habel A.: Amalgamation of graph transformations: a synchronization mechanism. J. Comput. Syst. Sci. 34, 377–408 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  4. Booch G., Rumbaugh J., Jacobson I.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1998)

    Google Scholar 

  5. Bottoni, P., Parisi-Presicce, F., Taentzer, G.: Coordinated distributed diagram transformation for software evolution. In: Heckel, R., Mens, T., Wermelinger, M. (eds) Proceedings of the Workshop on ‘Software Evolution Through Transformations’ (SET’02), Electronic Notes in Theoretical Computer Science, vol.72 (2002)

  6. Busatto G., Kreowski H.J., Kuske S.: Abstract hierarchical graph transformation. Math. Struct. Comput. Sci. 15(04), 773–819 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  7. Cordes, B., Hölscher, K., Kreowski, H.J.: UML interaction diagrams: correct translation of sequence diagrams into collaboration diagrams. In: Nagl, M., Pfalz, J. (eds.) Applications of Graph Transformations with Industrial Relevance (AGTIVE), no. 3062 in Lecture Notes in Computer Science, pp. 275–291. Springer, Heidelberg (2003)

  8. Corradini, A., Ehrig, H., Heckel, R., Löwe, M., Montanari, U., Rossi, F.: Algebraic approaches to graph transformation part I: Basic concepts and double pushout approach. In: Rozenberg [40], pp. 163–245

  9. Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.): Handbook of Graph Grammars and Computing by Graph Transformation, Vol.2: Applications, Languages and Tools. World Scientific, Singapore (1999)

  10. Ehrig H., Habel A.: Graph grammars with application conditions. In: Rozenberg, G., Salomaa, A.(eds) The Book of L., pp. 87–100. Springer, Berlin (1986)

    Google Scholar 

  11. Ehrig, H., Kreowski, H.J., Montanari, U., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing by Graph Transformation, Vol.3: Concurrency, Parallelism, and Distribution. World Scientific, Singapore (1999)

  12. Ehrig, H., Prange, U., Taentzer, G.: Fundamental theory for typed attributed graph transformation. In: Parisi-Presicce, F., Bottoni, P., Engles, G. (eds.) Proceedings of 2nd International Conference on Graph Transformation (ICGT’04), Lecture Notes in Computer Science, vol. 3256, pp. 161–177. Springer, Heidelberg (2004)

  13. Engels, G., Hausmann, J.H., Heckel, R., Sauer, S.: Dynamic meta modeling: a graphical approach to the operational semantics of behavioral diagrams in UML. In: Evans, A., Kent, S., Selic, B. (eds) Proceedings of UML 2000—The Unified Modeling Language. Advancing the Standard, Lecture Notes in Computer Science, vol. 1939, pp. 323–337. Springer, Heidelberg (2000)

  14. Engels, G., Hausmann, J.H., Heckel, R., Sauer, S.: Testing the consistency of dynamic UML diagrams. In: Proceedings of 6th International Conference on Integrated Design and Process Technology (IDPT 2002), 23–28 June 2002, Pasadena (2002)

  15. Engels, G., Heckel, R., Küster, J.: Rule-based specification of behavioral consistency based on the UML meta-model. In: Gogolla, M., Kobryn, C. (eds.) UML 2001—The Unified Modeling Language. Modeling Languages, Concepts, and Tools. Lecture Notes in Computer Science, vol. 2185, pp. 272–286. Springer, Heidelberg (2001)

  16. Engels, G., Heckel, R., Küster, J.M.: The consistency workbench: A tool for consistency management in UML-based development. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003—The Unified Modeling Language. Model Languages and Applications. 6th International Conference, San Francisco, CA, USA. Proceedings, Lecture Notes in Computer Science, vol. 2863, pp. 356–359. Springer, Heidelberg (2003)

  17. Gnesi S., Latella D., Massink M.: Modular semantics for a UML state diagrams kernel and their execution to multicharts and branching time model-checking. J. Logic Algebr. Program. 51(1), 43–75 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  18. Gogolla, M., Richters, M.: Transformation rules for UML class diagrams. In: Bézivin, J., Muller, P.A. (eds.) The Unified Modeling Language, UML’98 - Beyond the Notation. Ist International Workshop, Mulhouse, France, June 1998, Selected Papers, LNCS, vol. 1618, pp. 92–106. Springer, Heidelberg (1999)

  19. Gogolla M., Richters M.: Expressing UML class diagrams properties with OCL. In: Clark, T., Warmer, J.(eds) Object Modeling with the OCL, The Rationale behind the Object Constraint Language, Lecture Notes in Computer Science, vol 2263, pp. 86–115. Springer, Heidelberg (2002)

    Google Scholar 

  20. Gogolla, M., Ziemann, P., Kuske, S.: Towards an integrated graph based semantics for UML. In: Graph Transformation and Visual Modeling Techniques (GT-VMT 2002), Electronic Notes in Theoretical Computer Science, vol.72 (2003)

  21. Habel A., Heckel R., Taentzer G.: Graph grammars with negative application conditions. Fundamenta Informaticae 26(3,4), 287–313 (1996)

    MATH  MathSciNet  Google Scholar 

  22. Hausmann, J.H., Heckel, R., Taentzer, G.: Detection of conflicting functional requirements in a use case-driven approach. In: Proceedings of the 24th International Conference on Software Engineering 2002, Orlando, USA, pp. 105–115. IEEE Computer Society Press (2002)

  23. Heckel, R., Engels, G., Ehrig, H., Taentzer, G.: Classification and comparison of module concepts for graph transformation systems. In: Ehrig etal. [9], pp. 639–689

  24. Heckel, R., Küster, J.M., Taentzer, G.: Towards automatic translation of UML models into semantic domains. In: Kreowski, H.J., Knirsch, P. (eds.) Applied Graph Transformation (AGT’02), pp. 11–22 (2002)

  25. Hu, Z., Shatz, S.M.: Mapping UML diagrams to a petri net notation for system simulation. In: Proceedings of International Conference on Software Engineering and Knowledge Engineering, pp. 213–219 (2004)

  26. Kastenberg, H., Rensink, A.: Model checking dynamic states in GROOVE. In: Valmari, A. (ed.) Proceedings of 13th International Workshop on Software Model Checking (SPIN’06), no. 3925 in Lecture Notes in Computer Science, pp. 299–305. Springer, Heidelberg (2006)

  27. Kuske, S.: A formal semantics of UML state machines based on structured graph transformation. In: Gogolla, M., Kobryn, C. (eds.) UML 2001—The Unified Modeling Language. Modeling languages, Concepts, and Tools, Lecture Notes in Computer Science, vol. 2185, pp. 241–256. Springer, Heidelberg (2001)

  28. Kuske, S., Gogolla, M., Kollmann, R., Kreowski, H.J.: An integrated semantics for UML class, object, and state diagrams based on graph transformation. In: Butler, M., Sere, K. (eds.) 3rd International Conference on Integrated Formal Methods(IFM’02), Lecture Notes in Computer Science, vol. 2335, pp. 11–28. Springer, Heidelberg (2002)

  29. Kwon, G.: Rewrite rules and operational semantics for model checking UML statecharts. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000 - The Unified Modeling Language. Advancing the Standard. 3rd International Conference, York, UK, October 2000, Proceedings. Lecture Notes in Computer Science, vol. 1939, pp. 528–540. Springer, Heidelberg (2000)

  30. Lilius, J., Paltor, I.: Formalising UML state machines for model checking. In: France, R., Rumpe, B. (eds.) Proceedings of UML’99—The Unified Modeling Language. Beyond the Standard, Lecture Notes in Computer Science, vol. 1723, pp. 430–445. Springer, Heidelberg (1999)

  31. Löwe M., Korff M., Wagner A.: An algebraic framework for the transformation of attributed graphs. In: Sleep, M.R., Plasmeijer, R., van Eekelen, M.(eds) Term Graph Rewriting, Theory and Practice., pp. 185–199. Wiley, Chichester (1993)

    Google Scholar 

  32. Maggiolo-Schettini, A., Peron, A.: Semantics of full statecharts based on graph rewriting. In: Schneider, H.J., Ehrig, H. (eds.) Proceedings of Graph Transformation in Computer Science, Lecture Notes in Computer Science, vol. 776, pp. 265–279. Springer, Heidelberg (1994)

  33. Maggiolo-Schettini, A., Peron, A.: A Graph Rewriting Framework for Statecharts Semantics. In: Cuny, J.E., Ehrig, H., Engels, G., Rozenberg, G. (eds.) Proceedings of 5th International Workshop on Graph Grammars and their Application to Computer Science, vol. 1073, pp. 107–121. Springer, Heidelberg (1996). citeseer.nj.nec.com/article/maggiolo-schettini96graph.html

  34. OMG: Unified Modeling Language specifcation, version 1.5 (2003). Available at http://www.omg.org/

  35. Reggio, G., Astesiano, E., Choppy, C., Hussmann, H.: Analysing UML active classes and associated state machines—a lightweight formal approach. In: Maibaum, T. (ed.) Proceedings of Fundamental Approaches to Software Engineering (FASE 2000), Berlin, Germany, Lecture Notes in Computer Science, vol. 1783, pp. 127–146. Springer, Heidelberg (2000)

  36. Rensink, A.: The GROOVE simulator: A tool for state space generation. In: Nagl, M., Pfalz, J. (eds.) Applications of Graph Transformations with Industrial Relevance (AGTIVE), no. 3062 in Lecture Notes in Computer Science, pp. 479–485. Springer, Heidelberg (2003)

  37. Rensink, A.: Towards model checking graph grammars. In: Leuschel, S.G.M., Presti, S.L. (eds.) Proceedings of 3rd Workshop on Automated Verification of Critical Systems, no. 3062 in Tech. Report DSSE-TR-2003-2, pp. 150–160. University of Southampton (2003)

  38. Richters M., Gogolla M.: OCL: Syntax, semantics, and tools. In: Clark, T., Warmer, J.(eds) Object Modeling with the OCL: The Rationale behind the Object Constraint Language., pp. 42–68. Springer, Heidelberg (2002)

    Google Scholar 

  39. Rossi C., Enciso M., de Guzmán I.P.: Formalization of UML state machines using temporal logic. Softw. Syst. Model. 3, 31–54 (2004)

    Article  Google Scholar 

  40. , (eds): . , ()

    Google Scholar 

  41. Rumbaugh J., Jacobson I., Booch G.: The Unified Modeling Language Reference Manual. Addison-Wesley, Reading (1998)

    Google Scholar 

  42. Schmidt, Á., Varró, D.: CheckVML: A tool for model checking visual modeling languages. In: P.Stevens, J.Whittle, G.Booch (eds.) UML 2003—The Unified Modeling Language. Model Languages and Applications. 6th International Conference, San Francisco, CA, USA. Proceedings, Lecture Notes in Computer Science, vol. 2863, pp. 92–95. Springer, Heidelberg (2003)

  43. Simons, A.J.H.: On the compositional properties of UML statechart diagrams. Electronic Workshops in Computing: Rigorous Object-Oriented Methods, pp. 8/1–8/12 (2000)

  44. Taentzer G. (1996) Hierarchically distributed graph transformation. In: Cuny, J.E., Ehrig, H., Engels, G., Rozenberg, G. (eds.) Proceedings of Graph Grammars and their Application to Computer Science, Lecture Notes in Computer Science, vol. 1073, pp. 304–320 (1996)

  45. Taentzer, G., Ermel, C., Rudolf, M.: The AGG-approach: Language and tool environment. In: Ehrig etal. [9], pp. 551–603

  46. Varró, D.: A formal semantics of UML statecharts by model transition systems. In: Corradini, A., Ehrig, H., Kreowski, H.J., Rozenberg, G. (eds.) Graph Transformation. Ist International Conference, ICGT 2002, Barcelona, Spain. Proceedings, Lecture Notes in Computer Science, vol. 2505, pp. 378–392. Springer, Heidelberg (2002)

  47. Varró, D., Pataricza, A.: Metamodeling mathematics: a precise and visual framework for describing semantics domains of UML models. In: Jézéquel, J.M., Hussmann, H., Cook, S. (eds.) UML 2002—The Unified Modeling Language. Model Engineering, Languages, Concepts, and Tools. 5th International Conference, Dresden, Germany. Proceedings, Lecture Notes in Computer Science, vol. 2460, pp. 18–33. Springer, Heidelberg (2002)

  48. Warmer J., Kleppe A.: The Object Constraint Language: Precise Modeling with UML. Addison-Wesley, Reading (1998)

    Google Scholar 

  49. Ziemann, P.: An Integrated Operational Semantics for a UML Core Based on Graph Transformation. No.14 in Monographs of the Bremen Institute of Safe Systems. Logos, Ph.D. Thesis (2006)

  50. Ziemann P., Hölscher K., Gogolla M.: On translating UML models into graph transformation systems. J. Vis. Lang. Comput. 17(1), 78–105 (2006)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sabine Kuske.

Additional information

Communicated by Prof. Robert France.

Sabine Kuske and Hans-Jörg Kreowski would like to acknowledge that their research is partially supported by the Collaborative Research Centre 637 (Autonomous cooperating logistic processes: a paradigm shift and its limitations) funded by the German Research Foundation (DFG).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kuske, S., Gogolla, M., Kreowski, HJ. et al. Towards an integrated graph-based semantics for UML. Softw Syst Model 8, 403–422 (2009). https://doi.org/10.1007/s10270-008-0101-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-008-0101-4

Keyword

Navigation