UML Association vs. Aggregasjon vs. Komposisjon [EKSEMPEL]

Relasjoner i UML-diagrammer brukes til รฅ representere en forbindelse mellom ulike ting. En relasjon er en forbindelse mellom ting, som strukturelle, atferdsmessige eller gruppemessigeping ting i det enhetlige modelleringssprรฅket.

Fรธlgende er de forskjellige typene standardforhold i UML,

  • Association
  • Avhengighet
  • Generalisering
  • realisering

Annet enn disse tillater UML bruk av aggregering og et sammensetningsforhold.

UML foreningen

Det er et strukturelt forhold som representerer objekter som kan kobles til eller assosieres med et annet objekt inne i systemet. Fรธlgende begrensninger kan brukes pรฅ UML Association-forholdet.

  • {implisitt} โ€“ Implisitte begrensninger spesifiserer at forholdet ikke er รฅpenbart; den er basert pรฅ et konsept.
  • {bestilt} โ€“ Ordnede begrensninger spesifiserer at settet med objekter i den ene enden av en assosiasjon er pรฅ en bestemt mรฅte.
  • {changable} โ€“ Changeable constraint spesifiserer at forbindelsen mellom ulike objekter i systemet kan legges til, fjernes og endres i henhold til kravet.
  • {addOnly} โ€“ Den spesifiserer at de nye forbindelsene kan legges til fra et objekt som ligger i den andre enden av en assosiasjon.
  • {frossen} โ€“ Den spesifiserer at nรฅr en kobling settes inn mellom to objekter, kan den ikke endres mens den frosne begrensningen er aktiv pรฅ den gitte koblingen eller en forbindelse.

Vi kan ogsรฅ opprette en klasse som har UML Association-egenskaper; det kalles som en foreningsklasse.

refleksiv forening

Den refleksive assosiasjonen er en undertype av assosiasjonsforhold i UML. I en refleksiv assosiasjon kan forekomstene av samme klasse relateres til hverandre. En forekomst av en klasse sies ogsรฅ รฅ vรฆre et objekt.

Refleksiv assosiasjon sier at en kobling eller en forbindelse kan vรฆre tilstede innenfor objektene til samme klasse.

Eksempel:

La oss se pรฅ et eksempel pรฅ en klassefrukt.

Fruktklassen har to forekomster, som mango og eple. Refleksiv assosiasjon sier at en kobling mellom mango og eple kan vรฆre til stede da de er forekomster av samme klasse, for eksempel frukt.

refleksiv forening
refleksiv forening

Styret Forening

Som navnet antyder, er den rettet assosiasjonen knyttet til strรธmningsretningen innenfor foreningsklasser.

I en rettet assosiasjon er strรธmmen rettet. Assosiasjonen fra en klasse til en annen klasse flyter bare i en enkelt retning.

Det er angitt med en heltrukket linje med en pilspiss.

UML Association Eksempel:

Du kan si at det er et rettet assosiasjonsforhold mellom en server og en klient.

En server kan behandle forespรธrsler fra en klient. Denne flyten er enveis, som bare flyter fra server til klient. Derfor kan et rettet assosiasjonsforhold vรฆre tilstede i servere og klienter til et system.

Styret Forening

Styret Forening

UML-sammensetning

Det er ikke en standard UML-forhold, men den brukes fortsatt i forskjellige applikasjoner.

Sammensatt aggregering er en undertype av aggregeringsforhold med egenskaper som:

  • Det er en toveis assosiasjon mellom objektene.
  • Det er en hel/del-relasjon.
  • Hvis en kompositt slettes, slettes alle andre deler knyttet til den.

Sammensatt aggregering beskrives som en binรฆr assosiasjon dekorert med en fylt svart diamant i den samlede (hele) enden.

UML-sammensetning

Mappen kan inneholde mange filer, mens hver fil har nรธyaktig รฉn mappeforelder. Hvis en mappe slettes, fjernes ogsรฅ alle filene.

