UML Zunifikowany język modelowania

Slides:



Advertisements
Podobne prezentacje
Związki w UML.
Advertisements

Modelowanie przypadków użycia
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
PROGRAMOWANIE STRUKTURALNE
Język UML (Unified Modelling Language)
Zrównoleglanie programu sekwencyjnego
UML rozszerzenie Seminarium magisterskie
Projektowanie Aplikacji Komputerowych
UML Unified Modeling Language
Co UML może zrobić dla Twojego projektu?
Bartosz Walter Prowadzący: Bartosz Walter
Tomasz Jabłoński Michał Ziach
Diagramy interakcji Jacek Górski gr
Diagramy klas w języku UML
Diagram czynności (Activity Diagrams)
Wstęp do programowania obiektowego
Projektowanie i programowanie obiektowe II - Wykład IV
Projektowanie i programowanie obiektowe II - Wykład II
Wstęp do interpretacji algorytmów
Projektowanie - wprowadzenie
Diagramy czynności.
Projektowanie dynamiki - diagramy interakcji
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Wykład 2 Cykl życia systemu informacyjnego
Budowa algorytmów Algorytm: skończony ciąg operacji wraz z ściśle sprecyzowanym porządkowaniem ich wykonywania, które po realizacji dają rozwiązanie dowolnego.
Oskar Ośko Mateusz Skoczewski Michał Sułek
C.d. wstępu do tematyki RUP
Unified Modeling Language graficzny język wizualizacji, specyfikowania, tworzenia i dokumentowania systemów informatycznych.
Podstawy programowania
Źródła: podręcznikopracował: A. Jędryczkowski.
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
Dziedziczenie Maciek Mięczakowski
Związki w UML Do zrobienia jest: -Przerysować jak ktoś ma Visio te dwa diagramy tak żeby podmienić tylko nazwy a reszta Taka sama, -I dodać po jednym zdaniu.
Elżbieta Fiedziukiewicz
Programowanie obiektowe – język C++
Programowanie obiektowe 2013/2014
Modelowanie obiektowe Diagramy czynności
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Modelowanie obiektowe Diagramy sekwencji
Unified Modeling Language - Zunifikowany Język Modelowania
Wprowadzenie do UML dr hab. inż. Kazimierz Subieta profesor PJWSTK.
Modelowanie obiektowe Diagramy klas
Programowanie w języku C++
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
ZAPIS BLOKOWY ALGORYTMÓW
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Diagram aktywności (czynności)
Diagram przypadków użycia
Diagram klas Kluczowymi elementami są: klasy (class)
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Przykłady analiza i projektowanie
Modelowanie obiektowe - system zarządzania projektami.
Diagram czynności Diagram czynności (activity diagram) służy do modelowania dynamicznych aspektów systemu. Diagram czynności przedstawia sekwencyjne lub.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Projekt modułu Nazwa całego projektu Nazwa modułu Imię i Nazwisko Inżynieria Oprogramowania II dzień, godzina rok akademicki W szablonie na niebiesko zamieszczone.
Diagramy przepływu danych
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Unified Modeling Language
Wstęp do interpretacji algorytmów
Notacja biznesowa BPMN Piotr Kasprzyk.
Inżynieria systemów informacyjnych
T. 18. E Proces DGA - Działania (operatorka).
Diagramy interakcji Kamil Kuliczkowski.
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

UML Zunifikowany język modelowania Dariusz Badura

Dlaczego UML ? UML (ang. Unified Modeling Language) jest językiem modelowania, który przeszedł proces standaryzacyjny w ramach organizacji Object Management Group i jest obecnie jej standardem. Stanowi graficzną notację wykorzystywaną do tworzenia modeli opisywanego systemu. UML wspomaga przejście do obiektowości: powstał na podstawie obiektowych metod analizy i projektowania oprogramowania.

UML Głównym powodem używania UML’a jest komunikacja. Język naturalny jest nieprecyzyjny, gdy opisywane pojęcia charakteryzują się złożonością. Kod jest precyzyjny, ale za szczegółowy i niezrozumiały dla odbiorcy oprogramowania.

UML definiuje ... notację i semantyki dla następujących dziedzin: · Interakcje użytkownika lub model przypadków użycia (ang. Use Case Model) – opisuje brzeg (granice) i wzajemne oddziaływanie systemu i użytkowników. Odpowiada pod pewnymi względami modelowi wymagań. · Model oddziaływania i komunikacji – opisuje jak obiekty w systemie będą oddziaływały wzajemnie dla wykonania pracy (zadania).

UML definiuje ... dziedzin: Model stanów i dynamiki – diagram stanów opisuje stany oraz warunki, które przyjmują klasy w czasie. Graf aktywności opisuje przepływy prac które implementować będzie system. Model logiczny lub klas – opisuje klasy i obiekty, z których składa się system. Fizyczny model komponentów – opisuje oprogramowania (i czasami komponenty sprzętowe), tworzące system.

UML definiuje ... dziedzin: Fizyczny model wdrożenia – opisuje fizyczną architekturę i wdrożenie (rozmieszczenie) komponentów w architekturze sprzętowej. UML definiuje także mechanizmy rozwinięcia dla poszerzenia UML do objęcia również specjalizowanych potrzeb (np. rozszerzenie modelowania procesów biznesowych)

Związki W modelowaniu obiektowym wyróżnia się trzy najważniejsze rodzaje związków: Ø zależności, które reprezentują używanie danej klasy przez inną; Ø uogólnienia, które obrazują relacje między klasami ogólnymi a klasami szczegółowymi; Ø powiązania, które są związkami strukturalnymi między obiektami;

Zależność Zależność to związek użycia. Zmiany dokonane w specyfikacji jednego elementu mogą mieć wpływ na inny element, który używa tego pierwszego, ale niekoniecznie na odwrót. Na diagramie związek ten jest przedstawiony jako linia przerywana z grotem otwartym skierowanym na element, od którego coś zależy.

Uogólnienie Uogólnienie to związek między elementem ogólnym (nadklasą bądź przodkiem) a pewnym jego rodzajem (podklasą lub potomkiem). Uogólnienie polega na tym, że potomek może wystąpić wszędzie tam, gdzie jest spodziewany przodek, ale nie na odwrót. Potomek dziedziczy wszystkie właściwości przodka, a zwłaszcza atrybuty i operacje. Potomek może mieć także własne cechy oprócz tych, które odziedziczył po przodku. Uogólnienie jest przedstawiane na diagramie jako linia ciągła zakończona zamkniętym, niewypełnionym grotem wskazującym przodka.

Powiązanie Powiązanie to związek strukturalny, który wskazuje, że obiekty jednego elementu są połączone z obiektami innego. Powiązania między dwiema klasami oznacza, że można przejść z obiektu z jednej z tych klas do obiektu drugiej i vice versa. Na diagramie powiązanie jest przedstawione jako linia ciągła.

Liczebność Liczebność jest ważnym aspektem powiązania. Określa, ile obiektów z jednej klasy może być powiązanych z jednym obiektem innej klasy. W UML stosuje się gwiazdkę (*) na oznaczenie więcej lub wiele. Or (lub) może być reprezentowane przez dwie kropki np. „1..*” oznacza „jeden lub więcej”, bądź przez przecinek np. „5,10” oznacza „5 lub 10”.

Powiązanie zwrotne Powiązanie zwrotne – czasami klasa jest powiązana ze sobą. przedstawia się to kreśląc linię powiązania od prostokątnej ikony klasy z powrotem do tejże ikony.

Agregacja Klasa może składać się z wielu komponentów. Jest to specjalny związek zwany agregacją. Związek „całość-część”, w którym klasa reprezentuje większy element („całość”) składający się z mniejszych („części”). Na diagramie wyróżnia się ją poprzez dodanie do zwykłego symbolu powiązania pustego rombu po stronie całości. Agregacja całkowita to szczególnie silny typ agregacji, w której każdy komponent może należeć tylko do jednej całości.

Agregacja – symbole Agregację całkowitą oznacza się tak samo jak zwykłą, z tym, że romb agregacji całkowitej jest wypełniony.

