Tomasz Jabłoński Michał Ziach Diagramy Aktywności Tomasz Jabłoński Michał Ziach
Diagramy aktywności Diagramy aktywności łączą idee pochodzące z trzech źródeł: - diagramów zdarzeń J. Odell’a, - technik modelowania stanów i sieci Petriego. Są szczególnie użyteczne przy modelowaniu przepływów operacji czy też w opisie zachowań z przewagą przetwarzania współbieżnego.
Diagramy aktywności Diagramy aktywności służą do modelowania dynamicznych aspektów systemu w otoczeniu dowolnego bytu UML (np. Systemu, pod-systemu, operacji, klasy). Diagramy te przedstawiają przepływ sterowania od jednej aktywności do innej aktywności. Na diagramach aktywności można też zobrazować zmiany zachodzące w obiekcie gdy przechodzi on z jednej aktywności do drugiej aktywności w różnych fazach przepływu sterowania.
Diagramy aktywności Diagramy te mogą być wykorzystane do zobrazowania, wyspecyfikowania, utworzenia lub udokumentowania dynamiki zestawu obiektów. Może również zostać wykorzystany do modelowania przepływu sterowania wewnątrz aktywności. Może również zostać skojarzony z przypadkami użycia (do modelowania scenariusza postępowania). Różnica miedzy diagramem aktywności a diagramem interakcji jest taka że diagram interakcji przedstawia przepływ sterowania od obiektu do obiektu a diagram aktywności pokazuje przepływ między aktywnościami.
Składnia nazwa aktywności aktywność (z zaokrąglonymi końcami); dla przypomnienia - stan na diagramach stanu posiada zaokrąglone rogi przejście, rzadko opisywane, ponieważ z reguły oznacza zakończenie aktywności; może być opatrzone warunkiem, może też być oznaczone symbolem iteracji; akcje opisujące przejścia powinny być raczej dołączone do którejś z aktywności; kreska ciągła oznacza przepływ sterowania, a przerywana - przepływ obiektu romb, który może rozdzielać jedno przejście na kilka innych (opatrzonych warunkami) lub łączyć kilka alternatywnych przejść w jedno sztabka synchronizujaca (synchronization bar); może być typu “fork” (rozdzielenie jednej operacji na kilka przebiegających równolegle) lub typu “join” (złączenie kilku operacji równoległych w jedną) aktywność początkowa aktywność końcowa
Diagramy aktywności – przykład Osoba::Przygotowanie Napoju [nie ma kawy] [nie ma herbaty] Znajdź Napój [herbata znaleziona] [kawa znaleziona] (fork) Zrób herbatę Weź sobie wody Nasyp kawy do filtru Dolej wody do zbiornika Weź filiżankę Włóż filtr do maszynki Nalej kawę * [1..4] * [1..4] (join) Wypij światełko zgasło Włącz maszynkę Gotowanie kawy
Swimlanes Diagramy aktywności opisują przepływy operacji, ale nie specyfikują, kto jest odpowiedzialny za ich wykonanie: którzy ludzie czy które komórki organizacyjne (z perspektywy pojęciowej). Z perspektywy projektowej dotyczy to klas. Można opisywać każdą aktywność podając osobę czy klasę odpowiedzialną za jej wykonanie, ale być może wygodniejszym sposobem przenoszenia informacji tego rodzaju jest grupowanie aktywności odpowiednio do odpowiedzialności i umieszczanie ich w regionach rozdzielonych pionowymi liniami (jak na poprzedniej foli. Regiony, z powodu swojego wyglądu, są traktowane jak tory dla przepływów (tory pływackie) (swimlanes). Nazwy regionów odpowiadają nazwom osób, komórek organizacyjnych czy klas odpowiedzialnych za wykonanie aktywności.
Swimlanes - przykład Klient Dział Sprzedaży Magazyn Zamów towary Skompletuj zamówienie Zrealizuj zamówienie Płać Wyślij towary Odbierz zamówienie Zakończ zamówienie
Kiedy należy używać diagramów aktywności: Do analizowania przypadków użycia - gdy interesują nas bardziej operacje niezbędne do realizacji danego przypadku (czy tez wzajemne zależności między tymi operacjami), a nie to, kto jest odpowiedzialny za ich przeprowadzenie. Przypisanie operacji do obiektów jest wykonywane na etapie późniejszym z wykorzystaniem diagramów interakcji. Do zrozumienia interakcji zachodzących miedzy przypadkami użycia. Do modelowania przetwarzania wielowątkowego.
Kiedy nie należy używać diagramów aktywności: Do pokazywania współpracy miedzy obiektami w trakcie realizacji przypadku użycia - do tego bardziej nadają się diagramy interakcji. Do pokazywania zachowań obiektów w trakcie ich życia, w tym celu powinno się wykorzystywać diagramy stanów.
Zadanie Stworzyć diagram aktywności (z podziałem na tory) dla obsługi bankomatu. Założenia: aby dostać się do menu opcji, należy wprowadzić kod PIN. W przypadku 3 krotnego błednego PIN’u, koniec transakcji. opcje menu: sprawdzenie stanu konta, wypłata gotówki, wyloguj
Rozwiązanie zadania