summaryrefslogtreecommitdiffstats
path: root/tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
commitf7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b (patch)
tree1f78ef53b206c6b4e4efc88c4849aa9f686a094d /tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook
parent85ca18776aa487b06b9d5ab7459b8f837ba637f3 (diff)
downloadtde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.tar.gz
tde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.zip
Second part of prior commit
Diffstat (limited to 'tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook')
-rw-r--r--tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook738
1 files changed, 738 insertions, 0 deletions
diff --git a/tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook b/tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook
new file mode 100644
index 00000000000..41ea4ebaeba
--- /dev/null
+++ b/tde-i18n-sk/docs/tdesdk/umbrello/uml_basics.docbook
@@ -0,0 +1,738 @@
+<chapter id="uml-basics">
+
+<title>Základy UML</title>
+
+<sect1 id="about-uml">
+
+<title>O UML</title>
+
+<para> Táto kapitola poskytuje krátky úvod do základov UML. Pripomíname však, že
+to nie je plnohodnotný úvod. Ak chcete vedieť viac o unifikovanom modelovacom
+jazyku alebo všeobecne o analýze a návrhu softvéru, prečítajte si jednu z
+mnohých kníh venovaných tejto tematike. Ako východzí bod môžeme nájsť mnohé
+práce o tejto téme aj na internete.</para>
+
+<para> Unifikovaný modelovací jazyk (Unified Modelling Language - UML) je
+notácia
+diagramov pre špecifikáciu, vizualizáciu a dokumentáciu modelov
+objektovo-orientovaných softvérových systémov. UML nie je
+modelom chovania, t.j. nič nehovorí o jednotlivých krokoch, ktoré sú potrebné
+pre vytvorenie systému. Pomáha však vizualizovať systém a komunikovať s
+ostatnými. O štandard UML sa stará skupina Object Management Group (OMG) a je to
+priemyselný štandard pre popis softvérových modelov.
+</para>
+
+<para> UML bol vytvorený pre objektovo-orientovaný návrh softvéru a preto je pri
+ostatných paradigmách programovania použiteľný len obmedzene.
+</para>
+<para>
+UML sa skladá z mnohých prvkov modelu, ktoré predstavujú istý aspekt
+softvérového systému. Tieto prvky sa kombinujú do diagramu, ktoré predstavujú
+istú časť alebo istý pohľad na systém. Umbrello podporuje tieto typy diagramov:
+</para>
+<!-- FIXME, is it possible to link from these to the next pages?-->
+<itemizedlist>
+ <listitem>
+ <para><emphasis>
+ <link linkend="class-diagram">Diagram tried</link></emphasis>,
+ reprezentuje triedy a ich vzájomné vzťahy
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>
+ <link linkend="use-case-diagram">Diagram prípadov použitia</link> </emphasis>,
+ reprezentuje aktérov (ľudí alebo iných užívateľov systému), prípady použitia
+ (scenáre, ako využívajú aktéri systém) a ich vzájomné vzťahy.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>
+ <link linkend="sequence-diagram">Sekvenčný diagram</link></emphasis>,
+ reprezentuje objekty a ich vzájomné vzťahy, pričom dôraz sa kladie na
+ chronologické poradie výmeny správ medzi jednotlivými objektmi.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>
+ <link linkend="collaboration-diagram">Diagram spolupráce</link></emphasis>,
+ reprezentuje objekty a ich vzájomné vzťahy, pričom dôraz sa kladie na
+ jednotlivé objekty, ktoré sa zúčastňujú výmeny správ.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>
+ <link linkend="state-diagram">Stavový diagram</link></emphasis>,
+ Reprezentuje stavy, zmeny stavov a výstupy v objekte alebo časti systému.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>
+ <link linkend="activity-diagram">Diagram aktivít</link></emphasis>,
+ reprezentuje aktivity, stavy a zmeny stavov objektov a výstupy v častiach
+ systému.
+ </para>
+ </listitem>
+</itemizedlist>
+</sect1>
+
+<!-- about-uml-->
+
+<sect1 id="uml-elements"> <!--FIXME diagram-types ???? -->
+
+<title>Prvky UML</title>
+
+<sect2 id="use-case-diagram">
+
+<title>Diagram prípadov použitia</title>
+<para>Diagramy prípadov použitia popisujú vzťahy a závislosti medzi skupinou
+<emphasis>prípadov použitia</emphasis> a aktérov, ktorí sa zúčastňujú daného
+procesu</para>
+
+<para>
+Pripomíname, že diagram prípadov použitia sa v návrhu systému neodzrkadlí a tým
+nehovorí nič o interných záležitostiach systému. Diagramy prípadov použitia sa
+používajú len na zjednodušenie komunikácie medzi vývojármi a budúcimi
+užívateľmi, resp. zákazníkmi. Sú osožné hlavne pri stanovení požadovaných
+kritérií budúceho systému. Tým diagramy prípadov použitia určujú,
+<emphasis>čo</emphasis> treba urobiť, nie však <emphasis>ako</emphasis> to treba
+
+
+dosiahnuť.
+</para>
+<para>
+ <screenshot>
+ <screeninfo>Ukážkový diagram prípadov použitia.</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/use-case-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení ukážkového diagramu prípadov použitia
+ </phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení ukážkového diagramu prípadov použitia
+ </para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+</para>
+
+<sect3 id="use-case">
+
+<title>Prípad použitia</title>
+
+<para>
+<emphasis>Prípad použitia</emphasis> popisuje z hľadiska aktéra rad aktivít v
+systéme, ktoré dávajú konkrétny hmatateľný výsledok.
+</para>
+
+<para>Prípady použitia slúžia ako popis typickej interakcie medzi užívateľom a
+systémom. Reprezentujú externé rozhranie a špecifikujú tým, čo má systém robiť
+(iba čo, no nie ako!).</para>
+<para>
+Pri práci s prípadmi použitia sa odporúča riadiť týmito pravidlami:
+<itemizedlist>
+ <listitem>
+ <para>každý prípad použitia je spojený s aspoň jedným aktérom.
+ </para>
+ </listitem>
+ <listitem>
+ <para>každý prípad použitia je niekým vyvolaný (napr. aktérom).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ každý prípad použitia vedie k významnému výsledku (merateľnému a hospodársky
+ významnému)
+ </para>
+ </listitem>
+</itemizedlist>
+</para>
+
+<para>Prípady použitia môžu byť navzájom spojené. Tri najviac používané vzťahy
+medzi prípadmi použitia sú:
+</para>
+<itemizedlist>
+ <listitem>
+ <para><emphasis>&lt;&lt;include&gt;&gt;</emphasis>,
+ čo značí, že prípad použitia sa uskutočňuje <emphasis>v</emphasis> inom
+ prípade použitia.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>&lt;&lt;extends&gt;&gt;</emphasis>,
+ čo značí, že v istej situácii (alebo v istom bode rozšírenia) sa daný prípad
+ použitia rozšíri iným prípadom použitia.
+ </para>
+ </listitem>
+ <listitem>
+ <para><emphasis>Zovšeobecnenie</emphasis>,
+ čo značí, že prípad použitia zdedí vlastnosti
+ <quote>rodičovského</quote>prípadu použitia (nadriadeného) a môže tieto
+ vlastnosti prepísať alebo rozšíriť, podobne, ako je to u dedenia v prípade
+ tried.
+ </para>
+ </listitem>
+</itemizedlist>
+</sect3>
+
+<sect3 id="actor">
+
+<title>Aktér</title>
+<para>Aktér je externý objekt (mimo systému), ktorý prichádza do styku so
+systémom prostredníctvom účasti a spustenia prípadov použitia.
+Aktéry môžu byť skutočné osoby (napr. užívatelia systému),
+počítačové systémy alebo externé impulzy.
+</para>
+<para>Aktéry tým predstavujú nie
+<emphasis>fyzické</emphasis> osoby alebo systémy, ale <emphasis>role</emphasis>
+týchto objektov. Ak je fyzická v kontakte so systémom mnohými spôsobmi, (napr.
+prostredníctvom rôznych Rolí) potom sa reprezentuje pomocou rôznych aktérov. Tým
+sa osoba, ktorá pracuje na úseku zákazníckej podpory a zúčastňuje sa aj prijímania
+objednávok bude raz aktérom <quote>Pracovník_zákazníckej_podpory</quote> a druhýkrát
+aktérom <quote>Pracovník_odbytu</quote>.
+</para>
+
+</sect3>
+
+<sect3 id="use-case-description">
+
+<title>Popis prípadu použitia</title>
+
+<para>
+Popis prípadu použitia reprezentuje prípad použitia v textovej forme. Normálne
+sa pre tento účel používajú poznámky alebo dokumenty spojené s prípadom použitia
+a popisujú procesy alebo aktivity, ktoré v danom prípade použitia nastávajú.
+</para>
+
+</sect3>
+
+</sect2> <!-- use-case-diagram-->
+
+<sect2 id="class-diagram">
+
+<title>Diagram tried</title>
+
+<para>
+Diagramy tried zobrazujú rôzne triedy, z ktorých pozostáva systém a ako sú tieto
+
+
+navzájom závislé. Diagramy tried sa označujú ako <quote>statické</quote>
+, keďže reprezentujú triedy s ich metódami a atribútmi, ako aj
+vzájomnými statickými vzťahmi. Pritom sa ukazuje, ktoré triedy <quote>vedia
+</quote> o iných triedach a ktoré triedy <quote>sú sčasti</quote> inými triedami.
+Nezobrazuje však výmenu správ (volania metód) medzi jednotlivými triedami.
+</para>
+
+<para>
+ <screenshot>
+ <screeninfo>Veľavravný diagram tried</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/class-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení veľavravného diagramu tried</phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení veľavravného diagramu tried</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+</para>
+
+<sect3 id="class">
+
+<title>Trieda</title>
+
+<para>Trieda definuje atribúty a metódy množiny objektov. Všetky objekty tejto
+triedy (inštancie) majú rovnaké chovanie a rovnaké atribúty (avšak s odlišnými
+hodnotami). Pojem <quote>typ</quote> sa občas používa ako synonyma triedy, treba
+
+
+
+však dbať na to, že typ je všeobecný a tým tieto dva pojmy nemajú totožný
+význam.
+</para>
+<para>
+V UML sa triedy zobrazujú ako obdĺžniky s názvami tried. Atribúty a
+operácie triedy môžeme zaznamenať do dvoch ďalších <quote>oddelených oblastí</quote>
+v danom obdĺžniku.
+</para>
+
+<para>
+ <screenshot>
+ <screeninfo>Trieda v UML</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/class.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zobrazenie triedy v UML</phrase>
+ </textobject>
+ <caption>
+ <para>Zobrazenie triedy v UML</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+</para>
+
+<sect4 id="attributes">
+
+<title>Atribút</title>
+<para> V UML sa atribúty zobrazujú prinajmenšom pomocou názvu, môžu však
+byť zobrazené aj typ, počiatočná hodnota a ostatné vlastnosti. Je tiež možné
+zobraziť aj viditeľnosť atribútov:
+</para>
+
+<itemizedlist>
+ <listitem>
+ <para>+ značí verejné - <emphasis>public</emphasis> atribúty</para>
+ </listitem>
+ <listitem>
+ <para># značí chránené - <emphasis>protected</emphasis> atribúty</para>
+ </listitem>
+ <listitem>
+ <para>- značí súkromné - <emphasis>private</emphasis> atribúty</para>
+ </listitem>
+</itemizedlist>
+
+</sect4>
+
+<sect4 id="operation">
+
+<title>Operácia</title>
+
+<para>
+Operácie (metódy) musia byť reprezentované aspoň názvom a návratovou hodnotou.
+Podobne, ako je to u atribútov, môžeme zobraziť aj viditeľnosť:
+<itemizedlist>
+ <listitem>
+ <para>+ značí verejné - <emphasis>public</emphasis> operácie</para>
+ </listitem>
+ <listitem>
+ <para># značí chránené - <emphasis>protected</emphasis> operácie</para>
+ </listitem>
+ <listitem>
+ <para>- značí súkromné - <emphasis>private</emphasis> operácie</para>
+ </listitem>
+</itemizedlist>
+</para>
+
+</sect4>
+
+</sect3>
+
+<sect3 id="class-associations">
+
+<title>Asociácie tried</title>
+
+<para>Triedy môžu byť vo vzájomných vzťahoch (asociáciách) mnohých typov.
+</para>
+
+<sect4 id="generalization">
+
+<title>Zovšeobecnenie</title>
+
+<para> Dedenie je základným konceptom objektovo-orientovaného programovania.
+Trieda <quote>získa</quote> pritom všetky atribúty a operácie triedy, od ktorej
+je odvodená. Trieda môže tieto operácie/atribúty prepísať a zmeniť, ako aj
+pridať nové.
+</para>
+
+<para> V UML sa prostredníctvom asociácie
+<emphasis>zovšeobecnenie</emphasis> buduje hierarchia, ktorá predstavuje koncept
+základnej triedy a odvodenej triedy. Zovšeobecnenie medzi dvoma triedami sa v
+UML zobrazuje ako čiara medzi dvoma triedami, pričom na strane základnej triedy
+je šípka.
+<screenshot>
+ <screeninfo>Zovšeobecnenie</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/generalization.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zobrazenie zovšeobecnenia v UML</phrase>
+ </textobject>
+ <caption>
+ <para>Zobrazenie zovšeobecnenia v UML</para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+</sect4>
+
+<sect4 id="uml-associations">
+
+<title>Asociácia</title>
+
+<para>
+Asociácia predstavuje vzťah medzi triedami dar a tým popisuje všeobecný význam a
+štruktúru rôznych typov <quote>vzťahov</quote> medzi objektmi.
+</para>
+
+<para>Asociácie sú mechanizmom, ktorý umožňuje, aby
+objekty medzi sebou navzájom komunikovali. Popisujú vzťahy medzi rôznymi
+triedami (vzťahy medzi jednotlivými objektmi sa označujú ako vzťahy objektov
+alebo ako <emphasis>prepojenie</emphasis>).
+</para>
+
+<para>
+Asociácie môžu mať role, ktoré popisujú účel vzťahu a sú buď jednosmerné
+alebo obojsmerné (t.j. či je vzťah medzi objektmi jedno- alebo
+obojstranný).
+Oba konce asociácie majú hodnotu násobnosti, ktorá určuje, koľko objektov na
+jednej strane môže byť v spojení s koľkými objektmi na strane druhej.
+</para>
+
+<para> V UML sa asociácia zobrazuje prostredníctvom čiary medzi triedami,
+ktoré sa zúčastňujú asociácie. Môžeme pritom zobraziť aj rolu a násobnosť.
+Násobnosť je rozsah [min..max] nezáporných čísel, pričom hviezda (*) na strane
+maxima predstavuje nekonečno.
+<screenshot>
+ <screeninfo>Asociácie UML</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/association.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zobrazenie asociácie v UML</phrase>
+ </textobject>
+ <caption>
+ <para>Zobrazenie asociácie v UML</para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+</sect4>
+
+<sect4 id="aggregation">
+
+<title>Agregácia</title>
+
+<para>agregácie sú špeciálnym prípadom asociácií.
+Vo vzťahu nemajú triedy rovnaký status, táto asociácia predstavuje vzťah
+<quote>súčasť celku</quote>. Agregácia popisuje, ako trieda, ktorá je v úlohe
+celku, sa skladá z tried, ktoré majú úlohu častí. Pri agregáciách majú triedy v
+úlohe celku vždy násobnosť 1.
+</para>
+<para> V UML sa agregácie zobrazujú ako asociácie, pričom na strane celku je
+kosoštvorec.
+<screenshot>
+ <screeninfo>Agregácia</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/aggregation.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zobrazenie vzťahu agregácie v UML</phrase>
+ </textobject>
+ <caption>
+ <para>Zobrazenie vzťahu agregácie v UML</para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+</sect4>
+
+<sect4 id="composition">
+
+<title>Kompozícia</title>
+
+<para>Kompozície sú asociácie, ktoré predstavujú <emphasis>veľmi
+silnú</emphasis> agregáciu.
+To znamená, že kompozície reprezentujú vzťah súčasť celku, avšak vzťah je taký
+silný, že súčasti nemôžu existovať samostatne. Preto existujú iba v celku a ak
+celok zanikne, zaniknú aj ony.
+</para>
+
+<para>V UML sa kompozície zobrazujú ako vyplnený kosoštvorec na strane celku.
+</para>
+
+<para>
+<screenshot>
+ <screeninfo>Kompozícia</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/composition.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zobrazenie vzťahu kompozície v UML</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+
+</sect4>
+
+</sect3> <!--class-associations-->
+
+</sect2> <!--class diagram -->
+
+<sect2 id="activity-diagram">
+
+<title>Diagram aktivít</title>
+
+<para>Diagramy aktivít popisujú postupnosť aktivít v systéme.
+Sú špeciálnou formou stavových diagramov, pričom takmer výlučne obsahujú len
+aktivity.
+</para>
+
+<para>
+<screenshot>
+ <screeninfo>Názorný diagram aktivít</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/activity-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení diagramu aktivít</phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení diagramu aktivít</para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+<para>Diagramy aktivít sú veľmi podobné procedurálnym diagramom dátových tokov.
+Sú však odlišné tým, že aktivity sú jasne viazané na
+objekty.</para>
+
+<para>
+Diagramy aktivít patria vždy jednoznačne <emphasis>k triedam</emphasis>,
+<emphasis>operáciám</emphasis> alebo <emphasis>prípadom použitia</emphasis>.
+</para>
+
+<para>V diagrame aktivít môžeme zaznamenať aj sekvenčné či dokonca súbežné
+aktivity. Paralelné spracovanie sa zaznamenáva vo forme symbolov
+Rozdeliť/spojiť (fork/join). Pre paralelne bežiace aktivity je pritom dôležité,
+v akom poradí sa budú vykonávať. Môžu byť vykonávané v rovnakom časovom okamihu,
+ale aj za sebou.
+</para>
+
+<sect3 id="activity">
+
+<title>Aktivita</title>
+
+<para>Aktivita je jediný krok v procese. Tým je aktivita stavom systému s
+internou aktivitou a aspoň jedným prechodom. Môžu existovať viaceré prechody, ak
+sa aktivita vykonáva v rôznych podmienkach.
+</para>
+
+<para>
+Aktivity môžu byť usporiadané do hierarchie, v ktorej sa jedna aktivita skladá z
+mnohých iných. Pritom sa musia vstupujúce a vystupujúce prechody zosúladiť s
+príslušnými prechodmi dekonštrukcie.
+</para>
+
+</sect3>
+
+</sect2> <!-- activity diagram-->
+
+<sect2 id="sequence-diagram">
+
+<title>Sekvenčný diagram</title>
+
+<para>Sekvenčné diagramy zobrazujú výmenu správ (napr. volanie metód) medzi
+Objektmi v danom časovom priestore. Kladie sa pritom dôraz na poradie a čas,
+v ktorom sa správy posielajú objektom.
+</para>
+
+<para>
+V sekvenčnom diagrame sa objekt označuje zvislou prerušovanou čiarou. Názov objektu sa
+nachádza na hornom konci. Časová os je tiež zvislá, pričom hodnoty sa zväčšujú
+smerom nadol. Správy medzi objektmi sa označujú ako šípky s názvami operácií a
+ich parametrov.
+</para>
+
+<para>
+ <screenshot>
+ <screeninfo>Sekvenčný diagram</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/sequence-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení sekvenčného diagramu</phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení sekvenčného diagramu
+ </para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+</para>
+
+</sect2>
+
+<sect2 id="collaboration-diagram">
+
+<title>Diagram spolupráce</title>
+
+<para>Diagram spolupráce zobrazuje interakciu medzi objektmi, ktoré sa
+zúčastňujú špecifickej situácie. Toto predstavuje v princípe
+informácie zo sekvenčného diagramu, pričom pri tomto diagrame sa kladie dôraz na
+časovú následnosť. V prípade diagramu spolupráce sa však do popredia dostáva
+vzťah medzi objektmi a jeho topológia.
+</para>
+
+<para>Správy medzi objektmi sa v
+diagrame spolupráce zobrazujú ako šípky označené názvom, parametrom a poradovým
+číslom správy. Diagramy spolupráce sa výborne hodia pre zobrazenie špeciálnych
+programových postupov alebo situácií. Môžeme nimi demonštrovať a vyjasniť časť
+logiky programu veľmi jednoducho a rýchlo.
+</para>
+
+<para>
+<screenshot>
+ <screeninfo>Diagramy spolupráce</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/collaboration-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení diagramu spolupráce</phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení diagramu spolupráce
+ </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+</sect2>
+
+<sect2 id="state-diagram">
+
+<title>Stavový diagram </title>
+
+<para>Stavové diagramy zobrazujú objekty v rôznych stavoch ich života a
+zobrazujú vplyvy, ktorými objekty menia stav.
+</para>
+
+<para>Stavové diagramy zobrazujú objekty ako
+<emphasis>stavové stroje</emphasis> alebo konečné automaty, ktoré môžu byť v
+konečnom počte stavov a dokážu meniť stav prostredníctvom konečného počtu
+vplyvov. Takto sa môže objekt <emphasis>sieťový_server</emphasis> počas
+svojej existencie nachádzať v týchto stavoch:
+</para>
+<itemizedlist>
+ <listitem>
+ <para>pripravený</para>
+ </listitem>
+ <listitem>
+ <para>čakajúci</para>
+ </listitem>
+ <listitem>
+ <para>pracujúci</para>
+ </listitem>
+ <listitem>
+ <para>zastavený</para>
+ </listitem>
+</itemizedlist>
+
+<para>
+a impulzy, ktoré vyvolávajú zmenu stavu objektu môžu byť:
+</para>
+<itemizedlist>
+ <listitem>
+ <para>Objekt bol vytvorený</para>
+ </listitem>
+ <listitem>
+ <para>Objekt dostal správu, že má počkať</para>
+ </listitem>
+ <listitem>
+ <para>Klient požaduje pripojenie cez sieť</para>
+ </listitem>
+ <listitem>
+ <para>Klient ukončil spojenie</para>
+ </listitem>
+ <listitem>
+ <para>Požiadavka sa spracuje a ukončí</para>
+ </listitem>
+ <listitem>
+ <para>Objekt zachytí správu, že má ukončiť činnosť</para>
+ </listitem>
+ <listitem>
+ <para>atď.</para>
+ </listitem>
+</itemizedlist>
+
+<para>
+<screenshot>
+ <screeninfo>Stavový diagram </screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/state-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Umbrello pri zobrazení stavového diagramu</phrase>
+ </textobject>
+ <caption>
+ <para>Umbrello pri zobrazení stavového diagramu</para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+
+<sect3 id="state">
+
+<title>Stav</title>
+
+<para>Stavy sú stavebné kamene stavového diagramu. Stav patrí k práve jednej
+triede predstavuje istú konšteláciu hodnôt atribútov triedy. Tým popisuje stav v
+UML interný stav objektu istej triedy.</para>
+<para>
+Je pritom dôležité, že nie každá zmena atribútov vedie k novému stavu objektu.
+Ako nový stav má byť označená len zmena atribútov s citeľným vplyvom.
+</para>
+<para>Dva špeciálne stavy sú Počiatočný a Konečný stav. To znamená, že sa nemôže
+stať to, že sa objekt vráti do počiatočného stavu a žiaden impulz nemôže objekt
+preniesť do iného stavu, ak dosiahol konečný stav.
+</para>
+
+</sect3>
+
+</sect2>
+
+<sect2 id="helper-elements">
+<title>Pomocné prvky</title>
+<para>V UML existujú 3 prvky, ktoré nemajú sémantický význam v modeli,
+zjednodušujú však pochopenie diagramov. Tieto prvky sú:
+</para>
+
+<itemizedlist>
+ <listitem>
+ <para>Riadok textu</para>
+ </listitem>
+ <listitem>
+ <para>Poznámkový štítok</para>
+ </listitem>
+ <listitem>
+ <para>Ukotvenie</para>
+ </listitem>
+</itemizedlist>
+
+<para> Pomocou riadku textu môžeme do diagramu vložiť krátku informáciu. Text je
+samostatný a nemá žiaden význam z pohľadu modelu.
+</para>
+
+<para>
+Pomocou poznámkového štítku môžeme vložiť detailné informácie o objekte alebo o
+ situácii. Veľkou prednosťou textovej poznámky je, že ju môžeme pripojiť k
+prvku UML a tým textová poznámka <quote>patrí</quote> k tomuto prvku alebo
+špeciálnej situácii.
+</para>
+<para>Ani ukotvenia nemajú žiaden obsahový význam, sú však užitočné k spojení dvoch
+prvkov. Takto môžeme napríklad spojiť textové poznámky a objekt diagramu.
+</para><!--
+FIXME, screenshot -->
+</sect2>
+</sect1> <!-- uml-elements -> diagram types ???
+--></chapter>