Diagramy modelowania strukturalnego Diagram klas lub struktury – dotyczy statycznego wyglądu perspektywy, diagram ten skupia klasy, interfejsy, kooperacje oraz oczywiście związki pomiędzy nimi. Diagram obiektów – przedstawia obiekty oraz ich związki, diagram odzwierciedla pewne egzemplarze występujące na diagramie klas. Diagram mieszany – diagram dostarczjący znaczenia warstw w strukturze elementów skupiający się na wewnętrznych detalach, konstrukcji i zależnościach. Diagram komponentów – uwidacznia zależności pomiędzy fizycznymi elementami oprogramowania – komponentami. Diagram wdrożenia – odnosi się do statycznej perspektywy końcowego etapu podczas wytwarzania systemu, występują tu węzły oraz komponenty które są ich składnikami.

Diagramy modelowania zachowania Diagram przypadków użycia – widnieją tu przypadki użycia, aktorzy czerpiący z nich korzyści oraz związki między nimi. Diagram przebiegu (sekwencji) – przedstawia dynamiczne aspekty tworzonego systemu, jest to rodzaj diagramu przedstawiający interakcję obiektów i związków między nimi skupiający się na kolejności przesyłania komunikatów w czasie. Diagram kooperacji – wynika z tych samych założeń co diagram przebiegu – interakcji, natomiast tu uwidacznia się organizację strukturalną.

Diagramy modelowania zachowania Diagram stanów – odnosi się do przedstawienia zmian zachodzących w systemie, modelujemy w nim zachowanie pewnych elementów. Diagram czynności – ilustruje przepływ sterowania od czynności do czynności, modelujemy tu dynamiczne aspekty tworzonego systemu. Diagram przebiegów czasowych – połączenie diagramów sekwencji i stanów dla dostarczenia informacji o obiektach w czasie i komunikatach zmieniających te stany

Diagram przypadków użycia Model przypadków użycia opisuje proponowaną funkcjonalność nowego systemu. Przypadek użycia przedstawia dyskretną jednostkę oddziaływania pomiędzy użytkownikiem (człowiek lub maszyna) a systemem. Przypadek użycia jest pojedynczą jednostką oznaczającą pracę; na przykład logowanie się do systemu, rejestrowanie się w systemie i utworzenie polecenia są to przypadki użycia. Każdy przypadek użycia posiada opis, który obejmuje funkcjonalność wbudowywaną do proponowanego systemu.

Opis przypadku użycia ... ... będzie zawierał ogólnie: 1. Ogólne uwagi i noty opisujące przypadek użycia; 2. Wymagania – Rzeczy, które przypadek użycia musi umożliwić użytkownikowi do wykonania, takie jak <możliwość zlecenia uaktualniania>, <możliwość polecenia modyfikacji> & etc. 3. Ograniczenia – reguły odnośnie możliwości i niemożliwości wykonania, zawierające: i) pre-warunki, które muszą być spełnione przed uruchomieniem przypadku użycia – np. <polecenie utworzenia> musi poprzedzać <polecenie modyfikacji>; ii) post-warunki, które muszą być spełnione po uruchomieniu przypadku użycia, np. <polecenie jest modyfikowane i spójne>; iii) niezmienność: są one zawsze spełnione – np. polecenie musi zawsze posiadać numer użytkownika .

Opis przypadku użycia ... ... będzie zawierał ogólnie: 4. Scenariusze – Sekwencyjne opisy kroków wypełniających przypadek użycia. Mogą zawierać liczne scenariusze, do zaspokojenia potrzeb wyjątkowych okoliczności i różnych ścieżek procesów. 5. Diagramy scenariuszy – diagramy scenariuszy przedstawienia przebiegu pracy – podobne do (4) lecz przedstawione graficznie. 6. Dodatkowe atrybuty takie jak faza implementacji, numer wersji, współczynnik złożoności, stereotyp i status.

Formalna specyfikacja przypadku użycia Wymagania. Są to formalne wymagania funkcjonalne, które musi dostarczać przypadek użycia do końcowego użytkownika. Odpowiadają one funkcjonalnym specyfikacjom zawartym w strukturalnych metodologiach. Wymaganie jest umową, że przypadek użycia wykona jakąś akcję (aktywność) lub dostarczy systemowi jakąś wartość.

Formalna specyfikacja przypadku użycia c.d. Ograniczenia. Są one formalnymi regułami i ograniczeniami (limitations), z którymi realizowane są przypadki użycia, i obejmują warunki przed-, po- i niezmiennicze. Warunek „przed” określa (precyzuje) co musi się wpierw wydarzyć lub co musi mieć miejsce przed uruchomieniem przypadku użycia. Warunek „po” dokumentuje co musi być spełnione (true) po wypełnieniu przypadku użycia. Niezmienność wyszczególnia co powinno być spełnione podczas przeprowadzania przypadku użycia.

Formalna specyfikacja przypadku użycia c.d. Scenariusze. Scenariusze są formalnym opisem przebiegu zdarzeń, które mają miejsce podczas realizacji przypadku użycia. Są one zazwyczaj opisane tekstem i odpowiadają tekstowym reprezentacjom diagramu sekwencji.

Definicja przypadku użycia ciąg akcji wykonywanych przez system, które dostarczają określonemu aktorowi godnego uwagi wyniku, (wg. OMG) spójny zbiór funkcjonalności dostarczanej przez system reprezentowany jako ciąg komunikatów wymienianych pomiędzy systemem a aktorem.

Relacje pomiędzy przypadkami użycia <<include>> stosowany w przypadku zawierania się jednego przypadku w drugim, głównie w celu uproszczenia diagramu; <<extended>> stosowany podczas rozszerzenia przypadku użycia o inny, zwyczajowo gdy bazowy przypadek nie wystarcza; Symbol uogólnienia, gdzie przypadek dziedziczy wartości i zachowanie przodka , i uzupełnia je o swoje cechy

Przykład modelowania przypadków użycia dla serwisu internetowego

„włączania przypadku użycia” Związki typu „włączanie przypadku użycia” – polegają na włączeniu przebiegu podstawowego jednego z przypadków użycia do przebiegu drugiego, tak jak to pokazano na rysunku. Możemy zobaczyć, że w przebieg podstawowy bazowego przypadku użycia, został niejako wtrącony przebieg innego przypadku użycia.

„rozszerzenie przypadku użycia” Związki typu „rozszerzenie przypadku użycia” – opisują, w jaki sposób przypadek rozszerzający rozszerza ciąg iteracji między systemem i aktorem przypadku bazowego. Ilustruje rysunek, zaczerpnięty z dokumentacji dostarczanej przez Rational-a.

Generalizacja Generalizacja to zależność pokazująca, że przypadek użycia (nazwijmy go potomnym) dziedziczy i uszczegóławia cechy funkcjonalne swojego przodka (przypadku nadrzędnego). Jest tu analogiczne podejście jak przy dziedziczeniu klas w obiektowo zorientowanym projektowaniu systemów informatycznych.

Aktor Aktorem może być każdy obiekt, który jakoś komunikuje się z systemem – wymienia z nim komunikaty. Podstawowe typy podmiotów, które podczas modelowania przypadków użycia mogą się przerodzić w aktorów: · użytkownik/udziałowiec systemu – człowiek, organizacja, komórka organizacyjna, itp. · sprzęt komputerowy – wszelakiego rodzaju sprzęt elektroniczny, czujniki, czytniki, komputery, itp. · oprogramowanie – systemy informatyczne, oprogramowanie narzędziowe, sterowniki, serwisy webowe, bazy danych, itp. · zegar (ang. timer) –czas, generowanie czasu, generowanie impulsów zegarowych.

Aktor - dziedziczenie Rzadko się zdarza by system był na tyle mały by podczas jego modelowania użyć jednego aktora. Jest ich wielu i często ich role w systemie są bardzo podobne, pokrywają się i ewentualnie różnią jedną lub kilkoma funkcjami.

Diagram klas Diagram klas opisuje typy obiektów w systemie i różne rodzaje statycznych relacji między nimi. Klasa zawiera atrybuty i operacje, czyli procesy, które klasa potrafi wykonać. Asocjacje reprezentują związki pomiędzy instancjami klas. Każda asocjacja ma dwa punkty końcowe. Punkt końcowy posiada krotność, która wskazuje ile obiektów może brać udział w danym związku. Strzałki na kreskach asocjacji wskazują „nawigowalność”, czyli możliwość przejścia z klasy do klasy. Uogólnienie jest związane z dziedziczeniem w języku programowania. Elementy klas można eksponować bądź ukrywać.

Dostępność elementów klas + dostępność publiczna: oznacza, że każda inna klasa może dowolnie wpływać na wartość danego atrybutu # dostępność chroniona: dany atrybut może być obserwowany tylko przez jego klasę macierzystą lub jej podklasy - dostępność prywatna: tylko metody klasy macierzystej mogą odczytywać i modyfikować dany atrybut

Elementy diagramu klas Symbol klasy zawiera cztery odrębne części: nazwę klasy atrybuty operacje oraz zobowiązania klasy. Interfejs można scharakteryzować jako zestaw operacji, które klasa udostępnia innym klasom, przedstawiany bardzo często symbolem klasy ze stereotypem <<interface>> powiązanie, występuje, gdy między klasami istnieje związek znaczeniowy, np. w przykładzie klasa klient jest powiązana z informacją, na zasadzie wielu klientów czyta wiele informacji;

Elementy diagramu klas – związki dziedziczenie, nazywane również uogólnieniem, dotyczy sytuacji gdy jedna klasa (podklasa) dziedziczy od drugiej klasy (nadklasy) atrybuty; zależność jednej klasy od drugiej w tym znaczeniu, że w sygnaturze jednej klasy używamy drugiej, strzałka wskazuje na klasę niezależną; agregacja oznacza zależność klasy jako części składowej drugiej klasy agregacja całkowita, jako agregacja względem tylko jednej klasy ; usunięcie klasy oznacza usunięcie również klasy agregowanej; realizacja, związek pomiędzy klasą a interfejsem, strzałka wskazuje na interfejs

Przykład 1

Przykład 2

Przykład 3

Przykład 4

Zagnieżdżanie Zagnieżdżenie jest połączeniem, które pokazuje, że element źródłowy jest zagnieżdżany we wskazywanym – celowym elemencie.

Diagram kompozycji (mieszany) ... pokazuje wewnętrzną strukturę klasyfikacji, zawierania się oddziaływań punktów do innych części systemu. Pokazuje konfigurację i relacje części, które ze sobą współpracują dla zachowania zawartej klasyfikacji. Elementy klas zostają opisane z dużą szczegółowością w poszczególnych sekcjach diagramu klas. Ta część opisuje drogę, która pozwala prezentować klasy jako kompozycja elementów uwidaczniająca interfejsy porty i wydzielone części.

Diagram kompozycji

Diagram kompozycji

Diagram sekwencji (przebiegu) Diagramy sekwencji: przedstawiają zachowanie systemu dotyczące jednego przypadku użycia. Jest to jeden z dwóch typów diagramów interakcji. Diagram obrazującym interakcję obiektów z uwypukleniem czasu. To oddziaływanie obiektów obrazuje nam choćby scenariusz danego przypadku użycia. Obiekty umieszczamy na górze, czas jest przedstawiony na linii znajdującej się pod danym obiektem. Czas jego aktywności uwidacznia prostokąt na „jego linii czasu”.

Diagram sekwencji Komunikaty, które są przesyłane pomiędzy obiektami możemy rozpatrywać na trzy różne sposoby: proste (przekazanie sterowania od obiektu do obiektu), synchroniczne (obiekt po wysłaniu komunikatu czeka na odpowiedź), asynchroniczne (wysłanie komunikatu przez obiekt nie powoduje wstrzymanie jego działań) .

Diagram sekwencji c.d. Wyróżniamy podstawowy podział diagramu przebiegu tzn. diagram przebiegu egzemplarzowy gdzie jest przedstawiony jeden scenariusz danego przypadku użycia oraz diagram przebiegu ogólny gdzie rozpatrujemy możliwe scenariusze.

Diagramy sekwencji - oznaczenia

Diagramy sekwencji - oznaczenia Symbol Znaczenie komunikat prosty, który może być synchroniczny lub asynchroniczny komunikat prosty powrotu „return” (optionalne) komunikat synchroniczny komunikat asynchroniczny

Diagram sekwencji c.d. Możliwe jest tworzenie i usuwanie obiektów w trakcie działania programu i diagram ten jest w stanie zrealizować tą potrzebę wizerunku. Tworzony obiekt przedstawiamy zwyczajnie w postaci prostokąta zawierającego jego nazwę, umieszczając go niżej od już istniejących. Komunikat „Create” tworzy obiekt natomiast „destroy” usuwa obiekt.

Diagram sekwencji c.d. Dopuszczalne jest przedstawienie rozgałęzienia if (warunek jeżeli jest przedstawiony w nawiasach kwadratowych) oraz pętli while (warunek dopóki przedstawiony w nawiasach prostokątnych z gwiazdką po lewej stronie). Rekurencja również jest rozwiązywalną konstrukcją. Przedstawiamy jako strzałkę wychodzącą i wchodzącą do miejsca aktywacji obiektu. Możliwe jest również umieszczanie na tej linii czasu, stanów znanych z diagramów stanów poszczególnych obiektów.

Przykład 1

Przykład 2

Diagram sekwencji – inny obraz

Diagramy współdziałania (kooperacji) Diagram obrazuje dynamiczne aspekty systemu. Jest rozszerzeniem diagramu obiektów, gdzie oprócz obiektów i występujących powiązań przedstawia się również komunikaty pomiędzy tymi obiektami. Diagram kooperacji przedstawia działania w przestrzeni – czyli komunikujące się w odpowiedniej kolejności obiekty bez wyszczególnionego czasu jak to było w diagramie przebiegu. Strzałka symbolizująca komunikat jest opatrzona w nazwę oraz numer porządkowy kolejności komunikatów, który umożliwia dodatkowo uchwycenie zagnieżdżonych komunikatów.

Diagram współdziałania Występują w nim warunki umieszczone w nawiasach prostokątnych oraz nawiasy z dodatkową gwiazdką pętle - while. Możliwe jest również pokazanie zmian stanów obiektów, w tym celu umieszcza się ten sam obiekt w dwóch stanach połączonych przerywaną linią stereotypowaną jako <>. Często również korzysta się ze stereotypu <> który, przedstawia komunikat przyczyniający się do powstania obiektu.

Diagram współdziałania Konieczne czasami bywa zaprezentować obiekty wielokrotne gdzie jeden z obiektów inicjujących przesyła komunikat do wielu obiektów jednej klasy, które czasami należy obsługiwać w odpowiedniej kolejności – i to również się tu obrazuje zapisem „1..n”. W następstwie wysłania komunikatu może być zwrócenie wyniku – przedstawia się zapisem „nazwa wartości do zwrócenia := operacja która ma być wykonana (w nawiasie argumenty wyliczeń)”. Diagram kooperacji zawiera taki sam symbol obiektu, komunikatów oraz dodatkowo: obiekt zmieniający stan, symbol aktywny, obiekt wielokrotny.

Diagram współdziałania - przykład

Diagram obiektów ... jest obrazem obiektów w systemie w określonej chwili; przydatny, gdy możliwe powiązania pomiędzy obiektami są skomplikowane.

Diagram stanów ... są techniką opisu zachowania systemu. 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 docierających do niego zdarzeń. Najczęściej są rysowane dla pojedynczych klas, aby pokazać cały cykl życia obiektu. Każdy diagram ma początek i pierwsze przejście. Przejścia, zwane akcjami, oznacza się etykietami „zdarzenie [warunek] / akcja”. Stan nazywa się zdarzeniem. Akcje są związane z przejściami i traktuje się je jako procesy atomowe, szybkie i nie przerwane. Czynności są związane ze stanami i mogą trwać dłużej. Czynność może zostać przerwana przez jakieś zdarzenie.

