UML komunikačné diagramy
Tá istá interakcia, akú ukazuje sekvenčný diagram, usporiadaná tak, aby odpovedala na inú otázku: nie kedy sa veci dejú, ale kto je s kým spojený.
6 min čítaniaUML 2.5.126 z 35
Krátka odpoveď
- Nesie tú istú informáciu ako sekvenčný diagram a líši sa len rozložením: sieť namiesto časovej osi.
- Poradie nesú jedine čísla správ, pretože rozloženie nenesie žiadne. Desatinné bodky značia vnorenie: 1.1 sa odosiela počas spracovania 1.
- Diagram spolupráce bol názov tej istej veci v UML 1.x. Staršie knihy a nemálo nástrojov ho stále používajú.
- Voľte ho, keď na štruktúre záleží viac než na poradí - overiť, že komponent hovorí len so zamýšľanými susedmi. Na vetvenie a chybové cesty použite sekvenčný.
01Čo ukazuje#
Komunikačný diagram - pred UML 2 nazývaný kolaboračný diagram - ukazuje sadu objektov, prepojenia medzi nimi a správy, ktoré po tých prepojeniach cestujú. Je jedným zo štyroch interakčných diagramov a nesie presne tú istú informáciu ako zodpovedajúci sekvenčný diagram.
Líši sa to, čo rozloženie zdôrazňuje. Sekvenčný diagram minie svoju geometriu na čas: účastníci naprieč hore, poradie dolu stránkou. Komunikačný diagram minie svoju geometriu na topológiu: objekty kdekoľvek ich dáte, prepojenia nakreslené medzi tými, ktoré spolu hovoria. Poradie je degradované na číslo pred každou správou.
02Notácia#
| Prvok | Notácia | Čo znamená |
|---|---|---|
| Objekt | obdĺžnik, podčiarknutý názov | Účastník, písaný role: Type. Tá istá notácia inštancie ako v diagrame objektov. |
| Prepojenie | obyčajná čiara | Tieto dva vedia spolu komunikovať. Samotná čiara nenesie smer - je to kanál, nie prevádzka. |
| Správa | malá šípka vedľa prepojenia | Jedna komunikácia, označená sequenceNumber: name(arguments). Na jednom prepojení môže sedieť viac správ. |
| Poradové číslo | 1:, 1.1:, 2: | Poradie. Desatinné čísla sa vnárajú: 1.1 sa deje počas 1. |
| Iterácia | 1 * [i = 1..n]: | Správa sa opakuje. |
| Stráž | 1 [ok]: | Správa sa pošle len vtedy, keď podmienka platí. |
Časťou, ktorú sa oplatí naučiť, je vnorené desatinné číslovanie, lebo práve tak tento diagram vyjadruje hĺbku volania bez zvislej osi. Správa 2.1 sa deje vnútri spracovania správy 2. Komunikačný diagram čítajte podľa čísla, nie podľa polohy: 1, 1.1, 1.2, 2. Poloha je zámerne bezvýznamná.
03Voľba medzi týmto a sekvenčným diagramom#
V princípe sú zameniteľné - dobrý nástroj medzi nimi prevádza automaticky - takže voľba je o čitateľovi.
Uprednostnite sekvenčný diagram, keď je predmetom poradie, keď je správ veľa alebo keď potrebujete kombinované fragmenty. Nič v komunikačnej notácii sa nevyrovná bloku alt pri ukázaní vetvy a za zhruba tuctom správ sa číslovanie sleduje horšie než zvislá os.
Uprednostnite komunikačný diagram, keď je predmetom štruktúra prepojení: ktoré objekty sa navzájom poznajú, kde sú rozbočovače, či tvar zodpovedá architektúre, ktorú ste zamýšľali. Je tiež kompaktnejší z tých dvoch pri malej interakcii medzi mnohými objektmi, lebo nerezervuje stĺpec na účastníka.
Poctivé zhodnotenie: v praxi dominujú sekvenčné diagramy, a ak sa máte naučiť len jeden interakčný diagram, naučte sa ten. Komunikačné diagramy sa naďalej oplatí spoznať - a oplatí sa ich nakresliť v ten konkrétny deň, keď je otázka o previazanosti a nie o poradí.
04Kedy taký nakresliť#
Siahnite po ňom, keď
- Otázkou je, kto s kým hovorí, nie v akom poradí
- Hľadanie problémov s previazanosťou - rozbočovače a neočakávané prepojenia vyčnievajú
- Malá interakcia rozprestretá cez mnoho objektov, kde by sekvenčný diagram bol väčšinou prázdne miesto
- Ukázanie, že návrh zodpovedá zamýšľanej štruktúre, napríklad vzoru
Siahnite po niečom inom, keď
- Tok má vetvy alebo slučky - fragmenty tu nemajú ekvivalent
- Správ je viac než zhruba tucet; číslovanie prestáva byť čitateľné
- Publikum už štruktúru pozná a potrebuje poradie
- Chcete ukázať uplynulý čas - použite časovací diagram
Po jednom riadku na každé
- 01Tá istá informácia ako sekvenčný diagram, usporiadaná tak, aby ukazovala štruktúru namiesto času.
- 02Rozložením je graf prepojení; poloha nenesie o poradí žiadny význam.
- 03Poradie žije v číslach správ a desatinné čísla sa vnárajú, aby ukázali hĺbku volania.
- 04Čítajte podľa čísla - 1, 1.1, 1.2, 2 - nikdy podľa polohy na stránke.
- 05Najlepší, keď je otázkou previazanosť; sekvenčný použite, keď je ňou poradie alebo vetvenie.
05Časté otázky#
Aký je rozdiel medzi komunikačným a sekvenčným diagramom?
Nesú tú istú informáciu a líšia sa len rozložením. Sekvenčný diagram kladie čas na zvislú os, takže poradie je zrejmé a spojenia nie. Komunikačný diagram rozloží účastníkov ako sieť, takže je zrejmé, kto s kým hovorí, a poradie treba vyčítať z čísel správ.
Ako funguje číslovanie správ?
Správy sú číslované v poradí vykonávania a vnorenie sa značí desatinnými bodkami. Správa 1.1 je prvá odoslaná počas spracovania správy 1 a 1.1.2 je druhá odoslaná počas spracovania 1.1. Číslovanie je jediné, čo nesie poradie, pretože rozloženie nenesie žiadne.
Je komunikačný diagram to isté ako diagram spolupráce?
Áno. Diagram spolupráce bol názov v UML 1.x, v UML 2.0 premenovaný na komunikačný diagram. Staršie knihy a nemálo nástrojov starší pojem stále používajú.
Kedy si vybrať komunikačný diagram?
Keď na štruktúre interakcie záleží viac než na jej poradí: overiť, že komponent hovorí len so zamýšľanými susedmi, alebo ukázať previazanosť. Tam, kde ide o časovanie, vetvenie alebo chybové cesty, je lepším nástrojom sekvenčný diagram.
V tejto sérii
- 01Čo je UML?
- 02Symboly UML
- 03Výber diagramu
- 04Diagramy tried
- 05Príklady diagramov tried
- 06Ako nakresliť diagram tried
- 07Symboly diagramu tried
- 08Sekvenčné diagramy
- 09Príklady sekvenčných diagramov
- 10Ako nakresliť sekvenčný diagram
- 11Diagramy prípadov použitia
- 12Príklady prípadov použitia
- 13Diagramy aktivít
- 14Príklady aktivít
- 15Stavové diagramy
- 16Príklady stavových diagramov
- 17Diagramy komponentov
- 18Príklady komponentov
- 19Kreslenie diagramu komponentov
- 20Symboly komponentov
- 21Diagramy nasadenia
- 22Príklady nasadenia
- 23Diagramy objektov
- 24Diagramy balíkov
- 25Diagramy zloženej štruktúry
- 26Komunikačné diagramy
- 27Sekvenčný vs komunikačný
- 28Časové diagramy
- 29Diagramy prehľadu interakcií
- 30Diagramy profilov
- 31UML pomocou AI
- 32Príklad e-shopu
- 33Príklad banky
- 34Príklad mikroslužieb
- 35Príklad AWS
Súvisiace články
Diagramy správania
Základy
Diagramy správania
Diagramy štruktúry
Diagramy správania
Diagramy správania