UML Association vs. Aggregaatio vs. Sävellys [EXAMPLE]

UML-kaavion suhteita käytetään edustamaan eri asioiden välistä yhteyttä. Suhde on yhteys asioiden, kuten rakenteellisten, käyttäytymis- tai ryhmittelyasioiden välillä yhtenäisellä mallinnuskielellä.

Seuraavassa on erityyppiset UML:n vakiosuhteet,

  • Yhdistys
  • riippuvuus
  • Yleistys
  • oivallus

Muut kuin nämä, UML sallii aggregoinnin ja koostumussuhteen käytön.

UML-yhdistys

Se on rakenteellinen suhde, joka edustaa objekteja, jotka voidaan yhdistää tai yhdistää toiseen objektiin järjestelmän sisällä. Seuraavia rajoituksia voidaan soveltaa UML-assosiaatiosuhteeseen.

  • {implisiittinen} – Implisiittiset rajoitukset määrittävät, että suhde ei ole ilmeinen; se perustuu konseptiin.
  • {tilattu} – Järjestetyt rajoitukset määrittävät, että yhdistelmän toisessa päässä olevat objektit ovat tietyllä tavalla.
  • {vaihdettava} – Muutettavissa oleva rajoitus määrittää, että järjestelmän eri objektien välistä yhteyttä voidaan lisätä, poistaa ja muokata tarpeen mukaan.
  • {addOnly} – Se määrittää, että uudet yhteydet voidaan lisätä objektista, joka sijaitsee assosioinnin toisessa päässä.
  • {jäätynyt} – Se määrittää, että kun linkki lisätään kahden objektin väliin, sitä ei voi muokata, kun jäädytetty rajoitus on aktiivinen tietyssä linkissä tai yhteydessä.

Voimme myös luoda luokan, jolla on UML Associationin ominaisuuksia; sitä kutsutaan assosiaatioluokiksi.

Refleksiivinen yhdistys

Refleksiivinen assosiaatio on assosiaatiosuhteen alatyyppi UML. Refleksiivisessä assosiaatiossa saman luokan esiintymät voivat olla yhteydessä toisiinsa. Luokan esiintymän sanotaan myös olevan objekti.

Refleksiivinen assosiaatio tarkoittaa, että linkki tai yhteys voi olla läsnä saman luokan objekteissa.

esimerkki:

Tarkastellaanpa esimerkkiä luokan hedelmästä.

Hedelmäluokalla on kaksi esiintymää, kuten mango ja omena. Refleksiivinen assosiaatio väittää, että mangon ja omenan välillä voi olla yhteys, koska ne ovat saman luokan esimerkkejä, kuten hedelmät.

Refleksiivinen yhdistys
Refleksiivinen yhdistys

Ohjattu yhdistys

Kuten nimestä voi päätellä, suunnattu assosiaatio liittyy virtauksen suuntaan assosiaatioluokkien sisällä.

Suunnatussa yhdistyksessä virtaus on suunnattu. Yhteys luokasta toiseen virtaa vain yhteen suuntaan.

Se on merkitty kiinteällä viivalla nuolenpäällä.

UML-assosiaatioesimerkki:

Voit sanoa, että palvelimen ja asiakkaan välillä on suunnattu assosiaatiosuhde.

Palvelin voi käsitellä asiakkaan pyynnöt. Tämä virtaus on yksisuuntainen, joka kulkee vain palvelimelta asiakkaalle. Tästä syystä suunnattu assosiaatiosuhde voi olla olemassa järjestelmän palvelimissa ja asiakkaissa.

Ohjattu yhdistys

Ohjattu yhdistys

UML:n kokoonpano

Se ei ole standardi UML-suhde, mutta sitä käytetään edelleen useissa sovelluksissa.

Yhdistelmäaggregaatio on aggregointisuhteen alatyyppi, jolla on seuraavat ominaisuudet:

  • Se on kaksisuuntainen assosiaatio objektien välillä.
  • Se on koko/osa-suhde.
  • Jos yhdistelmä poistetaan, kaikki muut siihen liittyvät osat poistetaan.

Yhdistelmäaggregaatiota kuvataan binääriassosiaatioksi, joka on koristeltu täytetyllä mustalla timantilla aggregaatin (koko) päässä.

UML:n kokoonpano

Kansio voi sisältää useita tiedostoja, kun taas jokaisella tiedostolla on täsmälleen yksi Kansio. Jos kansio poistetaan, myös kaikki sen sisältämät tiedostot poistetaan.

