Hva er et UML-komponentdiagram? Notasjoner, eksempel

⚡ Smart oppsummering

UML-komponentdiagrammet i OOAD modellerer et stort system ved å dele det opp i mindre, håndterbare delsystemer og vise hvordan utskiftbare komponenter kobles til via grensesnitt. Denne ressursen forklarer komponentnotasjon, porter, delsystemer, tegnetrinn og et utarbeidet eksempel.

  • 🧩 Kjerneide: Et komponentdiagram deler et stort system inn i mindre, utskiftbare og kjørbare delsystemer.
  • ⬛ komponent: Hver komponent er en svart boks hvis oppførsel er definert av de medfølgende og nødvendige grensesnittene.
  • 🔌 grensesnitt: Medfølgende og nødvendige grensesnitt kobles til via en monteringskontakt for å koble komponenter sammen.
  • 🚪 porter: En port er et interaksjonspunkt som grupperer en komponents leverte og nødvendige grensesnitt.
  • 🛠️ Bruk: Komponentdiagrammer modellerer struktur ved kjøretid og støtter systemtesting og organisering av delsystemer.

Hva er et UML-komponentdiagram

Hva er komponentdiagram i UML?

UML-komponentdiagrammer brukes til å modellere store systemer til mindre delsystemer som enkelt kan administreres. UML-komponentdiagrammer brukes til å representere ulike komponenter i et system. Ved modellering av store objektorienterte systemer er det nødvendig å bryte ned systemet i håndterbare delsystemer.

En komponent er en utskiftbar og kjørbar del av et system hvis implementeringsdetaljer er skjult. En komponent gir settet med grensesnitt som en komponent realiserer eller implementerer. Komponenter krever også grensesnitt for å utføre en funksjon.

Komponentdiagramnotasjoner

Følgende er UML-komponentdiagramnotasjonene:

Komponent

Komponentnotasjon i komponentdiagram
Komponentnotasjon i komponentdiagram

Node

Nodenotasjon i komponentdiagram

Nodenotasjon i komponentdiagram

Hva er komponent i OOAD?

En komponent er en utskiftbar og kjørbar del av et system hvis implementeringsdetaljer er skjult. En komponent gir settet med grensesnitt som en komponent realiserer eller implementerer. Komponenter krever også grensesnitt for å utføre en funksjon.

Det er en modulær del av et system som innkapsler innholdet. De er de logiske elementene i et system som spiller en viktig rolle under utførelsen av et system.

En komponent ligner på en svart boks hvis ytre oppførsel er definert av et gitt grensesnitt og nødvendige grensesnitt.

Strukturen til en UML-komponent

En komponent er representert med klassifiserer rektangel stereotyper som:

<< komponent >>: Komponentdetaljer er skjult for omverdenen. Navnet på en komponent er plassert i midten av et rektangel. Et komponentikon vises i øvre høyre hjørne av et rektangel, som er valgfritt.

En komponent i UML er representert som følger:

Strukturen til en UML-komponent

Strukturen til en UML-komponent

Grensesnitt i komponentdiagram

Grensesnittet er et navngitt sett med offentlige funksjoner. Den skiller spesifikasjonen av funksjonalitet fra implementeringen med en klasseskjema eller et delsystem. Et grensesnittsymbol kan ikke instansieres. Det erklærer en ulempetract som kan realiseres av null eller flere klassifikatorer, for eksempel en klasse eller et delsystem.

Alt som realiserer et grensesnitt aksepterer funksjonaliteten til grensesnittet og samtykker i å overholde betingelsene.tract definert av grensesnittet.

Hvis implementeringsspråket ikke støtter grensesnitt, bruk abstract-klasser, grensesnitt navngis akkurat som klasser, i UpperCamelCase.

Det er to typer grensesnitt i komponentdiagrammet:

  1. Levert grensesnitt
  2. Nødvendige grensesnitt

Vi kan koble til medfølgende og nødvendige grensesnitt ved hjelp av monteringskontakt.

Fordeler

  • Det øker fleksibiliteten og utvidbarheten til en klasse.
  • Det reduserer implementeringsavhengighetene.

Ulemper

  • Ekstra fleksibilitet fører til komplekse klasser.
  • For mange grensesnitt gjør systemer vanskelige å forstå.

Komponentdiagram undersystemer

Det er en komponentbase som fungerer som en dekomponeringsenhet for større systemer. Det er en logisk konstruksjon som brukes til å bryte ned et omfattende system til mindre systemer som er kjent som undersystemer. Denne prosessen gjør det enkelt å administrere hvert delsystem effektivt.

Et delsystem kan ikke instansieres under kjøring, men innholdet kan initialiseres. Når delsystemer er koblet sammen, skaper det et enkelt system.

Port i komponentdiagram

En port er et interaksjonspunkt mellom en klassifikator og et eksternt miljø. Den grupperer semantisk sammenhengende sett med gitte og nødvendige grensesnitt. En port kan brukes i UML uten å spesifisere navnet på porten. En port kan ha synlighet. Når en port er trukket over grensen til en klassifikator, betyr det at porten er offentlig. Det betyr også at alle grensesnittene som brukes gjøres som offentlige.

Når en port tegnes inne i klassifisereren, er den enten beskyttet eller privat.

En port har også multiplisitet som indikerer antall forekomster av portklassifisereren vil ha. En port i UML-diagram er angitt som gitt nedenfor:

Portnotasjon i komponentdiagram

Portnotasjon i komponentdiagram

Her er port1 trukket over grensen, noe som betyr at den har synlighet som offentlig.

Hvordan tegne komponentdiagram

Slik kan du tegne et UML-komponentdiagram:

Trinn 1) En komponent er ikke annet enn en kjørbar del av et system. Ulike komponenter utgjør sammen et enkelt system. Komponentdiagrammer brukes mye under utførelsesfasen av ethvert system.

Trinn 2) Før man modellerer komponentdiagrammet, må man kjenne til alle komponentene i systemet. Virkningen av hver komponent bør nevnes. Komponentdiagrammer brukes til å analysere utførelsen av et system.

Trinn 3) Man bør også utforske hver komponent i dybden for å forstå sammenhengen mellom en komponent og andre fysiske artefakter i systemet.

Trinn 4) Forholdet mellom ulike artefakter, biblioteker og filer er de essensielle tingene som kreves under modellering av et komponentdiagram.

Eksempel på UML-komponentdiagram

Nedenfor er et eksempel på UML-komponentdiagram:

Eksempel på UML-komponentdiagram

Eksempel på UML-komponentdiagram

Hvorfor bruke komponentdiagram?

UML-komponentdiagrammer har betydelig betydning. Komponentdiagram skiller seg fra andre diagrammer. Mens andre diagrammer brukes til å representere systemet, fungerer et system eller arkitekturen til et system. Komponentdiagrammer brukes til å beskrive virkemåten og oppførselen til ulike komponenter i et system.

Det representerer hvordan hver komponent fungerer under kjøringen av et system.

Dette er de statiske diagrammene for det enhetlige modelleringsspråket. Et komponentdiagram brukes til å representere strukturen og organiseringen av komponenter under ethvert tidsrom.

Komponentdiagrammer brukes for modellering av delsystemene. Disse delsystemene representerer samlet hele arbeidsbildet til ethvert system. En enkelt komponent kan ikke visualisere hele systemet, men samlingen av flere komponenter kan.

Så, komponentdiagrammer brukes til:

  • For å representere komponentene i ethvert system under kjøring.
  • Det hjelper under testing av et system.
  • Den visualiserer sammenhengen mellom ulike komponenter.

Når skal man bruke komponentdiagram?

Komponentdiagrammer er forskjellige fra alle andre diagrammer i UML. Komponentdiagrammer brukes til å vise ulike komponenter i et programvaresystem så vel som undersystemer til et enkelt system. De brukes til å representere fysiske ting eller komponenter i et system. Den visualiserer generelt strukturen og organiseringen av et system.

Den beskriver hvordan ulike komponenter sammen utgjør et enkelt, fullt funksjonelt system. Vi kan vise hver komponent individuelt eller samlet som en enkelt enhet.

  1. Komponentdiagrammer brukes til å modellere komponentorganiseringen til et system.
  2. De brukes til å dele et enkelt system i forskjellige undersystemer i henhold til funksjonaliteten.

Spørsmål og svar

Et komponentdiagram viser programvarekomponentene og deres grensesnitt. Et distribusjonsdiagram viser de fysiske maskinvarenodene og hvor komponenter kjører på dem. Komponentdiagrammer modellerer programvarestruktur; distribusjonsdiagrammer modellerer kjøretidsmaskinvaremiljøet.

En monteringskontakt kobler et nødvendig grensesnitt for én komponent til det gitte grensesnittet for en annen. Den viser at én komponent leverer en tjeneste den andre trenger, ved å koble komponenter sammen til et fungerende system.

Kulesymbolet (lollipop) representerer et gitt grensesnitt en komponent tilbyr, og sokkelen (halvsirkelen) representerer et nødvendig grensesnitt den trenger. Når kulen settes inn i sokkelen, viser det at én komponent leverer det en annen trenger.

AI-verktøy kan lese en systembeskrivelse eller modulliste og foreslå et komponentdiagram med komponenter, grensesnitt og kontakter. Dette hjelper arkitekter med å utarbeide struktur raskere, selv om grensene og avhengighetene fortsatt trenger ekspertvurdering.

Ja. Reverse-ingeniør- og AI-verktøy kan skanne en kodebase, gruppere filer i komponenter og kartlegge grensesnittene og avhengighetene deres i et utkast til komponentdiagram. RevSe resultatet, fordi AI kan bomme på tiltenkte arkitektoniske grenser.

Oppsummer dette innlegget med: