wersja turbo
Transkrypt
wersja turbo
UML 2.0 wersja turbo Diagramy UML ● ● ● ● ● diagramy przypadków użycia diagramy klas diagramy czynności diagramy sekwencji diagramy obiektów ● ● ● ● ● diagramy komunikacji diagramy czasowe diagramy stanów diagramy komponentów diagramy wdrożenia Diagram przypadków użycia Przykładowy diagram ● ● ● System - reprezentowany przez szary prostokąt - jest to byt udostępniający użytkownikom pewne scenariusze/sposoby korzystania z niego Aktor - byt niezależny (zewnętrzny) względem systemu, a wykorzystujący go do swoich celów Przypadki (scenariusze) użycia - reprezentowane przez elipsy są udostępnianymi aktorom przez system możliwościami jego wykorzystania. Przykładowy diagram ● ● Linia ciągła - symbolizuje udział danego aktora w przebiegu danego przypadku użycia Linia z pustą strzałką specjalizacja - byt z którego strzałka wychodzi jest bardziej specjalizowaną wersją bytu wskazywanego. Zależność można stosować zarówno do aktorów jak i przypadków użycia. Przykładowy diagram ● ● Linia o stereotypie 'include' oznacza, że wykonanie scenariusza źródłowego zawsze wymaga wykonania scenariusza wskazywanego jako podrzędnego. Linia o stereotypie 'extend' oznacza, że scenariusz źródłowy może zostać użyty podczas wykonywania scenariusza wskazywanego przez strzałkę. Związki te różnią się ● koniecznością zachodzenia (include - zawsze, extend - opcjonalnie) ● kierunkiem zawierania Diagram czynności Diagram 'Zmontuj komputer' ● ● ● ● ● Prostokąt z zaokrąglonymi rogami może otaczać cały diagram, pozwala oznaczyć go nazwą i lepiej wyróżnić czynność jeśli mamy ich kilka na jednym diagramie Węzeł początkowy - wypełnione koło początek przetwarzania Węzeł końcowy - wypełnione koło z obwódką - koniec przetwarzania Czynności - oznaczane owalami etapy przetwarzania Strzałki zwykłe - przejścia między czynnościami i innymi węzłami przetwarzania Diagram 'Zmontuj komputer' ● ● ● ● Węzły decyzyjne (decision node) romby z jednym wejściem i wieloma wyjściami. Węzły reprezentujące wybór jednej ze ścieżek przetwarzania. Przy każdym wyjściu znajduje się opisany w nawiasach kwadratowych warunek (guard) skorzystania z danej ścieżki przetwarzania. Specjalny warunek to [else] wybierany, gdy żaden inny warunek nie jest spełniony. Węzły połączenia (merge node) również romby, ale z wieloma wejściami i jednym wyjściem połączenie ścieżek przetwarzania Diagram 'Zmontuj komputer' ● ● Rozwidlenia (forks) - oznaczane grubą kreską, z pojedyńczym wchodzącym przepływem i wieloma wychodzącymi pozwala rozgałęzić przepływ na kilka zachodzących jednocześnie. Scalenia (joins) - również gruba kreska, ale z wieloma przepływami wchodzącymi, jednym wychodzącym. Pozwala scalić kilka równoczesnych przepływów w jeden. Przetwarzanie jest kontynuowane dopiero gdy wszystkie przepływy wchodzące dotrą do scalenia. Partycje (partitions) Partycje oddzielamy ciągłymi lub przerywanymi liniami i opisujemy u góry. Pozwalają one oddzielić jednostki/byty odpowiedzialne za wykonywanie poszczególnych czynności. Inne elementy ● ● Niektóre elementy mogą zastępować węzły początkowe/końcowe – obiekt w przypadku gdy jest daną wejściową/wyjściową na której operuje czynność – sygnały w wypadku gdy wykonanie czynności jest powodowane przez sygnał – zdarzenia czasowe gdy upływ czasu powoduje wykonanie czynności Przerwanie pojedyńczego przepływu jest użyteczne w wypadku istnienia równoczesnych przepływów stworzonych przez rozwidlenie Diagramy sekwencji Przykładowy diagram sekwencji ● ● ● Prostokąty - uczestnicy interakcji - mogą być oznaczani tylko przez nazwę, tylko przez typ, lub przez oba Linie życia - przerywane linie wywiedzione z uczestników Belka aktywności - prostokąt na linii życia symbolizujący, że przetwarzanie odbywa się w danej chwili w danym uczestniku Przykładowy diagram sekwencji ● ● Tworzenie uczestników – Albo zakładamy, że uczestnik istnieje przed interakcją – Albo jest tworzony przez innego użytkownika - sygnał o stereotypie 'create' Niszczenie uczestników – uczestnik może zostać zniszczony przez innego – symbol krzyżyka – sygnał o stereotypie 'destroy' – linia życia się kończy Przykładowy diagram sekwencji ● ● Sygnał synchroniczny - zwykła strzałka - kontrola jest przekazywana do innego użytkownika Sygnał powrotny - strzałka przerywana - odpowiedź na wcześniejszy sygnał - kontrola jest przekazywana z powrotem do obiektu wywołującego – ● może być pominięty dla sygnałów synchronicznych Sygnał asynchroniczny - pełna strzałka - wywołanie bez oczekiwania na powrót, kontrola pozostaje w obu uczestnikach Diagramy komponentów Galeria raz jeszcze ● Komponenty (prostokąty z symbolem wtyczki, lub stereotypem 'component') symbolizują zamknięte elementy systemu, komunikujące się z pozostałymi elementami przy pomocy interfejsów ● Komponent: – udostępnia interfejsy – wykorzystuje interfejsy – jest implementowany przez klasy Galeria raz jeszcze ● Interfejs udostępniany - symbol kuli oznaczony nazwą interfejsu - oznacza, że dany komponent udostępnia taki interfejs do wykorzystania przez inne komponenty ● Interfejs wymagany - symbol gniazda (półokrąg), oznaczony nazwą interfejsu - oznacza, że dany komponent potrzebuje innych komponentów udostępniających dany interfejs, aby zaimplementować część swojej funkcjonalności. Galeria raz jeszcze ● ● Interfejsy wymagane i udostępniane łączymy strzałkami zależności Wewnątrz komponentu możemy wrysować diagram klas - charakteryzujący na wybranym poziomie szczegółowości wewnętrzną strukturę komponentu i jego implementację. Diagram stanów Godzina policyjna ● ● ● Stany w jakich może się znajdować obiekt oznaczamy prostokątami z nazwą danego stanu Każdy stan może posiadać jedno lub więcej przejść do innych stanów. Przejścia te oznacza się strzałką zwykła wraz z opisem informującym o sytuacji, w jakiej zachodzi przejście. Możemy używać węzłów z diagramów czynności jako pseudostanów początkowego i końcowego. Godzina policyjna ● Stan może zawierać wewnątrz siebie informacje o: – entry - czynnościach wykonywanych przy każdym wejściu w dany stan – do - czynnościach wykonywanych w sposób ciągły przez cały czas trwania stanu – exit - czynnościach wykonywach przy wyjściu ze stanu