Engineering Associations: From Models to Code and Back through Semantics

  • Zinovy Diskin
  • Steve Easterbrook
  • Juergen Dingel
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 11)


Association between classes is a central construct in OO modeling. However, precise semantics of associations has not been defined, and only the most basic types are implemented in modern forward and reverse engineering tools. In this paper, we present a novel mathematical framework and build a precise semantics for several association constructs, whose implementation has been considered problematic. We also identify a number of patterns for using associations in practical applications, which cannot be modeled (reverse engineered) in UML.


Class Diagram Formal Semantic Formal Diagram Precise Semantic Class Person 
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.
    Akehurst, D., Howells, G., Mcdonald-Maier, K.: Implementing associations: UML 2.0 to Java 5. Software and Systems Modeling 6, 3–35 (2007)CrossRefGoogle Scholar
  2. 2.
    Barbier, F., Henderson-Sellers, B., Le Parc, A., Bruel, J.: Formalization of the whole-part relationship in UML. IEEE Trans. Software Eng. 29(5), 459–470 (2003)CrossRefGoogle Scholar
  3. 3.
    Barr, M., Wells, C.: Category theory for computing science. PrenticeHall (1995)Google Scholar
  4. 4.
    Bracha, G.: Generics in Java programming language. Sun (2004),
  5. 5.
    Diskin, Z., Dingel, J.: Mappings, maps and tables: Towards formal semantics for associations in UML2. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Diskin, Z., Dingel, J.: Mappings, maps, atlases and tables: A formal semantics for associations in UML2. Technical Report CSRG-566, University of Toronto (2007),
  7. 7.
    Diskin, Z., Kadish, B.: Variable set semantics for keyed generalized sketches: Formal semantics for object identity and abstract syntax for conceptual modeling. Data & Knowledge Engineering 47, 1–59 (2003)CrossRefGoogle Scholar
  8. 8.
    Diskin, Z., Kadish, B., Piessens, F., Johnson, M.: Universal arrow foundations for visual modeling. In: Anderson, M., Cheng, P., Haarslev, V. (eds.) Diagrams 2000. LNCS (LNAI), vol. 1889. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  9. 9.
    Diskin, Z., Wolter, U.: A diagrammatic logic for object-oriented visual modeling. ENTCS (to appear, 2008)Google Scholar
  10. 10.
    Erickson, J., Siau, K.: Theoretical and practical complexity of modeling methods. Communications of the ACM 50, 46–51 (2007)CrossRefGoogle Scholar
  11. 11.
    France, R.: A problem-orineted analysis of basic UML static modeling concepts. In: ACM/SIGPLAN Conf. on Object-Oriented Programming, Systems, Languages, and Applications, ACM Press (1999)Google Scholar
  12. 12.
    Génova, G., Llorens, J., Fuentes, J.: UML associations: A structural and contextual view. J. of Object Technology 3(7) (2004)Google Scholar
  13. 13.
    Graf, S., Haugen, Ø., Ober, I., Selic, B.: Specification and validation of real time systems in UML. J.on Software Tools for Technology Transfer 8(2) (2006)Google Scholar
  14. 14.
    Guéhéneuc, Y., Albin-Amiot, H.: Recovering binary class relationships: Putting icing on the UML cake. In: ACM/SIGPLAN Conf.on Object-Oriented Programming, Systems, Languages, and Applications, ACM Press (2004)Google Scholar
  15. 15.
    Hull, R., King, R.: Semantic database modeling: Survey, applications and research issues. ACM Computing Surveys 19(3), 201–260 (1987)CrossRefGoogle Scholar
  16. 16.
    Jackson, D., Waingold, A.: Lightweight extraction of object models from bytecode. IEEE Trans. Software Eng. 27(2), 156–169 (2001)CrossRefGoogle Scholar
  17. 17.
    Milicev, D.: On the semantics of associations and association ends in uml. IEEE Trans. Software Eng. 33(4), 238–251 (2007)CrossRefGoogle Scholar
  18. 18.
    OMG, E-Conference on UML2 Superstructure. Issue #5977 (2003),
  19. 19.
    OMG, Unified Modeling Language: Superstructure. Version 2.1.1 Formal/2007-02-03 (2007),
  20. 20.
    Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W.: Object-oriented modeling and design. Prentice-Hall (1991)Google Scholar
  21. 21.
    Selic, B.: Model-driven development: Its essence and opportunities. In: 9th IEEE Int. Symposium on Object-Oriented Real-Time Distributed Computing (2006)Google Scholar
  22. 22.
    Stevens, P.: On the interpretation of binary associations in the unified modeling language. Software and Systems Modeling 1(1) (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Zinovy Diskin
    • 1
  • Steve Easterbrook
    • 1
  • Juergen Dingel
    • 2
  1. 1.University of TorontoCanada
  2. 2.Queen’s UniversityKingstonCanada

Personalised recommendations