I en sammensatt aggregering kan et objekt vรฆre en del av bare รฉn kompositt om gangen.

Eksempel pรฅ UML-sammensetning:

For eksempel, i et vindussystem, hรธrer en ramme til nรธyaktig ett vindu. I en sammensatt aggregering er hele systemet ansvarlig for disponeringen av delene, noe som betyr at kompositten mรฅ hรฅndtere opprettelsen og รธdeleggelsen av delene.

UML-sammensetning

sammensetning

UML aggregasjon

En aggregering er en undertype av et assosiasjonsforhold i UML. Aggregasjon og komposisjon er begge typene assosiasjonsforhold i UML. Et aggregeringsforhold kan beskrives med enkle ord som "et objekt fra en klasse kan eie eller fรฅ tilgang til objektene til en annen klasse."

I et aggregeringsforhold forblir det avhengige objektet innenfor omfanget av et forhold selv nรฅr kildeobjektet blir รธdelagt.

UML Aggregasjonseksempel:

La oss se pรฅ et eksempel pรฅ en bil og et hjul.

En bil trenger et hjul for รฅ fungere korrekt, men et hjul trenger ikke alltid en bil. Den kan ogsรฅ brukes med sykkelen, sykkelen eller andre kjรธretรธy, men ikke en bestemt bil. Her er hjulobjektet meningsfylt ogsรฅ uten bilobjektet. En slik type relasjon kalles UML Aggregation-relasjon.

UML Aggregasjonsforhold

aggregering

Forening vs. Aggregasjon vs. Komposisjon

Association aggregering sammensetning
Tilknytningsforhold er angitt med en pil. Aggregasjonsforhold er angitt ved hjelp av en rett linje med en tom pilspiss i den ene enden. Sammensetningsforhold er angitt ved hjelp av en rett linje med en fylt pilspiss i en av endene.
Tilknytning kan eksistere mellom to eller flere klasser i UML. Aggregasjon er en del av et assosiasjonsforhold. Sammensetningen er en del av et assosiasjonsforhold.
Det kan vรฆre en-en, en-mange, mange-en, og mange-mange forening tilstede mellom foreningsklassene. Aggregasjon anses som en svak type assosiasjon. Sammensetningen anses som en sterk type assosiasjon.
I et assosiasjonsforhold kan ett eller flere objekter assosieres med hverandre. I et aggregeringsforhold kan objekter som er assosiert med hverandre forbli i omfanget av et system uten hverandre. I et komposisjonsforhold kan ikke objekter som er knyttet til hverandre forbli i omfanget uten hverandre.
Objekter er knyttet til hverandre. Koblede objekter er ikke avhengige av det andre objektet. Objekter er svรฆrt avhengige av hverandre.
I UML Association kan sletting av ett element pรฅvirke et annet assosiert element eller ikke. I UML Aggregation pรฅvirker ikke sletting av ett element et annet assosiert element. I UML Composition pรฅvirker sletting av ett element et annet assosiert element.
Eksempel:
En lรฆrer er knyttet til flere elever.
Or
en lรฆrer gir instruksjoner til elevene.
Eksempel:
En bil trenger et hjul, men det krever ikke alltid det samme hjulet. En bil kan fungere tilstrekkelig med et annet hjul ogsรฅ.
Eksempel:
En fil er plassert inne i mappen. Hvis man sletter mappen, slettes ogsรฅ filen knyttet til den gitte mappen.

Sammendrag

  • Et forhold er en sammenheng mellom ting.
  • Assosiasjon, avhengighet, generalisering og realisering er forskjellige relasjoner levert av UML.
  • Bortsett fra standardforhold, brukes sammensetning og aggregering inne i UML.
  • Aggregasjon og sammensetning er begge typene assosiasjonsforhold i UML.
  • UML-sammensetningen er et toveisforhold som ogsรฅ kalles som et binรฆrt forhold.

Sjekk vรฅr artikkel om Beste UML-verktรธy:- Klikk her

Oppsummer dette innlegget med: