Symboly diagramu komponent
Každá značka, kterou může UML diagram komponent nést, a k čemu vás zavazuje: ikona zástrčky, lízátko a objímka, konektory sestavy a delegování, porty a čtyři stereotypy, které stojí za napsání.
7 min čteníUML 2.5.120 z 35
Krátká odpověď
- Lízátko je poskytované rozhraní a šipka realizace na box rozhraní říká totéž. Na jednom diagramu používejte jednu formu, nikdy obě.
- Realizace vede od implementace ke smlouvě, závislost s otevřeným hrotem opačně. Tatáž přerušovaná čára, opačné tvrzení.
- UML 1 nahradilo box obdélníkem se dvěma jazýčky. UML 2 ponechává box klasifikátoru a tu ikonu zmenší do pravého horního rohu.
- Objímka je druhá polovina koule: vyžadované rozhraní. Komponenta nakreslená se samými lízátky nepřiznala jedinou závislost.
01Samotná komponenta#
V oběhu jsou dvě podoby a obě jsou správné, a proto tentýž systém nakreslený ve dvou nástrojích může vypadat jako dvě notace.
| Prvek | Notace | Co znamená |
|---|---|---|
| Komponenta (UML 2) | box, malá ikona zástrčky vpravo nahoře | Obyčejný box klasifikátoru s ikonou zmenšenou do rohu. Často nese nad názvem klíčové slovo «component». Tohle kreslí současné nástroje výchozím způsobem. |
| Komponenta (UML 1) | box se dvěma jazýčky na levé hraně | Starší podoba, kde ikona je tvarem. Stále běžná v učebnicích a v diagramech zděděných z let 2000; rozpoznejte ji, ale v nové práci ji nekreslete. |
| Podsystém | «subsystem» na komponentě | Komponenta dost velká na to, aby měla vlastní části. Psát to má smysl jen tehdy, když diagram ukazuje, co je uvnitř. |
| Artefakt | «artifact», stránka s ohnutým rohem | Fyzický soubor, ve kterém se komponenta dodává - jar, image, balík. Patří na diagram nasazení, ne sem, pokud není řeč právě o balení. |
02Poskytovaná a vyžadovaná rozhraní#
Každá komponenta má dva seznamy - co poskytuje a co vyžaduje - a celá notace jsou způsoby, jak ty dva seznamy zapsat. Jsou dva a jsou zaměnitelné.
| Prvek | Notace | Co znamená |
|---|---|---|
| Poskytované (explicitně) | Přerušovaná čára, prázdný trojúhelník, mířící na rozhraní. Komponenta tuhle smlouvu implementuje. | |
| Poskytované (lízátko) | kroužek na krátké tyčce | Totéž tvrzení, nakreslené na hraně komponenty s názvem rozhraní vedle kroužku. Kompaktní, a proto to většina nástrojů dělá výchozím způsobem. |
| Vyžadované (explicitně) | Přerušovaná čára, otevřený hrot, mířící na rozhraní. Obvykle s popiskem «use». Komponenta potřebuje, aby to někdo naplnil. | |
| Vyžadované (objímka) | polovina šálku na krátké tyčce | Totéž tvrzení v kompaktní podobě. Prázdná objímka je nenaplněná závislost, a to je užitečná věc, kterou diagram umí ukázat. |
Explicitně nebo zkratkou, nikdy obojí na jednom diagramu - čtenář nemá ověřovat, jestli dvě notace na jednom obrázku neznamenají dvě různé věci.
03Konektory, porty a delegování#
Jakmile komponenty obsahují další komponenty, objeví se dvě další značky. Sestavovací konektor zapojí poskytované rozhraní jedné komponenty přímo do vyžadovaného rozhraní druhé - kulička sedící v objímce, což je zkratka za dvě šipky na obrázku v úvodu článku. Delegační konektor vede z portu na vnější hranici k té vnitřní části, která ho naplňuje.
| Prvek | Notace | Co znamená |
|---|---|---|
| Sestavovací konektor | kulička spočívající v objímce | Jedna komponenta naplňuje požadavek druhé. Totéž tvrzení jako realizace plus závislost přes společné rozhraní, na třetině místa. |
| Port | malý čtverec na hranici | Jeden odlišný bod interakce. Stojí za nakreslení, když má komponenta opravdu oddělené povrchy - veřejné API a administrátorské API - jinak je to šum. |
| Delegační konektor | Z portu na vnitřní část: tuhle vnější smlouvu obsluhuje tamta část. Právě to dělá vnitřek podsystému ověřitelným proti jeho vnějšku. | |
| Závislost mezi komponentami | Legální a téměř vždy vada: říká „nějak závisí“, což je právě ta vágnost, kterou diagram existuje odstranit. Pojmenujte raději rozhraní. |
Vnoření je třetí způsob, jak říct „uvnitř“, a ten, který tahle série kreslí: části umístěné v hranici svého vlastníka, jako výše. Nepotřebuje žádný symbol navíc a přežije čtenáře, který delegační konektor nikdy neviděl, což je většina čtenářů.
04Stereotypy, které stojí za to psát#
Stereotyp ve francouzských uvozovkách rozšiřuje význam boxu a pokušení je vymyslet si celý slovník. Své místo si zaslouží čtyři, protože každý z nich mění, co má čtenář s boxem dělat:
«subsystem»- tohle má vlastní části a můžou být na jiném diagramu.«service»- tohle je nasazené a dostupné přes síť, takže jeho rozhraní je smlouva po drátě a jeho verzování je něčí práce.«library»- tohle se přilinkuje, nevolá se přes hranici, takže jeho změna je rebuild, ne nasazení.«external»- tohle vlastní někdo jiný, takže jeho rozhraní je omezení, ne rozhodnutí.
Cokoli nad ty čtyři je obvykle převlečený profil. Pokud tým opravdu potřebuje vlastní formální slovník - označené prvky, omezené prvky, pravidla vynucovaná nástrojem - je na to UML profil a zapsat ho pořádně je levnější než konvence, kterou dodržuje polovina týmu.
05V čem se nástroje neshodnou#
Za většinu zmatku při přesunu diagramu mezi nástroji můžou tři rozdíly a ani jeden z nich nemění význam:
- Ikona nebo klíčové slovo. Některé nástroje kreslí ikonu zástrčky, jiné píšou
«component», další obojí. Všechny tři jsou tatáž komponenta UML 2. - Lízátka jako výchozí volba. Většina kreslicích nástrojů připne kuličku a objímku na hranu komponenty; modelovací nástroje, které drží repozitář, kreslí rozhraní spíš jako samostatný prvek, protože jím je.
- Porty tam, kde žádné nejsou. Některé nástroje dají malý čtvereček ke každému bodu připojení rozhraní. Pokud diagram nikdy nerozlišuje dva povrchy na jedné komponentě, ty čtverečky nenesou žádnou informaci.
Po jednom řádku na každé
- 01Box s ikonou zástrčky v rohu: komponenta UML 2. Dva jazýčky na levé hraně: podoba z UML 1.
- 02Realizace - přerušovaná, prázdný trojúhelník - míří od implementátora na smlouvu.
- 03Závislost - přerušovaná, otevřený hrot - míří od toho, kdo potřebuje, na smlouvu.
- 04Lízátko je poskytované, objímka je vyžadované, kulička v objímce je sestava obojího.
- 05Port je odlišný bod interakce; delegační konektor ho směruje na část uvnitř.
- 06Šipka mezi dvěma komponentami bez rozhraní nepojmenovává nic - to je ta vada, kterou je třeba hledat.
Symboly v použití na skutečných systémech najdete v pěti rozebraných příkladech a pořadí, ve kterém je klást, v článku jak nakreslit diagram komponent.
06Časté dotazy#
Co znamená symbol lízátka v UML?
Lízátko - malý kroužek na krátké tyčce - je poskytované rozhraní: komponenta, na které visí, tu smlouvu implementuje. Je to úsporná forma šipky realizace mířící na box rozhraní a obojí znamená přesně totéž, takže diagram má používat jednu formu, ne obě zároveň.
Dají se lízátka a boxy rozhraní míchat na jednom diagramu?
Dají, ale čtenáře to stojí námahu a nic tím nezískáte. Obě formy říkají přesně totéž, takže dvě notace na jednom obrázku nechají člověka přemýšlet, jestli ten rozdíl něco znamená. Volte úspornou formu koule a objímky, když je málo místa, a explicitní boxy rozhraní tehdy, když jsou předmětem řeči samotné šipky.
Co znamená přerušovaná šipka s prázdným trojúhelníkem?
To je realizace a na diagramu komponent vždy míří od implementace ke smlouvě. Komponenta na začátku šipky slibuje, že splní rozhraní na jejím konci. Přerušovaná šipka s obyčejným otevřeným hrotem je druhá strana téhož vztahu: závislost, tedy že komponenta tu smlouvu od někoho potřebuje.
Liší se symbol komponenty v UML 1 a UML 2?
Ano a kreslí se obojí. UML 1 nahradilo box přímo obdélníkem se dvěma menšími obdélníky na levé hraně. UML 2 používá běžný box klasifikátoru s tou ikonou zmenšenou do pravého horního rohu, volitelně s klíčovým slovem «component» nad názvem - a to je forma, kterou dnešní nástroje kreslí standardně.
V této sérii
- 01Co je UML?
- 02Symboly UML
- 03Výběr diagramu
- 04Diagramy tříd
- 05Příklady diagramů tříd
- 06Jak nakreslit diagram tříd
- 07Symboly diagramu tříd
- 08Sekvenční diagramy
- 09Příklady sekvenčních diagramů
- 10Jak nakreslit sekvenční diagram
- 11Diagramy případů užití
- 12Příklady případů užití
- 13Diagramy aktivit
- 14Příklady aktivit
- 15Stavové diagramy
- 16Příklady stavových diagramů
- 17Diagramy komponent
- 18Příklady komponent
- 19Kreslení diagramu komponent
- 20Symboly komponent
- 21Diagramy nasazení
- 22Příklady nasazení
- 23Diagramy objektů
- 24Diagramy balíků
- 25Diagramy složené struktury
- 26Komunikační diagramy
- 27Sekvenční vs komunikační
- 28Časové diagramy
- 29Diagramy přehledu interakcí
- 30Diagramy profilů
- 31UML pomocí AI
- 32Příklad e-shopu
- 33Příklad banky
- 34Příklad mikroslužeb
- 35Příklad AWS
Související články
Diagramy struktury
Diagramy struktury
Praxe modelování
Diagramy struktury
Přehled notace
Diagramy struktury