You are on page 1of 59

Diagramy UML

mgr inż. Stanisław Lota


Czy wiesz że…?
Na poprzednich zajęciach poznaliśmy diagramy przypadków użycia,
sekwencji, klas, aktywności ?
Diagram obiektów
Diagram obiektów przedstawia egzemplarze elementów z diagramu
klas. Obrazuje zbiór obiektów i ich związków w danej chwili.
Często nazywany jest diagramem instancji (przedstawia instancje klas a
nie same klasy).
Zawiera na ogół: obiekty, wiązania, notatki, ograniczenia, pakiety,
podsystemy, klasy.
Diagram obiektów dotyczy realizacji dla pewnego konkretnego systemu
(gdy system jest statyczny) lub dla stanu systemu w pewnej określonej
chwili czasu (gdy system jest dynamiczny).
Diagram obiektów
Na diagramach obiektów przedstawione są:
• symbole obiektów (opcjonalnie nazwa obiektu i opcjonalnie typ
obiektu (klasa do której należy) – jedna z opcji musi być zrealizowana)
• powiązania między obiektami, będące egzemplarzami powiązań
między klasami tworzy się aby wykazać możliwość ich wzajemnej
komunikacji i współdziałania.
Podobnie jak diagram klas, odnosi się do statycznych aspektów
perspektywy projektowej lub procesowej.
Korzystając z niego bierze się jednak pod uwagę przypadki rzeczywiste
lub prototypowe.
Diagram obiektów
Każdy obiekt może być opisany przy pomocy trzech elementów: tożsamości,
stanu i zachowania.
Tożsamość jest cechą wyróżniającą obiekt, przedstawiając go jako
indywidualną jednostkę. Określa się ją przy pomocny unikatowej i
indywidualnej cechy obiektu, która nigdy nie ulega zmianie.
Stan jest zbiorem wszystkich wartości i właściwości obiektu, które każdy z
nich posiada i jest przez nie wyróżniany.
Obiekt posiada zawsze zestaw właściwości. Ich wartości przez cały okres
istnienia obiektu mogą się zmieniać.
Zachowanie jest zbiorem usług, które mogą być wykonane przez obiekt na
rzecz innych obiektów. Ukazuje dynamikę występującą w modelu, dzięki
czemu w łatwy sposób możemy przedstawić relację występujące pomiędzy
obiektami lub czynności które dopiero mają zostać wykonane.
Diagram obiektów
Diagram obiektów
Diagram obiektów
Diagram komponentów
Diagramy komponentów pokazują podział systemów programowych na
mniejsze podsystemy.
Komponent to wymienialny, wykonywalny fragment systemu, z
ukrytymi szczegółami implementacyjnymi (np. plik .dll, podprogram).
Grupują one wykonywane często wspólnie funkcje i oddzielają te, które
współpracują rzadziej.
Diagram komponentów
Komponenty przedstawiane za pomocą dużego prostokąta, z dwoma
mniejszymi z jego lewej strony oraz z etykietą w środku.
Komponenty mogą być przedstawiane zarówno jako klasy jak i
instancje. Klasa oznacza elementy systemu istniejące podczas jego
działania (np. interfejs użytkownika czy dane). Konkretne instancje
precyzują o jaki element chodzi (np. okno programu będące częścią
interfejsu).
Węzły są to zasoby sprzętowe dostępne podczas działania systemu.
Obrazowane są za pomocą prostopadłościanów.
Diagram komponentów
Komponenty wymieniają dane między sobą za pomocą interfejsów.
Interfejsy służą komponentom do komunikacji – definiują formaty
dostarczanych i wymaganych danych. Wyróżnić możemy dwa rodzaje
interfejsów:
Interfejs dostarczany – umożliwia pozyskanie danych z komponentu
Interfejs wymagany – wymaga dostarczenia określonych danych do
wykonania operacji
Udostępniane interfejsy są zaznaczone kółkami, podczas gdy interfejsy,
których dany komponent wymaga do swojego działania, są oznaczone
półokręgiem – gniazdem.
Diagram komponentów
Mamy 2 typy widoków:
Zewnętrzny (external, black box) – przedstawia komponenty z ukrytymi
szczegółami
Wewnętrzny (internal, white box) -przedstawia komponenty wraz z ich
wewnętrzną budową
Diagram komponentów
Diagram komponentów
Diagram komponentów
Diagram komponentów
Diagram komponentów
Diagram wdrożenia
Diagramy wdrożenia przedstawiają powiązania
między oprogramowaniem (artefaktami) i sprzętem (węzłami). Są
stosowane przy modelowaniu dużych systemów.
Jednostki oprogramowania są reprezentowane przez artefakty (czyli
skompilowane wersje komponentu, który można uruchomić), dane i
biblioteki.
Stronę sprzętową reprezentują węzły, czyli poszczególne urządzenia
obliczeniowe, komunikacyjne i przechowujące, powiązane ścieżkami
komunikacyjnymi (np. połączeniem TCP/IP).
Diagram wdrożenia
W węzłach realizuje się oprogramowanie stanowiące system. Węzły
połączone są liniami komunikacyjnymi.

Diagramy te są rzadko używane przy modelowaniu mniejszych i


średnich systemów, dlatego zwykle ich rola jest ograniczona.
Diagramy wdrożenia istotną rolę odgrywają przy wdrażaniu dużych,
rozproszonych systemów.
Diagram wdrożenia
Diagram wdrożenia
Diagram wdrożenia
Diagram pakietów
Diagram pakietów służy do tego, by uporządkować strukturę
zależności w systemie, który ma bardzo wiele klas, przypadków użycia
itp.
W pakiecie można umieścić praktycznie dowolne elementy: klasy,
komponenty, przypadki użycia, a także inne pakiety. W ten sposób
przedstawiają one drzewiastą strukturę elementów modelu.
Diagram pakietów
Pakiet jest przedstawiany w postaci dużego prostokąta z małym
prostokątem, zwanym "etykietą”. Jeżeli zawartość pakietu nie jest
pokazana, wówczas nazwa pakietu jest wpisana do większego
prostokąta; w przeciwnym przypadku nazwa pakietu jest umieszczana
w etykiecie.
Pakiet (klient), który odwołuje się do elementu w innym pakiecie
(dostawcy informacji), może wykorzystać pakiet zawierający ten
element, używając zależności typu «import» albo «access» (będących
rodzajami zależności typu «usage»).
Główną cechą różniącą oba rodzaje zależności jest odmienny sposób
traktowania nazw elementów.
Diagram pakietów
Diagram pakietów
Pakiety doskonale nadają się do wizualizacji podstawowych zależności
pomiędzy częściami systemu, dzięki czemu łatwo ocenić jakość i
stopień powiązań pomiędzy nimi.
Dobra struktura pakietów, w której zależności są jasno uporządkowane
oraz nie występują (lub występują tylko na niskim poziomie) zależności
cykliczne, wspiera późniejszą rozbudowę systemu.
W szczególności przydają się w dużych aplikacjach, podzielonych na
wiele podsystemów, ponieważ w prosty sposób obrazują podstawowe
zależności pomiędzy nimi.
Diagram struktur złożonych
Diagram struktur złożonych (composite structure diagram) pokazuje
związki istniejące pomiędzy częściami systemu, które współpracując
dostarczają pewnej funkcjonalności.
Prezentuje on hierarchicznie wewnętrzną strukturę złożonego obiektu z
uwzględnieniem punktów interakcji z innymi częściami systemu, a więc
jego poziom szczegółowości jest znacznie wyższy niż w przypadku np.
diagramu klas i obiektów, skupiających się jedynie na całych klasach.
Diagram struktur złożonych
Diagramy struktur złożonych mogą zawierać: struktury - zespoły
powiązanych elementów oraz konektory - łącza komunikacyjne (ich typ
nie jest określony).
Aby pokazać funkcje realizowane przez daną strukturę, ale bez
podawania szczegółów ich realizacji można korzystać z portów i
interfejsów (dostarczanych/wymaganych)
Diagram struktur złożonych
Obiekt złożony składa się z części, które reprezentują poszczególne
składowe obiektu realizujące poszczególne funkcje obiektu.
Komunikacja pomiędzy obiektem, a jego środowiskiem przebiega
poprzez port (oznaczany jako mały prostokąt umieszczony na
krawędzi obiektu).
Porty są połączone z częściami obiektu, które są odpowiedzialne za
realizacje tych funkcji.
Diagramy struktur złożonych mogą także zawierać interfejsy
wewnętrzne (równoważne klasom w pełni abstrakcyjnym) i interfejsy
udostępnione (widoczne na zewnątrz obiektu).
Diagram struktur złożonych
Diagram profili
UML Profile to mechanizm, dzięki któremu można dostosować język
modelowania do potrzeb projektowych. Profile zawierają kompletny i
spójny zestaw elementów dedykowanych do modelowania
określonej dziedziny, np. systemów czasu rzeczywistego, baz
danych, logiki biznesowej.
Zdefiniowane i zaakceptowane profile pozwalają uniknąć
różnorodnych rozszerzeń dokonywanych przez użytkowników na
własną rękę, co znacznie zmniejszało czytelność i komunikatywność
model.
Diagram profili
Profil UML bazuje na stereotypach. Stereotypy rozszerzają notację UML,
dzięki ich wykorzystaniu można rozszerzyć informacje dotyczące klasy.
Oznacza to, że profil zawiera definicje dla określonych stereotypów, które
są przypisywane standardowym typom elementów lub relacji UML.