Yhdistelmäaggregoinnissa objekti voi olla osa vain yhtä yhdistelmää kerrallaan.

Esimerkki UML-koostumuksesta:

Esimerkiksi ikkunajärjestelmässä kehys kuuluu täsmälleen yhteen ikkunaan. Yhdistelmäaggregoinnissa koko järjestelmä on vastuussa osien sijoittelusta, mikä tarkoittaa, että yhdistelmän tulee hallita osien luomista ja tuhoamista.

UML:n kokoonpano

Koostumus

UML-aggregointi

Aggregaatio on UML:n assosiaatiosuhteen alatyyppi. Aggregointi ja koostumus ovat molemmat UML:n assosiaatiosuhteen tyyppejä. Aggregaatiosuhdetta voidaan kuvata yksinkertaisin sanoin: "Yhden luokan objekti voi omistaa tai käyttää toisen luokan objekteja."

Aggregointisuhteessa riippuvainen objekti pysyy suhteen piirissä, vaikka lähdeobjekti tuhoutuu.

Esimerkki UML-aggregaatiosta:

Tarkastellaanpa esimerkkiä autosta ja pyörästä.

Auto tarvitsee pyörän toimiakseen kunnolla, mutta pyörä ei aina tarvitse autoa. Sitä voidaan käyttää myös pyörän, polkupyörän tai minkä tahansa muun ajoneuvon kanssa, mutta ei tietyn auton kanssa. Tässä pyöräobjekti on merkityksellinen myös ilman autoa. Tällaista suhdetta kutsutaan UML-aggregaatiorelaatioksi.

UML-aggregointisuhde

aggregaatti

Yhdistys Vs. Aggregaatio vs. Sävellys

Yhdistys aggregaatti Koostumus
Assosiaatiosuhde on merkitty nuolella. Aggregaatiosuhde merkitään suoralla viivalla, jonka toisessa päässä on tyhjä nuolenpää. Koostumussuhde merkitään suoralla viivalla, jossa on täytetty nuolenpää missä tahansa päässä.
UML:ssa voi olla assosiaatio kahden tai useamman luokan välillä. Aggregaatio on osa yhdistyssuhdetta. Sävellys on osa assosiaatiosuhdetta.
Yhdistysluokkien välillä voi olla yksi-yksi, yksi-mone, monta-yksi ja monta-moni-assosiaatio. Aggregaatiota pidetään heikkona assosiaatiotyyppinä. Koostumusta pidetään vahvana assosiaatiotyyppinä.
Assosiaatiosuhteessa yksi tai useampi objekti voidaan yhdistää toisiinsa. Aggregaatiosuhteessa toisiinsa liittyvät objektit voivat jäädä järjestelmän piiriin ilman toisiaan. Koostumussuhteessa toisiinsa liittyvät objektit eivät voi jäädä soveltamisalaan ilman toisiaan.
Objektit ovat yhteydessä toisiinsa. Linkitetyt objektit eivät ole riippuvaisia ​​toisesta objektista. Kohteet ovat hyvin riippuvaisia ​​toisistaan.
UML-assosiaatiossa yhden elementin poistaminen voi vaikuttaa toiseen liittyvään elementtiin tai ei. UML-aggregaatiossa yhden elementin poistaminen ei vaikuta toiseen liittyvään elementtiin. UML-kokoonpanossa yhden elementin poistaminen vaikuttaa toiseen liittyvään elementtiin.
Esimerkiksi:
Opettaja liittyy useisiin oppilaisiin.
Or
opettaja antaa ohjeita oppilaille.
Esimerkiksi:
Auto tarvitsee pyörän, mutta se ei aina vaadi samaa pyörää. Auto voi toimia kunnolla myös toisella pyörällä.
Esimerkiksi:
Kansion sisään asetetaan tiedosto. Jos kansio poistetaan, myös kyseiseen kansioon liittyvä tiedosto poistetaan.

Yhteenveto

  • Suhde on yhteys asioiden välillä.
  • Assosiaatio, riippuvuus, yleistäminen ja toteutuminen ovat erilaisia UML:n tarjoamat suhteet.
  • Standardisuhteiden lisäksi UML:n sisällä käytetään koostumusta ja aggregointia.
  • Aggregaatio ja koostumus ovat molemmat UML:n assosiaatiosuhteen tyyppejä.
  • UML-koostumus on kaksisuuntainen suhde, jota kutsutaan myös binäärisuhteeksi.

Katso artikkelimme parhaista UML-työkaluista: - Klikkaa tästä

Tiivistä tämä viesti seuraavasti: