V. Modelovací jazyk UML. Flashcards

1
Q

Charakteristika UML

A

Charakteristika UML

Unified Modeling Language - UML:

  • jednotný jazyk pro modelování – notace
  • standard definovaný organizací OMG – Object Management Group
  • slouží pro
    • zachycení výsledků analýzy a návrhu pomocí různých typů diagramů
    • vizualizaci, specifikaci, návrh a dokumentaci programových systémů
  • snaha z modelů automaticky generovat kód - základ přístupu Model Driven Architecture (MDA)
  • současná verze UML 2.5
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

UML

A

UML:

  • nezávislý na doméně
  • nezávislý na platformě
  • zahrnuje mechanismus přizpůsobení – vytváření UML profilů
  • UML není metodika
  • UML je jazyk pro vyjádření prvků analýzy a návrhu, ale nepopisuje proces vývoje
  • sjednotit se na notaci je jednodušší než na postupech
  • na UML je založena řada metodik např. Rational Unified Process

CASE nástroj Astah* - CASE (Computer Aided Software Engineering) - nástroj pro modelování

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Význam modelování v jednotlivých fázích projektu

A

Význam modelování klesá s pokročilostí fáze vývoje. Ve fázi specifikace požadavků lze kromě slovního popisu použít hrubý diagram případů užití. Ve fázi analýzy je přínos modelování velmi významný. S výhodou je zde možno použít diagram případů užití, diagram tříd a sekvenční diagram. V obou uvedených fázích je model platformě nezávislý. Ve fázi návrhu jsou již existující diagramy doplněny o platformě závislé prvky. Fáze testování může být s pomocí modelů zjednodušena, zejména vzhledem ke snadnější identifikaci kritických míst projektu apod. Modelování po zavedení projektu lze využít jako dokumentaci nebo v případě rozšiřování projektu, což je však lépe označit za nový projekt a začít opět fází specifikace požadavků.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Kategorie diagramů UML

A

UML 2 je 14 diagramů, které můžeme rozdělit do 3 kategorií

  1. Diagramy struktury (statické)
  2. Diagramy chování (dynamické)
  3. Diagramy interakcí
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Diagramy struktury (statické):

A

Diagramy struktury (statické):

  • zachycují prvky nezávislé na čase - třídy, objekty, komponenty, z nichž je tvořen systém
    • diagram tříd (Class Diagram),
    • diagram vnitřní struktury (Composite Structure Diagram ) nově v UML 2 zachycuje spolupráci prvku (třídy, komponenty, případu užití) s jinými částmi systému
    • diagram objektů (Object Diagram)
    • diagram komponent (Component Diagram),
    • diagram nasazení (Deployment Diagram),
    • diagram profilů (Profile Diagram),
    • diagram balíčků (Package Diagram),
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Diagramy chování (dynamické):

A

Diagramy chování (dynamické):

  • zachycují chování systému nebo procesu, ukazují, jak systém skutečně pracuje – jak reaguje na vstupy, události,
    • diagram případů užití (Use Case Diagram), zachycuje požadavky na systém, vymezuje systém vůči okolí
    • diagram aktivit (Activity Diagram),
    • stavový diagram (State Diagram)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Diagramy interakcí:

A

Diagramy interakcí:

  • podmnožina diagramů chování, které zachycují interakce objektů
    • sekvenční diagram (Sequence Diagram),
    • diagram komunikace (Communication Diagram),
    • diagram interakcí (Interaction Overview Diagram) - varianta diagramu aktivit, která zachycuje řízení toku v rámci systému
    • diagram časování (Timing Diagram) - zachycuje změny stavu nebo podmínek objektu nebo role ve vztahu k času
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Diagramy struktury (statické):

A

Diagramy struktury (statické):

  • zachycují prvky nezávislé na čase - třídy, objekty, komponenty, z nichž je tvořen systém
    • diagram tříd (Class Diagram),
    • diagram vnitřní struktury (Composite Structure Diagram ) nově v UML 2 zachycuje spolupráci prvku (třídy, komponenty, případu užití) s jinými částmi systému
    • diagram objektů (Object Diagram)
    • diagram komponent (Component Diagram),
    • diagram nasazení (Deployment Diagram),
    • diagram profilů (Profile Diagram),
    • diagram balíčků (Package Diagram),
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Diagramy chování (dynamické):

A

Diagramy chování (dynamické):

  • zachycují chování systému nebo procesu, ukazují, jak systém skutečně pracuje – jak reaguje na vstupy, události,
    • diagram případů užití (Use Case Diagram), zachycuje požadavky na systém, vymezuje systém vůči okolí
    • diagram aktivit (Activity Diagram),
    • stavový diagram (State Diagram)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Diagram interakcí:

A

