it-swarm.com.de

Multiplizität gegen Kardinalität

In Bezug auf Datenmodelle und Datenbanken wird der Begriff Kardinalität häufig verwendet, um die Anzahl der zulässigen Elemente in einer bestimmten Menge zu beschreiben. 

UML bezieht sich oft auf dieselbe Eigenschaft wie Multiplicity .

Gibt es Unterschiede zwischen diesen beiden Begriffen oder auch?

24
Sam Shiles

Die einfachste Erklärung wäre zu sagen:

Multiplizität = Kardinalität + Teilnahme 

Kardinalität: Gibt die maximale Anzahl möglicher Beziehungen an Vorkommen, an denen eine bestimmte Entität teilnehmen kann (in einfachen Worten: höchstens).

Partizipation: Gibt an, ob alle oder nur einige Entitätenvorkommen an einer Beziehung beteiligt sind (in einfachen Worten: mindestens).

Ex:  enter image description here

6
Suleka_28

Martin Fowler hat auf seiner Website über dieses Thema gesprochen. Zitieren:

Wenn Datenmodellierungsmethoden über Beziehungen sprechen, verwenden sie den Begriff Kardinalität, um anzugeben, wie viele Entitäten miteinander verknüpft werden können. So Sie haben möglicherweise eine Beziehung zwischen Bestellung und Kunde und sagen das Die Kardinalität der Beziehung ist Eins-zu-Viele. Oder Sie hören vielleicht. dass die Kardinalität der Kunden für eine Bestellung 0-zu-viele ist.

UML vermeidet den Begriff Kardinalität und zieht die Verwendung von Multiplizität vor. Häufig Menschen mit Datenmodellierungshintergrund sind seit dem .__ überrascht. Kardinalität wurde in Kreisen zur Datenmodellierung so häufig verwendet.

Der Grund für die Änderung ist, dass die Wörterbuchdefinition von Kardinalität ist "die Anzahl der Elemente in einer bestimmten Menge oder einer anderen Gruppierung" (OED). Demnach ist die Datenmodellierungsnutzung tatsächlich falsch. Im hervorragenden UML-Referenzhandbuch definiert Rumbaugh Multiplizität als "Eine Angabe des Bereichs der zulässigen Kardinalität Werte - die Größe -, die ein Satz annehmen kann". Die UML verwendet Multiplizität an verschiedenen Stellen für eine Eigenschaft (Assoziation oder Attribut) und auch um die Vielzahl der Teile in einer Verbundstruktur darzustellen. Es ist formal als Unter- und Obergrenze definiert. Eine Assoziation (die UML Entspricht einer Beziehung in Datenmodellierungskreisen) hat ein Vielzahl für jede Richtung.

Quelle

17
LMeyer

Einfach ausgedrückt: a Multiplizität setzt sich aus einer unteren und einer oberen Kardinalität zusammen. Eine Kardinalität ist die Anzahl der Elemente in einem Satz. Daher gibt eine Multiplizität die Mindest- und Höchstzahl der Mitglieder des Satzes an. Sie sind auch nicht.

16
Jim L.

Vielen Dank für die Frage und die Antworten. 

Wirklich verwirrt mit diesen Begriffen heute Morgen (Kaffee hat nicht geholfen). 

Angenommen das Beispiel unten:

0-1 ---------- 1- *

Multiplizitäten:

Erste Multiplizität, für die linke Entität: 0-1 

Zweite Multiplizität für die rechte Entität: 1- *

Kardinalitäten für die erste Multiplizität:

Untere Kardinalität: 0

Obere Kardinalität: 1

Kardinalitäten für die Sekunde-Multiplizität:

Untere Kardinalität: 1

Obere Kardinalität: *

1
andrew

Die Multiplizität ist die Einschränkung der Sammlung der Assoziationsobjekte, während die Kardinalität die Anzahl der Objekte ist, die sich in der Sammlung befinden.

Die Multiplizität ist tatsächlich die Einschränkung der Kardinalität.

0
JATIN AHUJA