Diagram stanów Podobnie do diagramu czynności, diagram ten czasami ma przypisywaną nazwę maszyny stanowej ale w tym innym znaczeniu, że tu uwypukla się stany obiektów a tam przepływ sterowania . Przedstawia poszczególne stany i przejścia danego obiektu. Istotną różnicą jest również fakt że diagram ten skupia swoją uwagę na stanach jednego elementu - obiektu, a nie jak to było w przypadku wcześniejszych diagramów (np. diagramów klas) gdzie przedstawialiśmy grupę elementów. Symbol stanu zawiera standardowo nazwę (w przykładzie dwa stany podczas tworzenia komentarza), zmienne ( np. autor komentarza może być zmienną), oraz czynności (często spotykane: entry – określa co się dzieje przy wejściu do stanu, exit – określa co się dzieje przy wyjściu ze stanu, do – co się dzieje w danym stanie).

Diagram stanów – symbole

Diagram stanów – przykład

Diagram stanów – przykład

Diagram czynności ... opisuje jak uszeregowane są działania oraz daje możliwość opisu czynności warunkowych lub współbieżnych - odmiana diagramu stanów. Czynność jest rozumiana jako stan działania lub działalności, wykonywanie pewnego rzeczywistego procesu. Proces warunkowy jest określony za pomocą rozgałęzienia i scalenia.

Diagram czynności Rozgałęzienie ma jedno wejście i kilka warunkowych wyjść. Scalenie ma kilka wejść i jedno wyjście. Scalenie oznacza koniec procesów warunkowych rozpoczętych rozgałęzieniem. Procesy współbieżne są realizowane za pomocą rozwidleń i złączeń. Rozwidlenie ma jedno wejście i kilka wyjść. Kiedy odpalane jest wejście, równocześnie odpalane są wszystkie wyjścia. Złączenie ma wiele wejść i jedno wyjście – kończy rozwidlenie.

Diagram czynności – przykład

Diagram czynności – przykład

Diagram czynności – podział wg obiektów

Ogólny diagram czynności

Diagramy pakietów ... są stosowane do podziału modelu na logiczne części lub ‘pakiety’ i opisują oddziaływanie pomiędzy nimi na wysokim poziomie opisu. Odzwierciedlają organizację pakietów i rozkład ich elementów

Diagram komponentów ... pokazuje różne składowe systemu i ich powiązania. Komponent reprezentuje jeden fizyczny moduł kodu systemu. Często komponent to jeden pakiet. Zależności istniejące pomiędzy komponentami pokazują, jak zmiany dotyczące jednej części wpływają na pozostałe. Na diagramach komponentów można przedstawiać zależności wszelkiego rodzaju, w tym kompilacyjne i komunikacyjne.

Interfejsy

Przykład komponentów serwera

Komponenty zabezpieczeń

Diagram wdrożenia ... przedstawia fizyczne powiązania pomiędzy składowymi programistycznymi i sprzętowymi w dostarczanym systemie. Każdy węzeł na diagramie przestawia pewien rodzaj jednostki obliczeniowej, najczęściej element sprzętowy. Połączenia pomiędzy węzłami wskazują ścieżki komunikacji, które będą służyły elementom systemu do interakcji.

Diagram wdrożenia Węzeł fizyczny Połączenie

Diagram wdrożenia

Komponenty i węzły

Diagram przebiegów czasowych ... diagramy są używane do prezentowania zmian stanów lub wartości jednego lub kilku elementów w czasie. Może to być oddziaływanie pomiędzy zdarzeniami w czasie a czasem i trwaniem warunków (ograniczeń), które tym rządzą Linia przebiegu stanów ... pokazuje zmianę stanu pozycji w czasie. Linia X prezentuje upływający czas w dowolnych jednostkach, podczas gdy linia Y jest etykietowana zadaną listą wartości.

Diagram przebiegów czasowych Linia przebiegu wartości ... przedstawia zmianę wartości pozycji w czasie. Linia X – zmiana w czasie wyrażona w dowolnej jednostce. Wartość jest prezentowana pomiędzy parą linii poziomych przecinających się przy każdej zmianie wartości.

Diagram przebiegów czasowych