Modelování softwarových projektů v UML

Z Wikiverzity

Úvod[editovat]

Smyslem tohoto kurzu je zasvětit vývojáře do oblasti, kterou spousta z nich neprávem pokládá za zbytečnou, ačkoli je u každého většího projektu prakticky nezbytná. Teprve praxe vytváření složitějších projektů, či rozšiřování těch jednodušších ukáže, že bez solidního návrhu nemůže vzniknout solidní implementace. A solidní návrh by měl obsahovat diagramy. A aby si vývojáři navzájem rozuměli, byl vytvořen standard pro tvorbu těchto diagramů zvaný UML.

Nástroje[editovat]

Vývojáři open-source nelenili, a tak vzniklo hned několik velice šikovných nástrojů pro vytváření těchto diagramů. V našem kursu budeme používat Violet, neboť je ze všech nejjednodušší. Zajímavý je také nástroj Umbrello, který umí z diagramů tříd generovat kód pro C++, Javu, Python a jiné. Dokonce umí i opačnou konverzi, tedy z existujících zdrojových textů vygenerovat diagramy. Z dalších nástrojů si můžete vybrat zde

Kapitola 0 - Stažení, instalace a první kroky s Violet[editovat]

Violet je vytvořen v Javě, a proto ho lze spustit prakticky na všech moderních operačních systémech.

Instalace pro Linux[editovat]

Balíček pro linux (alespoň ne pro ubuntu) zatím nevznikl, nicméně i tak je instalace velmi snadná. Z oficiálních webových stránek stáhneme soubor com.horstmann.violet-0.21.1.jar (link Download now) a ten někam uložíme. Můžeme si klidně vytvořit ve své domovské složce podsložku programy a tam ho dát. Poté například na ploše vytvoříme zástupce (spouštěč), kde jako jméno dáme Violet a jako příkaz 'java -jar /home/{vaše uživatelské jméno}/programy/com.horstmann.violet-0.21.1.jar'. POZOR: v cestě nemůže být zkratka ~ ani $HOME. Potvrdíme a klikneme na náš nově vytvořený spouštěč.

Jestliže se nám program nespustil, nainstalujeme Javu od Sunu. POZOR: nepoužívejte OpenJDK, Violet v něm běží velice pomalu. (jestliže máme již nainstalované OpenJDK, výchozí javu změníme například pomocí utility galternatives)

Instalace pro Windows[editovat]

První kroky[editovat]

Po spuštění si vybereme typ diagramu, který chceme vytvořit a v závislosti na tom se nám objeví odpovídající panel nástrojů.

Kapitola 1 - Strukturní diagramy[editovat]

Kapitola 2 - Diagramy chování[editovat]

Kapitola 3 - Diagramy interakce[editovat]

Sekvenční diagram[editovat]

Pro tvorbu sekvenčního diagramu vybereme po spuštění Sequence diagram.

Sekvenční diagram popisuje komunikaci objektů v čase. Hodí se obzvláště pro tyto oblasti:

  • návrh síťových protokolů
  • pro návrh programů používajících vzdálené volání procedur
  • pro návrh paralelních programů komunikujících pomocí zasílíní zpráv (typicky pomocí knihovny MPI)

Jak na to v 5 krocích:

  1. Vložíme procesy Vpravo vybereme nástroj Object lifeline a klikáním vkládáme objekty (v případě sekvenčního diagramu se vlastně jedná o procesy). Když klikneme dovnitř rámečku značícího proces, můžeme vyplnit jeho jméno. Procesy se samy zarovnávají k hornímu okraji diagramu.
  2. Vložíme aktivační místa pomocí nástroje Activation bar. Aktivační místa značí časové okamžiky, kde proces něco udělá. Typicky počle zprávu (událost) jinému procesu, nebo čte zprávu jiného procesu.
  3. Doplníme šipky pomocí nástrojů Call/Create message a Return message. Čáry se dělají metodou táhni a pusť. Šipky vedou od toho, kdo zprávu odesílá, k tomu, kdo ji přijímá.
  4. Doplníme popisky aktivačních míst a zpráv pomocí nástroje Note.
  5. Uložíme do souboru, nebo zkopírujeme do schránky jako obrázek, nebo vyexportujeme jako obrázek