A Heterogeneous Approach to UML Semantics

  • María Victoria Cengarle
  • Alexander Knapp
  • Andrzej Tarlecki
  • Martin Wirsing
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5065)


UML models consist of several diagrams of different types describing different views of a software system ranging from specifications of the static system structure to descriptions of system snapshots and dynamic behaviour. In this paper a heterogeneous approach to the semantics of UML is proposed where each diagram type can be described in its “natural” semantics, and the relations between diagram types are expressed by appropriate translations. More formally, the UML family of diagram types is represented as a “heterogeneous institution environment”: each diagram type is described as an appropriate institution where typically the data structures occurring in a diagram are represented by signature elements whereas the relationships between data and the dynamic behaviour of objects are captured by sentences; in several cases, the diagrams are themselves the sentences. The relationship between two diagram types is described by a socalled institution comorphism, and in case no institution comorphism exists, by a co-span of such comorphisms. Consistency conditions between different diagrams are derived from the comorphism translations. This heterogeneous semantic approach to UML is illustrated by several example diagram types including class diagrams, OCL, and interaction diagrams.


Class Diagram Sequence Diagram Logical System Diagram Type Interaction Diagram 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Andrade, L., Baldan, P., Baumeister, H., Bruni, R., Corradini, A., De Nicola, R., Fiadeiro, J.L., Gadducci, F., Gnesi, S., Hoffman, P., Koch, N., Kosiuczenko, P., Lapadula, A., Latella, D., Lopes, A., Loreti, M., Massink, M., Mazzanti, F., Montanari, U., Oliveira, C., Pugliese, R., Tarlecki, A., Wermelinger, M., Wirsing, M., Zawłocki, A.: AGILE: Software architecture for mobility. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) WADT 2003. LNCS, vol. 2755. Springer, Heidelberg (2003)Google Scholar
  2. 2.
    Bergstra, J.A., Klop, J.W.: Process Algebra for Synchronous Communication. Information and Control 60(1–3), 109–137 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Bernot, G., Coudert, S., Gall, P.L.: Towards Heterogenous Formal Specifications. In: Wirsing, M., Nivat, M. (eds.) AMAST 1996. LNCS, vol. 1101, pp. 458–472. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  4. 4.
    Boreale, M., Bruni, R., Caires, L., De Nicola, R., Lanese, I., Loreti, M., Martins, F., Montanari, U., Ravara, A., Sangiorgi, D., Vasconcelos, V., Zavattaro, G.: SCC: a Service Centered Calculus. In: Bravetti, M., Zavattaro, G. (eds.) Proc. 3rd Int. Wsh. Web Services and Formal Methods (WS-FM 2006). Lect. Notes Comp. Sci., vol. 4184, pp. 38–57. Springer, Heidelberg (2006)Google Scholar
  5. 5.
    Broy, M., Cengarle, M.V., Rumpe, B.: Semantics of UML – Towards a System Model for UML: The Structural Data Model. Technical Report TUM-I0612, Institut für Informatik, Technische Universität München (June 2006)Google Scholar
  6. 6.
    Broy, M., Cengarle, M.V., Rumpe, B.: Semantics of UML – Towards a System Model for UML: The Control Model. Technical Report TUM-I0710, Institut für Informatik, Technische Universität München (February 2007)Google Scholar
  7. 7.
    Broy, M., Cengarle, M.V., Rumpe, B.: Semantics of UML – Towards a System Model for UML: The State Machine Model. Technical Report TUM-I0711, Institut für Informatik, Technische Universität München (February 2007)Google Scholar
  8. 8.
    Broy, M., Stølen, K.: Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer, Heidelberg (2001)zbMATHGoogle Scholar
  9. 9.
    Broy, M., Wirsing, M.: Algebraic State Machines. In: Rus, T. (ed.) AMAST 2000. LNCS, vol. 1816, pp. 89–118. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  10. 10.
    Bruni, R., Lluch-Lafuente, A., Montanari, U., Tuosto, E.: Style-based architectural reconfigurations. Technical Report TR-07-17, Computer Science Department, University of Pisa (2007)Google Scholar
  11. 11.
    Calegari, D.: UML 2.0 Interactions with OCL/RT Constraints. Master’s thesis, InCo-PEDECIBA, Technical report 07-17 (2007)Google Scholar
  12. 12.
    Cengarle, M.V.: The Rewriting Logic institution. Technical Report 9801, Ludwig-Maximilians-Universität München, Institut für Informatik (1998)Google Scholar
  13. 13.
    Cengarle, M.V.: The Temporal Logic institution. Technical Report 9805, Ludwig-Maximilians-Universität München, Institut für Informatik (1998)Google Scholar
  14. 14.
    Cengarle, M.V., Knapp, A.: Towards OCL/RT. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 390–409. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    Cengarle, M.V., Knapp, A.: OCL 1.4/1.5 vs. OCL 2.0 Expressions: Formal Semantics and Expressiveness. Softw. Syst. Model. 3(1), 9–30 (2004)CrossRefGoogle Scholar
  16. 16.
    Cengarle, M.V., Knapp, A.: UML 2.0 Interactions: Semantics and Refinement. In: Jürjens, J., Fernandez, E.B., France, R., Rumpe, B. (eds.) Proc. 3\(^{\text{rd}}\) Int. Wsh. Critical Systems Development with UML (CSDUML 2004), pp. 85–99 (2004); Technical Report TUM-I0415, Institut für Informatik, Technische Universität München (2004)Google Scholar
  17. 17.
    Cengarle, M.V., Knapp, A.: An Institution for OCL 2.0. Technical Report 0801, Institut für Informatik, Ludwig-Maximilians-Universität München (2008)Google Scholar
  18. 18.
    Cengarle, M.V., Knapp, A.: An Institution for UML 2.0 Interactions. Technical Report TUM-I0808, Institut für Informatik, Technische Universität München (2008)Google Scholar
  19. 19.
    Cengarle, M.V., Knapp, A.: An Institution for UML 2.0 Static Structures. Technical Report TUM-I0807, Institut für Informatik, Technische Universität München (2008)Google Scholar
  20. 20.
    Diaconescu, R.: Institution-independent Model Theory. Birkhäuser (to appear, 2008)Google Scholar
  21. 21.
    Ehrig, H., Padberg, J., Orejas, F.: From basic views and aspects to integration of specification formalisms. In: Paun, G., Rozenberg, G., Salomaa, A. (eds.) Current Trends in Theoretical Computer Science: Entering the 21th Century, pp. 202–214. World Scientific, Singapore (2001)Google Scholar
  22. 22.
    Fiadeiro, J.L., Lopes, A., Bocchi, L.: A Formal Approach to Service Component Architecture. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 193–213. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Fischer, C.: CSP-OZ: How to Combine Z with a Process Algebra. In: Bowman, H., Derrick, J. (eds.) Proc. 2nd Int. Conf. Formal Methods for Open Object-Based Distributed Systems (FMOODS 1997), pp. 423–438. Chapman & Hall, Boston (1997)Google Scholar
  24. 24.
    Gadducci, F., Montanari, U.: The Tile Model. In: Plotkin, G., Stirling, C., Tofte, M. (eds.) Proof, Language, and Interaction: Essays in Honour of Robin Milner. Foundations Of Computing Series, pp. 133–166. The MIT Press, Cambridge (2000)Google Scholar
  25. 25.
    Goguen, J.A.: Data, schema, ontology and logic integration. Logic J. IGPL 13(6), 685–715 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  26. 26.
    Goguen, J.A., Burstall, R.M.: Introducing Institutions. In: Clarke, E., Kozen, D. (eds.) Logics of Programs. LNCS, vol. 164, pp. 221–256. Springer, Heidelberg (1984)Google Scholar
  27. 27.
    Goguen, J.A., Burstall, R.M.: Institutions: Abstract Model Theory for Specification and Programming. J. ACM 39(1), 95–146 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  28. 28.
    Guidi, C., Lucchi, R., Busi, N., Gorrieri, R., Zavattaro, G.: SOCK: A Calculus for Service-Oriented Computing. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 327–338. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  29. 29.
    Goguen, J.A., Rosu, G.: Institution Morphisms. Form. Asp. Comp. 13(3-5), 274–307 (2002)zbMATHCrossRefGoogle Scholar
  30. 30.
    Lapadula, A., Pugliese, R., Tiezzi, F.: A Calculus for Orchestration of Web Services. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 33–47. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  31. 31.
    MacLane, S.: Categories for the Working Mathematician. Springer, Heidelberg (1971)Google Scholar
  32. 32.
    Mayer, P., Schroeder, A., Koch, N.: A Model-Driven Approach to Service Orchestration. In: Proc. IEEE Int. Conf. Services Computing (SCC 2008) (submitted, 2008)Google Scholar
  33. 33.
    Meseguer, J.: General Logics. In: Ebbinghaus, H.D., Fernandez-Prida, J., Garrido, M., Lascar, D. (eds.) Logic Colloquium 1987, pp. 275–329. North-Holland, Amsterdam (1989)Google Scholar
  34. 34.
    Meseguer, J.: Conditional Rewriting Logic as a Unified Model of Concurrency. Theo. Comp. Sci. 96, 73–155 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  35. 35.
    Meseguer, J., Montanari, U.: Mapping Tile Logic into Rewriting Logic. In: Parisi-Presicce, F. (ed.) WADT 1997. LNCS, vol. 1376, pp. 62–91. Springer, Heidelberg (1998)Google Scholar
  36. 36.
    Mossakowski, T.: Heterogenous Development Graphs and Heterogeneous Borrowing. In: Nielsen, M., Engberg, U. (eds.) FOSSACS 2002. LNCS, vol. 2303, pp. 326–341. Springer, Berlin (2002)CrossRefGoogle Scholar
  37. 37.
    Mossakowski, T.: Heterogeneous Specification and the Heterogeneous Tool Set. Habilitation thesis, Universität Bremen (2005)Google Scholar
  38. 38.
    Mossakowski, T., Maeder, C., Lüttich, K.: The Heterogeneous Tool Set. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 519–522. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  39. 39.
    Naur, P., Randell, B.: Software Engineering — Report on a Conference sponsored by the NATO Science Committee. NATO Sci. Affairs Div., Bruxelles, Garmisch (1969)Google Scholar
  40. 40.
    Pepper, P., Wirsing, M.: A Method for the Development of Correct Software. In: Jähnichen, S., Broy, M. (eds.) KORSO 1995. LNCS, vol. 1009, pp. 27–57. Springer, Heidelberg (1995)Google Scholar
  41. 41.
    Pratt, V.: Modeling Concurrency with Partial Orders. Int. J. Parallel Program. 15(1), 33–71 (1986)zbMATHCrossRefMathSciNetGoogle Scholar
  42. 42.
    Reggio, G., Repetto, L.: CASL-CHART: A Combination of Statecharts and the Algebraic Specification Language CASL. In: Rus, T. (ed.) AMAST 2000. LNCS, vol. 1816, pp. 243–272. Springer, Berlin (2000)CrossRefGoogle Scholar
  43. 43.
    Tarlecki, A.: Institution representation. Unpublished note, Dept.of Computer Science, University of Edinburgh (1987)Google Scholar
  44. 44.
    Tarlecki, A.: Moving between Logical Systems. In: Haveraaen, M., Dahl, O.-J., Owe, O. (eds.) Abstract Data Types 1995 and COMPASS 1995. LNCS, vol. 1130, pp. 478–502. Springer, Heidelberg (1996)Google Scholar
  45. 45.
    Tarlecki, A.: Towards heterogeneous specifications. In: Gabbay, D., de Rijke, M. (eds.) Frontiers of Combining Systems. Studies in Logic and Computation, vol. 2, pp. 337–360. Research Studies Press (2000)Google Scholar
  46. 46.
    Tarlecki, A.: Abstract Specification Theory: An Overview. In: Broy, M., Pizka, M. (eds.) Models, Algebras, and Logics of Engineering Software. NATO Science Series — Computer and System Sciences, vol. 191, pp. 43–79. IOS Press, Amsterdam (2003)Google Scholar
  47. 47.
    Wehrheim, H.: Behavioural Subtyping in Object-Oriented Specification Formalisms. Habilitationsschrift, Carl-von-Ossietzky-Universität Oldenburg (2002)Google Scholar
  48. 48.
    Wirsing, M., Clark, A., Gilmore, S., Hölzl, M., Knapp, A., Koch, N., Schroeder, A.: Semantic-Based Development of Service-Oriented Systems. In: Najm, E., Pradat-Peyre, J.-F., Donzeau-Gouge, V.V. (eds.) FORTE 2006. LNCS, vol. 4229, pp. 24–45. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  49. 49.
    Wirsing, M., Knapp, A.: View Consistency in Software Development. In: Wirsing, M., Knapp, A., Balsamo, S. (eds.) RISSEF 2002. LNCS, vol. 2941, pp. 341–357. Springer, Heidelberg (2004)Google Scholar
  50. 50.
    Wirsing, M., Nicola, R.D., Gilmore, S., Hölzl, M.M., Lucchi, R., Tribastone, M., Zavattaro, G.: Sensoria process calculi for service-oriented computing. In: Montanari, U., Sannella, D., Bruni, R. (eds.) TGC 2007. LNCS, vol. 4661, pp. 30–50. Springer, Heidelberg (2007)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • María Victoria Cengarle
    • 1
  • Alexander Knapp
    • 2
  • Andrzej Tarlecki
    • 3
  • Martin Wirsing
    • 2
  1. 1.Technische Universität München 
  2. 2.Ludwig-Maximilians-Universität München 
  3. 3.Uniwersytet Warszawski 

Personalised recommendations