Diagramy interakcí:

  • podmnožina diagramů chování, které zachycují interakce objektů
    • sekvenční diagram (Sequence Diagram),
    • diagram komunikace (Communication Diagram),
    • diagram interakcí (Interaction Overview Diagram) - varianta diagramu aktivit, která zachycuje řízení toku v rámci systému
    • diagram časování (Timing Diagram) - zachycuje změny stavu nebo podmínek objektu nebo role ve vztahu k času
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Diagram případů užití -Use case diagram:

A

Diagram případů užití - Use Case diagram:

  • spojuje potřeby zákazníka se softwarovými požadavky
  • definuje hranice budovaného systému
  • zachycuje požadované chování systému a typ uživatelů
  • identifikuje kdo a co je v interakci se systémem
  • prověřuje požadavky – pouze funkční
  • případy užití často řídí celý životní cyklus vývoje SW od analýzy požadavků až po testování a údržbu
  • Aktér (Actor) reprezentuje roli, která je v interakci se systémem
  • Případ užití (Use case) popisuje posloupnost interakcí mezi aktérem a systémem, které nastanou když aktér používá systém k dosažení určitého cíle (popisuje funkcionalitu systému)

Prvky diagramu užití - případ užití (množina možných scénářů, aktér (uživatel systému nebo jiné systémy), vztahy (include, extend, generalizace, specializace) - generalizace i mezi aktéry, hranice systému

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Diagram tříd

A

Diagram tříd - Class diagram :

  • představuje statický pohled na systém
  • reprezentuje strukturu tříd v rámci systému
  • u každé třídy zachycuje atributy a metody a vyjadřuje vztahy mezi třídami
  • konvence:
    • jméno třídy - začíná velkým písmenem, tučně, vycentrovat
    • atributy a metody - zarovnat vlevo s malým písmenem
    • jména abstraktních tříd a metod kurzívou
    • Viditelnost položek dle standardu: + public, # protected, - private, ~ v rámci balíčku
  • Tři úrovně diagramu tříd
    • Analytický (konceptuální) model
      • zachycuje jen byznys třídy
      • název třídy
      • název klíčových atributů
      • název některých klíčových metod
      • používají se názvy s diakritikou, terminologie věcné oblasti
      • relace mezi třídami
    • Designový (technologický) model
      • Vychází z konceptuálního modelu
      • doplnění viditelnosti atributů a metod, datových typů, metod, parametrů metod, návratových hodnot metod apod.
    • Realizační (implementační) model
      • Zaměřuje se na „grafické zobrazení implementovaného kódu“.
      • Mezi prvky používané v diagramu tříd lze zařadit:
        • třídy (classes)
        • asociace (associations)
        • rozhraní (interfaces)
        • balíčky (packages)
      • Každá třída má popsány features (atributy + metody)
      • Omezení propojení tříd
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Sekvenční diagram:

A

Sekvenční diagram:

  • zachycuje graficky průběh zpracování v systému (často v rámci případu užití)
  • zobrazuje posloupnost zasílání zpráv mezi objekty
  • nejpoužívanější UML diagram pro dynamické modelování
  • Zpráva:
    • pojmenovaná čára se šipkou
    • schopnost objektu přijímat určitou zprávu znamená, že na tuto zprávu objekt spustí některou z metod
    • na základě zpráv můžeme určovat metody objektu
    • u objektů, u kterých končí „šipka“, vznikne nějaká metoda
  • Druhy zpráv:
    • synchronní zpráva (jednoduchá) - vysílající objekt předá řízení přijímajícímu objektu a sám čeká na zpracování odeslané zprávy
    • asynchronní zpráva objekt posílá zprávu druhému objektu a nečeká na ukončení činnosti druhého objektu
  • Klasifikátor - use case, třída, objekt, aktér
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Diagram aktivit - Activity diagram:

A

Diagram aktivit - Activity diagram:

  • zobrazuje posloupnost aktivit, které podporují jak sekvenční, tak paralelní chování
  • Použití: modelování byznys procesů, modelování logiky uvnitř případu užití nebo scénáře případu užití, modelování logiky byznys pravidla, OO alternativa vývojových diagramů

Prvky diagramu aktivit:

  • aktivita (značena obdélníkem)
    • vlastnosti aktivity: dále nedělitelná, není ji možné přerušit, okamžitá, má jeden vstup a jeden výstup
  • Tok - nastává automaticky po ukončení aktivity (značen šipkou)
  • Rozhodování (značeno kosočtvercem)
    • počet vstupů či výstupů toků není omezen, každý výstupní tok má definovánu výstupní podmínku, podmínky musí být definovány tak, že je splněna pouze jedna, lze použít podmínku jinak
  • Rozvětvení - umožňuje modelovat paralelní zpracování
    • rozcestí (fork) jeden vstup, několik výstupů dojde k aktivaci všech výstupních toků paralelně – pořadí není podstatné
    • spojení (join) několik vstupů, jeden výstup dochází k synchronizaci všech paralelně běžících vláken
  • plavecké dráhy - lze využít pro modelování nositele aktivit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly