UML - PowerPoint PPT Presentation

About This Presentation
Title:

UML

Description:

unified modelling language ... (modelu UML), tj. elementy : t da (class), rozhran ... (relationships) Diagramy (diagrams) Diagramy UML http://cs.felk.cvut.cz ... – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 38
Provided by: LukK151
Category:
Tags: uml | class | diagrams | sequence

less

Transcript and Presenter's Notes

Title: UML


1
UML
http//www.uml.org/
  • unified modelling language
  • sjednocený modelovací jazyk

2
Co to je UML
UML spadá pod objektové modelovací techniky.
Základy OOA
  • Abstrakce
  • Dedicnost
  • Polymorfismus
  • Zapouzdrení
  • Posílání zpráv
  • Asociace
  • Agregace

Booch, Rumbaugh, Jacobson
3
Z ceho se UML skládá?
  • Predmety (things)
  • Relace (relationships)
  • Diagramy (diagrams)

4
Predmety (things)
  • Strukturní
  • Behaviorální
  • Seskupení
  • Poznámky

5
Relace (relationships)
  • Závislost (dependency) znázornení vztahu, kdy
    zmenou v jednom elementu je ovlivnen jiný
    (závislý) element
  • Asociace (association) spojení definující vztah
    mezi elementy
  • Zobecnení (generalization) vztahy
    generalizace-specializace, tj. jeden element je
    specializací jiného elementu
  • Realizace (realization) jeden element je
    realizací jiného elementu

6
Diagramy (diagrams)
Diagram je jeden pruhled, okénko, kterým se
díváme na model. A model je schéma, kterým se
díváme na realitu sveta.
  • Statické
  • diagram tríd
  • diagram komponent
  • diagram nasazení
  • Dynamické
  • diagram prípadu použití
  • sekvencní diagram
  • diagram spolupráce
  • stavový diagram
  • diagram aktivit
  • objektový diagram

7
Diagramy UMLhttp//cs.felk.cvut.cz/7Ehrzinap/013
DFA.htm
8
Use case diagram - diagram prípadu užití
Zobrazuje chování systému (nebo jeho cásti) z
hlediska uživatele
9
Class diagram - diagram tríd
  • Zobrazuje statickou strukturu systému.

10
Objektový diagram
  • Objektový diagram zobrazuje objekty a jejich
    spoje (links) v jednom okamžiku

11
Sequence diagram - sekvencní diagram
Objekty si mohou posílat zprávy. Sekvencní
diagram zobrazuje jejich casovou posloupnost.
Sekvencní diagram spolu s diagramem spolupráce
(collaboration diagram) patrí do skupiny
interakcních diagramu (interaction
diagrams).Tyto dva diagramy jsou témer izomorfní
- tj. dají se prevádet z jednoho tvaru na druhý
(casto i automatizovane). Použití sekvencního
diagramu bývá vhodnejší v tech prípadech, kde
jsou duležité casové souvislosti interakcí.
12
Collaboration diagram - diagram spolupráce
Objekty si mohou posílat zprávy. Diagram
spolupráce ukazuje objekty a spojení a zprávy,
které si objekty posílají
13
State diagram - stavový diagram, diagram stavu a
prechodu
Používá se pro popis dynamického chování jednoho
reaktivního objektu. Diagram obsahuje jeden
stavový automat
14
Activity diagram - diagram aktivit
Diagram aktivit je vlastne sociálním prípadem
stavového diagramu - jeho visuální elementy jsou
si podobné
Používá se pro popis dynamických aspektu systému.
Jde o jakýsi flowchart - znázornuje tok rízení z
aktivity do aktivity. Používané k modelování
obchodních (business) procesu.
15
Component diagram - diagram komponent
Komponenta je fyzická nahraditelná cást systému,
která obaluje implementaci a poskytuje realizaci
množiny specifikovaných rozhraní.Diagram
komponent znázornuje softwarové komponenty
použité v systému. Mohou to být jak komponenty
vytvorené vlastními silami, tak komponenty
zakoupené od tretích stran.
16
Deployment diagram - diagram nasazení
Diagram nasazení ukazuje rozmístení zdroju (napr.
HW) a softwarové komponenty, procesy a objekty,
které na nich žijí
17
UML
  • Sekvencní diagram

18
Etymologie
  • Slovo sekvence je puvodne hudební termín, který
    vychází z lat. sequentia a oznacuje úryvek
    chrámové hudby, který následuje po evangeliu
    apod.
  • Od lat. sequens následující
  • To od lat. sequi následovat

19
Sequence diagram - sekvencní diagram
Objekty si mohou posílat zprávy. Sekvencní
diagram zobrazuje jejich casovou posloupnost.
Sekvencní diagram spolu s diagramem spolupráce
(collaboration diagram) patrí do skupiny
interakcních diagramu (interaction
diagrams).Tyto dva diagramy jsou témer izomorfní
- tj. dají se prevádet z jednoho tvaru na druhý
(casto i automatizovane). Použití sekvencního
diagramu bývá vhodnejší v tech prípadech, kde
jsou duležité casové souvislosti interakcí.
20
Z ceho se skládá
  • objekt se zobrazuje stejne, jako v objektovém
    diagramu (ovšem bez hodnot a atributu)
  • cára života (lifeline) ukazuje, kdy objekt žije -
    v tomto diagramu všchny objekty existovaly už
    pred posláním první zprávy, a dále existují po
    dokoncení sekvencního diagramu (resp. nevíme, kdy
    který objekt zanikne nebo nás to v tuto chvíli
    nezajímá)
  • aktivita objektu (focus of control) ukazuje, kdy
    je který objekt aktivní
  • zpráva
  • zde jednoduchá zpráva se zobrazuje plnou šipkou a
    má syntaxi návratováHodnota (argument1,
    argument2, ....)
  • návratováHodnota není povinná
  • návratováHodnota muže být v návratové zpráve
    zobrazuje se cárkovnou šipkou (zde má název
    Return() )
  • POZOR casová osa nemá merítko - od délky
    obdélníku se nedá usuzovat na délky casu ani na
    to, který cas bude delší ci kratší

21
Zprávy
Zpráva muže být zaslaná mezi objekty, nebo objekt
zašle zprávu sám sobe.
  • Druhy zpráv
  • jednoduchá prechod rízení z jednoho objektu na
    druhý
  • synchronní objekt ceká na odpoved, aniž by do
    té doby neco delal
  • asynchronní objekt neceká na odpoved a
    pokracuje ve své práci

22
Zakreslení zpráv
jednoduchá
synchronní
asynchronní
23
Složitejší funkce
  • popisky lze vkládat vlevo, a ve smeru casové osy
    - jde jen upresnující/vysvetlucící text ci
    oznacení bodu na casové ose, které lze pak využít
    v podmínkách a výrazech
  • iterace co má být iterováno je uzavreno v
    obdélníku, iteracní výraz je pod obdélníkem (zde
    dokud má host hlad hvezdicka oznacuje
    iteraci, v hranatých závorkách je podmínka
  • asynchronní zpráva je vyjádrena (prostou) šipkou
    po zaslání této zprávy klient pokracuje dále ve
    zpracování (nemusí cekat, až server vrátí focus
    zpet), vlastne dojde k vytvorení nového vlákna
  • vytvorení objektu je vyznaceno pozicí objektu
    (není umísten nahore, ale jeho cára života zacíná
    níže na casové ose) a tím, že zpráva (v jejímž
    dusledku objekt vznikl) vede prímo k objektu
    (namísto do jeho lifeline)
  • uvolnení objektu je oznaceno krížkem
  • podmínka má peníze zpráva bude poslána jen
    tehdy, pokud bude podmínka splnena

24
(No Transcript)
25
Sekvencní diagram príklad 1
  • Pro príklad operacního systému pocítace
    vytvorte sekvencní diagram predstavující stisk
    klávesy v textovém editoru, který zpusobí
    zobrazení tohoto znaku na obrazovce.
    Predpokládejte interakce mezi temito objekty
  • GUI (grafické uživatelské rozhraní)
  • OS (operacní systém)
  • CPU (procesor)
  • Grafická karta
  • Monitor

26
Príklad 1 - rešení
27
Sekvencní diagram príklad 2
  • Vytvorte sekvencní diagram pro praní prádla v
    pracce. Predpokládejte interakce mezi temito
    objekty
  • prívod vody
  • buben
  • odtok

28
Príklad 2 sekvence kroku
  1. Voda se prívodní hadicí napustí do bubnu
  2. Buben se 5 min nebude pohybovat
  3. Voda se prestane napouštet
  4. Buben se bude asi 15 min otácet obema smery
  5. Voda s pracím práškem se vypustí
  6. Voda se znovu zacne napouštet
  7. Buben se znovu otácí obema smery
  8. Voda se prestane napouštet
  9. Voda z máchání se vypustí
  10. Buben se zacne otácet pouze jedním smerem a
    rychlost otácení se na 5 min zvýší
  11. Buben se prestane otácet, címž praní koncí

29
Príklad 2 - rešení
30
Sekvencní diagram príklad 3
  • Vytvorte sekvencní diagram pro nákup nápoje v
    automatu. Predpokládejte, že se automat skládá z
    techto ctyr objektu
  • Zákazník
  • Ovládací panel
  • Pokladna
  • Výdejník

31
Príklad 3 sekvence kroku
  1. Zákazník vhodí mince do otvoru v ovládacím panelu
  2. Zákazník si vybere druh nápoje
  3. Peníze propadnou do pokladny
  4. Pokladna predá na výdejník pokyn pro vydání
    nápoje
  5. Výdejník vydá nápoj

32
Príklad 3 - rešení
33
Príklad 3 scénár 2
  • Pro prípad nápojového automatu uvažujte
    scénár, v nemž zákazník nemá správný obnos.
  • Pokladna zkontroluje, zda množství vhozených
    mincí odpovídá cene nápoje
  • Pokud je vhozená cástka vyšší, vyplatí pokladna
    rozdíl

34
Scénár 2 - rešení
35
Príklad 3 scénár 3
  • Pro prípad nápojového automatu uvažujte
    scénár, kdy je požadovaný druh nápoje vyprodán.
  • Poté, co zákazník zvolí vyprodaný druh, automat
    vypíše zprávu Vyprodáno
  • Automat ceká na volbu jiného druhu nápoje

36
Scénár 3 - rešení
37
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com