Multiplisitet (informatikk)

assosiasjonsrelasjon i Unified Modeling Language som indikerer at relaterte klasser refererer til hverandre

Multiplisitet brukes innenfor informasjonsmodellering for angivelse av nedre og øvre mulige antall forekomster ved instansiering av et dokument[klargjør] fra en modell[klargjør].

Oversikt rediger

Multiplisitet er en assosiasjonsrelasjon som indikerer at (minst) en av de to relaterte klassene refererer til den andre. Denne relasjonen beskrives vanligvis som "A har en B" (en kattemor har kattunger, kattunger har en kattemor).

UML-representasjonen til en assosiasjon er en linje som forbinder de to assosierte klassene. I hver ende av linjen er det en valgfri notasjon. For eksempel:

  • Synlighet: Man kan indikere ved hjelp av en pilspiss at den spisse enden er synlig fra pilhalen
  • Eierskap: Man kan indikere eierskap ved plassering av en ball
  • Rolle: Rollen til elementene i en ende kan indikeres ved å angi et navn for rollen
  • Multiplisitet: Multiplisiten av instanser av den entiteten (verdimengden av antallet objekter som deltar i assosiasjonen fra den andre endens perspektiv).

Notasjon rediger

0 Ingen instanser (sjeldent)
0..1 Ingen eller en instans
1 Eksakt en instans
1..1 Eksakt en instans
0..* Null eller flere instanser
* Null eller flere instanser
1..* En eller flere instanser

Eksempel rediger

For eksempel kan man ved Unified Modeling Language si at

Person.barn: Person [0..*]

, hvor «barn» er et attributt i klassen «Person» med attributtype som peker tilbake på egen klasse. Nedre multiplisitet er «0» og øvre multiplisitet «ubegrenset». Altså, en person kan ha barn og det er ingen begrensning på antallet.

Se også rediger