t2informatik » Wissen kompakt » Assoziation

Assoziation

Eine Beziehung zwischen Classifiern der UML

Der Begriff Assoziation wird in vielen Bereichen verwendet. In der Psychologie beschreibt die Assoziation die bewusste oder unbewusste Verknüpfung von Gedanken, im Marximus eine Vereinigung von Arbeitern und in der Chemie eine Zusammenlagerung mehrerer Moleküle zu größeren Verbänden. In der Unified Modeling Language (UML) als grafische Modellierungssprache der Software- und Systementwicklung beschreibt eine Assoziation eine Beziehung zwischen Classifiern.

Meistens werden mit Assoziationen in der UML Beziehungen zwischen zwei Klassen, zwei Schnittstellen oder auch zwei Anwendungsfällen ausgedrückt. Eine Assoziation mit mehr als zwei Modellelementen wird als n-äre Assoziation bezeichnet und tritt in der Praxis der Modellierung von Software oder Systemen selten auf. Eine Assoziation, die auf dasselbe Modellelement verweist, ist reflexiv.

Grafisch wird eine Assoziation, die auf konkreter Instanzebene als Link bezeichnet wird, mit einer Linie zwischen beiden Modellelementen dargestellt. Handelt es sich um eine n-äre Assoziation, erfolgt die Visualisierung per Raute und anliegenden Linien. Auch die Enden einer Assoziation sind eigenständige Modellelemente; sie werden mit dem Modellelement Property (Eigenschaft) modelliert und können einen Namen, eine Multiplizität, eine Sichtbarkeit und eine Navigierbarkeit ausweisen. Grundsätzlich gibt es drei Arten der Navigierbarkeit:

  • Die erlaubte Navigation von einem Modellelement zum anderen; visualisiert mit einem Pfeil am Assoziationsende.
  • Die nicht erlaubte Navigation von einem Modellelement zum anderen, visualisiert mit einem kleinen x am Assoziationsende.
  • Keine spezifische Aussage.

Assoziationen lassen sich auch in unidirektional bzw. bidirektional einordnen: Eine Assoziation, die nur eine Richtung erlaubt, ist unidirektional, eine zweiseitige Navigation entsprechend bidirektional. Mit der Aggregation und der Komposition gibt es zwei Spezialfälle der Assoziation.

“Das Fachwissen zu Softwarearchitekturen, die Expertise in der Softwareentwicklung und die sehr flexible Arbeitsweise waren ideal für uns.“

„Ihren Blog lese ich schon lange und mit großer Freude. Systematisch, auf den Punkt und ansprechend.“

Share This