Im Bereich der Softwaregestaltung und -modellierung dient die Unified Modeling Language (UML) als ein leistungsfähiges Werkzeug zur Visualisierung und Dokumentation der Struktur und des Verhaltens von Systemen. Ein zentraler Begriff innerhalb der UML istMultiplicität, die die Beschränkungen für die Anzahl der Objekte definiert, die an einer Assoziation teilnehmen können. Dieser Artikel geht auf das Konzept der Multiplicität, ihre Bedeutung und ihre Anwendung in UML-Diagrammen ein.
Was ist Multiplicität?
Multiplicität in UML ist eine Beschränkung, die die Anzahl der Objekte angibt, die an einem Ende einer Assoziation teilnehmen dürfen. Sie beantwortet Fragen wie „Wie viele Autos kann eine Person besitzen?“ oder „Wie viele Personen können ein bestimmtes Auto fahren?“ Durch die Definition der Multiplicität legen Sie die Regeln fest, nach denen Objekte in jeder Klasse miteinander verbunden sein dürfen, und erhalten so eine klare und präzise Möglichkeit, diese Beziehungen auszudrücken.
Ausdrücken der Multiplicität
Die Multiplicität wird typischerweise als Bereich ausgedrückt, der die minimale und maximale Anzahl der zulässigen Objekte in einer Assoziation definiert. Die Form der Darstellung der Multiplicität lautet:
- Genauere Zahl: Eine einzelne Zahl, die die genaue Anzahl der Objekte angibt.
- Bereich: Ein Paar von Zahlen, getrennt durch zwei Punkte (..), das die minimale und maximale Anzahl angibt.
- Asterisk (*): Zeigt eine unbegrenzte Anzahl von Objekten an.
Zum Beispiel:
1: Genau ein Objekt.0..1: Kein oder ein Objekt.1..*: Mindestens ein Objekt, ohne Obergrenze.*: Beliebig viele Objekte, einschließlich null.

Anwendung der Multiplicität in Assoziationen
Beim Modellieren von Assoziationen zwischen Klassen wird der Multiplicität jeder Endpunkt der Assoziation zugewiesen. Betrachten wir beispielsweise die Assoziation zwischen einerPersonKlasse und einerCarKlasse:
- Frage 1: Wie viele Autos darf eine Person besitzen?
- Frage 2: Wie viele Personen können ein bestimmtes Auto fahren?
Die Antworten auf diese Fragen werden neben den jeweiligen Klassen in der Assoziation platziert. Wenn eine Person null bis viele Autos besitzen kann, wäre die Vielzahl neben derAutoKlasse0..*. Umgekehrt, wenn ein Auto von einer bis mehreren Personen gefahren werden kann, wäre die Vielzahl neben derPersonKlasse1..*.
Beispiel: Versand und Produkt
Um dies zu veranschaulichen, betrachten Sie eine Situation, bei der einVersandmindestens einProduktenthalten muss, aber so viele Produkte enthalten kann, wie benötigt werden. Die Vielzahl für dasProduktEnde der Assoziation wäre1..*, was bedeutet, dass ein Versand mindestens ein Produkt enthalten muss, aber mehrere enthalten kann.
Notation und Symbole
In UML-Diagrammen wird die Vielzahl mit spezifischen Notationen gekennzeichnet:
- Asterisk (*): Stellt eine unbegrenzte Anzahl von Objekten dar.
- Bereich (
min..max): Gibt die minimale und maximale Anzahl von Objekten an. - Genauere Anzahl: Gibt eine genaue Anzahl von Objekten an.
Diese Notationen helfen dabei, die Einschränkungen und Regeln, die die Beziehungen zwischen Klassen regeln, eindeutig zu definieren.
Beispiel 1: Person und Auto
In diesem Beispiel kann eine Person null bis mehrere Autos, und ein Auto kann von einer bis mehreren Personen.

Beispiel 2: Versand und Produkt
In diesem Beispiel kann eine Versand mindestens ein Produkt aber kann so viele Produkte enthalten, wie benötigt werden.

Beispiel 3: Bibliothek und Buch
In diesem Beispiel kann eine Bibliothek viele Bücher, und ein Buch kann in einer Bibliothek.

Beispiel 4: Lehrer und Schüler
In diesem Beispiel kann ein Lehrer viele Schüler, und ein Schüler kann von einem Lehrer.

Beispiel 5: Bestellung und Artikel
In diesem Beispiel kann eine Bestellung ein oder mehrere Artikel, und ein Artikel kann Teil von null oder mehr Bestellungen.

Beispiel 6: Unternehmen und Mitarbeiter
In diesem Beispiel kann ein Unternehmen viele Mitarbeiter, und ein Mitarbeiter arbeitet für ein Unternehmen.

Diese Beispiele veranschaulichen, wie die Vielfachheit verwendet wird, um die Anzahl der Objekte zu definieren, die an einer Assoziation beteiligt sind, und bieten eine klare und präzise Möglichkeit, Beziehungen zwischenKlassen in UML Diagrammen.
Fazit
Die Vielfachheit ist ein grundlegender Begriff in UML, der eine strukturierte Möglichkeit bietet, die Anzahl der Objekte zu definieren, die an einer Assoziation beteiligt sind. Durch die Angabe der Vielfachheit können Designer sicherstellen, dass die Beziehungen zwischen Klassen klar definiert und verstanden werden, was zu robusteren und wartbaren Systemdesigns führt. Unabhängig davon, ob Sie einfache Assoziationen oder komplexe Beziehungen modellieren, ist das Verständnis und die Anwendung der Vielfachheit für eine effektive UML-Modellierung unerlässlich.
Ressourcen
- Erstellen eines Entitäts-Beziehungs-Diagramms in Visual Paradigm
- Visual Paradigm. (o. J.). Erstellen eines Entitäts-Beziehungs-Diagramms in Visual Paradigm 4.
- Entitäts-Beziehungs-Diagramm – Vielfachheiten
- Stack Overflow. (o. J.). Entitäts-Beziehungs-Diagramm – Vielfachheiten 5.
- Entitäts-Beziehungs-Diagramme
- GitHub. (o. J.). Entitäts-Beziehungs-Diagramme 6.
- Geben Sie die Vielfachheit an einer UML-Form an
- Microsoft Support. (o. J.). Geben Sie die Vielfachheit an einer UML-Form an 7.
- Was ist ein Entitäts-Beziehungs-Diagramm (ERD)?
- Visual Paradigm. (o. J.). Was ist ein Entitäts-Beziehungs-Diagramm (ERD)? 8.
- Visual Paradigm ER-Diagramm, das Tabellen hinzufügt
- Stack Overflow. (o. J.). Visual Paradigm ER-Diagramm, das Tabellen hinzufügt 9.
- Wie fügt man eine Vielzahl zu einem Klassendiagramm in Visual Paradigm hinzu?
- TheNewsIndependent. (2020, 29. Dezember). Wie fügt man eine Vielzahl zu einem Klassendiagramm in Visual Paradigm hinzu? 10.
- Leitfaden für Anfänger zu Entität-Beziehung (ER)-Diagrammen
- Visual Paradigm Blog. (2023, 21. September). Leitfaden für Anfänger zu Entität-Beziehung (ER)-Diagrammen 11.
- Vielfalt im Vergleich zur Kardinalität
- Stack Overflow. (o. J.). Vielfalt im Vergleich zur Kardinalität 12.