Na przykład dla elementu typu Class można zdefiniować stereotypy:


• biznes - oznaczający byt mający znaczenie z biznesowego punktu widzenia,
• web page - oznaczający byt, który jest związany z interfejsem użytkownika,
• control - oznaczający byt, który kontroluje zachowanie i cykl życia bytów
biznesowych, których zmiana inicjowana jest przez użytkownika.
Diagram profili
Diagram profili
Diagram czynności
Diagram czynności/aktywności jest diagramem interakcji, który służy
do modelowania dynamicznych aspektów systemu.
Służy do modelowania czynności i zakresu odpowiedzialności
elementów bądź użytkowników systemu.
Jego zasadniczą funkcją jest przedstawienie sekwencji kroków, które są
wykonywane przez modelowany fragment systemu.
Diagram czynności
Czynność może być interpretowana różnie, w zależności od
perspektywy: jako zadanie do wykonania i to zarówno przez
człowieka, jak i przez komputer (z perspektywy pojęciowej) czy też
np. jako pojedyncza metoda (z perspektywy projektowej).

Akcja reprezentuje wykonanie pojedynczej operacji, której nie można


rozbić na mniejsze jednostki na diagramie. Na przykład akcjami mogą
być funkcje matematyczne.
Diagram czynności
Diagram czynności
Diagram czynności
Diagramy stanów
Diagramy stanów opisują wszystkie możliwe stany, do których może
przejść dany obiekt, a także to, jak zmienia się stan obiektu pod
wpływem zdarzeń do niego docierających.
Dzięki temu możliwe jest:
• odkrycie brakujących informacji,
• kontrola kompletności wymagań (związanych z danymi i
zachowaniem),
• wyjaśnianie niejasności,
• identyfikacja konfliktów wymagań i ich rozstrzyganie.
Diagramy stanów
Stosując diagramy stanów, nie należy rysować ich dla każdego
systemu. Mimo że jest to czasami stosowane, to prawie zawsze jest
stratą czasu.
Diagramy stanów stosuje się tylko kiedy występuje interesujące
zachowanie, i tam, gdzie narysowanie diagramu stanów pomoże
zrozumieć, jak zachodzi dany proces.
Diagramy stanów
W diagramie stanów występują również zdarzenia. Zdarzenia są opisane
jako te, które pojawiają się w wewnętrznym przedziale przejściowym
stanu lub na przejściu między stanami.
Zdarzenie jest chwilą, która może być znacząca na zachowanie
obiektów w dalszym procesie.
Diagramy stanów
Występują cztery typy zdarzeń:
Zdarzenie wywołania - polegające na wywołaniu operacji.
Zdarzenie sygnałowe – reprezentuje nazwany obiekt, asynchronicznie
wysyłany przez jeden obiekt i odbierany przez drugi.
Zdarzenie zmiany - występuje, gdy określony warunek zostanie.
spełniony.
Zdarzenie czasowe - występuje po upływie określonego czasu.
Diagramy stanów
Diagram komunikacji
Diagram komunikacji jest jednym z diagramów interakcji. Przedstawia
sposób wymiany komunikatów pomiędzy obiektami uczestniczącymi
w interakcji zgodnie ze scenariuszem przypadków użycia.
Celem stosowania diagramów komunikacji jest określenie
komunikatów wymienianych pomiędzy obiektami, wskazanie relacji
pomiędzy obiektami, ustalenie kolejności wysyłania komunikatów,
ułatwienie zrozumienia interakcji.
Diagramów komunikacji używa się w sytuacji, gdy autor koncentruje
się na połączeniach pomiędzy uczestnikami danej interakcji.
Diagram komunikacji
Diagram interakcji
Przeglądowy diagram interakcji jest swego rodzaju połączeniem
diagramu aktywności i diagramów pokazującym dynamikę systemu.
Każda z czynności została zastąpiona samą interakcją. Zadaniem tego
diagramu jest wizualizacja współpracy ze sobą diagramów interakcji.
Bazują na istniejącym diagramie klas i opisują one sposób w jaki
obiekty współpracują ze sobą w celu zrealizowania konkretnej funkcji
systemu (przypadku użycia lub scenariusza danego przypadku użycia).
Pozwalają na lepsze zrozumienie zdarzeń zachodzących pomiędzy nimi.
Diagram interakcji
Diagram przeglądu interakcji ma notację bardzo podobną do
notacji diagramu aktywności (czynności), z tą różnicą, że
zaokrąglone prostokąty, które reprezentowały zadania
wykonywane przez system, są zastąpione przez zwykłe
prostokąty, które mogą mieć dwie postacie:
Prostokąt zawiera jakiś diagram interakcji – diagram współpracy
(komunikacji), diagram przebiegu, diagram przebiegów
czasowych lub inny diagram przeglądu interakcji.
Prostokąt zawiera odnośnik do już istniejącego diagramu
interakcji. Obecność odnośnika jest zaznaczona słowem ref w
lewym górnym rogu diagramu
Diagram interakcji
Diagram interakcji
Diagram czasowy, harmonogramowania
Diagram czasowy, przebiegów czasowych reprezentuje na osi czasu
zmiany dopuszczalnych stanów, jakie może przyjmować uczestnik w
interakcji.
Wykorzystywane są do przedstawiania zmian stanu lub wartości
jednego lub więcej elementów w czasie. Mogą również pokazywać
interakcje pomiędzy zdarzeniami czasowymi a czasem oraz
ograniczeniami ich czasu trwania.
Diagram przebiegów czasowych obrazuje zachowanie obiektu z
naciskiem na dokładne określenie czasu, w którym obiekt jest
poddawany jakimś zmianą lub sam wykonuje jakieś działanie.
Diagram czasowy, harmonogramowania
Diagram sterowania interakcją
Diagramy sterowania interakcją udostępniają widok wzajemnej
współpracy kilku interakcji wykorzystywanych w celu implementacji
pewnej części systemu, na przykład danego przypadku użycia.
Diagramy sterowania interakcją mogą zawierać sekwencje,
komunikacje, opis interakcji oraz diagramy zależności czasowych.
Większość notacji dla tych diagramów jest taka sama jak dla diagramów
czynności. Jednakże wprowadzają one dwa nowe elementy: interakcję
występowania oraz elementy interakcji.
Diagram sterowania interakcją
Diagram sterowania interakcją
Diagram rozlokowania
Diagram rozlokowania przedstawia sieć węzłów połączonych
ścieżkami komunikowania (węzły reprezentują przede wszystkim
sprzęt komputerowy i sieciowy), z osadzonymi na nich artefaktami.
Węzeł to fizyczny lub logiczny zasób przetwarzający, na którym
osadzone są artefakty użytkowanego systemu.
Może on przyjmować formę określonego rodzaju sprzętu ICT, jak
również platform użytkowania systemu, którymi mogą być m.in.
systemy operacyjne, platformy e-learningowe (np. Moodle), systemy
ERP, CRM, systemy zarządzania bazami danych.
Diagram rozlokowania
Diagram rozlokowania pozwala na modelowanie rozmieszczenia
infrastruktury oraz platform użytkownika systemu.
Diagramy rozlokowania identyfikują sprzęt informatyczny użytkowany w
systemie, na którym wyspecyfikowane wcześniej komponenty
oprogramowania systemu są zainstalowane.
Zakłada się, że diagramy rozlokowania będą prezentować finalną
postać infrastruktury sprzętowej, niezbędną do implementacji
systemu zgodnie z przyjętymi wymaganiami funkcjonalnymi i
pozafunkcjonalnymi.
Diagram rozlokowania
Ważne!
Twórz tylko potrzebne diagramy
Łatwość tworzenia diagramów może prowadzić do niepotrzebnego ich
budowania i zaciemnienia modelu!

You might also like