Diagramy czynności.

Slides:



Advertisements
Podobne prezentacje
TRADYCYJNE METODY PLANOWANIA I ORGANIZACJI PROCESÓW PRODUKCYJNYCH
Advertisements

Związki w UML.
Projektowanie aplikacji równoległych Jarosław Kuchta.
Modelowanie aktywności
Obserwowalność System ciągły System dyskretny
Diagramy stanów i diagramy aktywności
Modelowanie przypadków użycia
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Tomasz Andrejczuk Łukasz Razmuk gr. 620
Modelowanie procesów biznesowych
Badania operacyjne. Wykład 2
Maciej I Stanisław Jedlińscy
Zrównoleglanie programu sekwencyjnego
MS Access 2000 Normalizacja Paweł Górczyński 2005.
Projektowanie Aplikacji Komputerowych
Tomasz Jabłoński Michał Ziach
Metody Sztucznej Inteligencji w Sterowaniu 2009/2010 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania.
Unified Modeling Language Wykład 5 Diagram czynności
Diagram czynności (Activity Diagrams)
Zadanie 1.
Projektowanie i programowanie obiektowe II - Wykład IV
Wstęp do interpretacji algorytmów
ZARZĄDZANIE PROCESAMI
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Projektowanie - wprowadzenie
Projektowanie dynamiki - diagramy interakcji
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
Inżynieria Oprogramowania
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Podstawy programowania
O relacjach i algorytmach
Prezentacja funkcjonalności dziennika e-klasa
Wyrażenia algebraiczne
Wykonanie: Iwona Szatkowska. Uwaga! Wszystkie opisane w instrukcji operacje oparte są o zapowiedzi oraz projekty odpowiednich ustaw i rozporządzeń. Te.
PHP: warunki, pętle, switch, break, continue
Automatyka i Robotyka Systemy czasu rzeczywistego Wykład 4.
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
Wykład 22 Modele dyskretne obiektów.
Algorytmy.
Obserwowalność i odtwarzalność
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
Spis treści W świecie algortmów -Budowa algorytmu
Zadanie 1.
Systemy operacyjne i sieci komputerowe
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Temat 7: Instrukcje warunkowe
Algorytmika.
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Diagramy czynności/aktywności (Activity Diagrams)
Diagram aktywności (czynności)
Przerzutniki bistabilne
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.
Diagramy przepływu danych
Wstęp do interpretacji algorytmów
Studia Podyplomowe IT w Biznesie Analiza dynamiczna w UML
E. Stemposz. UML i Analiza dynamiczna, Diagramy aktywności, Wykład 7, Slajd 1/39 Wykład 7 Model dynamiczny (1) Diagramy aktywności dr inż. Ewa Stemposz.
Algorytmy. Co to jest algorytm? Przepis prowadzący do rozwiązania zadania.
Algorytmy, sposoby ich zapisu.1 Algorytm to uporządkowany opis postępowania przy rozwiązywaniu problemu z uwzględnieniem opisu danych oraz opisu kolejnych.
Inżynieria systemów informacyjnych
Listy.
T. 18. E Proces DGA - Działania (operatorka).
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Diagramy czynności

Modelowanie dynamiki systemu Diagramy czynności Modelowanie dynamiki systemu Diagramy do modelowania dynamiki systemu: Diagram przypadków użycia Diagramy interakcji Diagram sekwencji Diagram komunikacji Diagram czynności Diagram stanu

Diagramy czynności Diagram czynności Diagram czynności – graficzne przedstawienie sekwencyjnych i (lub) współbieżnych przepływów sterowania oraz danych pomiędzy uporządkowanymi ciągami czynności, akcji i obiektów Służą do modelowania dynamicznych właściwości systemu Wszystkie akcje i (lub) czynności wykonywane w trakcie realizacji dowolnej funkcjonalności systemu tworzą pewien proces Diagramy czynności pozwalają w graficzny sposób pokazać ten proces - jakie akcje i (lub) czynności są wykonywane, kolejność ich wykonania oraz dane na których operują

Diagram czynności przykład Diagramy czynności Diagram czynności przykład Węzeł początkowy Węzeł połączenia Akcje / czynności Węzeł decyzyjny Przepływy sterowania Węzeł końcowy

Elementy diagramu czynności Diagramy czynności Elementy diagramu czynności Akcje Czynności Przepływy sterowania Węzły początkowe i końcowe Węzły decyzyjne i połączenia Węzły rozwidlenia i scalenia

Elementy diagramu czynności Diagramy czynności Elementy diagramu czynności Początek – punkt rozpoczęcia przepływu sterowania i danych. Zazwyczaj na diagramie występuję jeden punkt startowy, dopuszczalne jest jednak kilka punktów startowych Koniec – punkt zatrzymania wszystkich przepływów sterowania i danych. Na diagramie może występować wiele punktów końcowych

Elementy diagramu czynności Diagramy czynności Elementy diagramu czynności Zakończenie przepływu – punkt zatrzymania wybranego przepływu sterowania. Na diagramie może pojawić się więcej niż jedno zakończenie przepływu Przepływ sterowania – związek między dwiema czynnościami lub akcjami wskazujący, że po wykonaniu jednej czynności (lub akcji) sterowanie zostanie przekazane do drugiej czynności (lub akcji)

Diagramy czynności Akcje Akcja (ang. action) – elementarna jednostka specyfikacji zachowania reprezentująca transformację lub przetwarzanie w modelowanym systemie Ogólne właściwości: akcie są niepodzielne akcje nie mogą być przerywane czas trwania akcji z reguły jest nieznaczny akcje są aktywnymi krokami procesu wykonanie akcji prowadzi do zmiany stanu systemu lub przekazania pewnych danych

Diagramy czynności Czynności Czynność (ang. activity) – określone zachowanie złożone z logicznie uporządkowanych ciągów innych czynności, akcji oraz obiektów w celu wykonania pewnego procesu Ogólne właściwości: czynności są podzielne – na czynność składają się inne czynności i akcje czynności mogą być przerywane czas trwania czynności jest znaczący czynności reprezentują złożony element procesu biznesowego bądź przetwarzania informacji

Akcje - Czynności - przykład Diagramy czynności Akcje - Czynności - przykład Czynność Dokonaj rozliczenia zawiera dwie (pod)czynności: Oblicz dochód i Oblicz podatek (Pod)czynność Oblicz dochód jest procesem składającym się z (pod)czynności: Oblicz przychód i Oblicz koszty uzyskania oraz akcji obliczającej dochód

Diagramy czynności Węzeł decyzyjny [warunek 1] else [warunek 2] Węzeł decyzyjny (ang. decision node) – służy do utworzenia przepływów alternatywnych uzależnionych od spełnienia określonego warunku lub do wykonania iteracji (wielokrotne wykonywanie określonych czynności lub akcji)

Węzeł decyzyjny - właściwości Diagramy czynności Węzeł decyzyjny - właściwości Węzeł decyzyjny zawiera jeden przepływ wejściowy i przynajmniej dwa przepływy wyjściowe (alternatywne) Każdy przepływ wyjściowy opisany jest warunkiem Zbiór wszystkich warunków musi być kompletny, tj. pokrywać wszystkie możliwe wartości zmiennej decyzyjnej Warunki na przepływach alternatywnych nie mogą się nakładać – muszą być rozłączne

Węzeł decyzyjny - właściwości Diagramy czynności Węzeł decyzyjny - właściwości Dopuszcza się warunek typu else dla oznaczenia przypływu realizowanego w sytuacji, gdy żaden z warunków na alternatywnych przepływach wyjściowych nie jest prawdziwy Wybór przepływu wyjściowego dokonywany jest na podstawie warunku Może być realizowany tylko jeden przepływ wyjściowy

Diagramy czynności Węzeł połączenia Węzeł połączenia (ang. merge node)– służy do utworzenia połączenia alternatywnych przebiegów - oznacza koniec alternatywnego zachowania rozpoczętego węźle decyzyjnym

Węzeł połączenia - właściwości Diagramy czynności Węzeł połączenia - właściwości Węzeł połączenia zawiera przynajmniej dwa przepływy wejściowe (alternatywne) i jeden przepływ wyjściowy Przepływ wyjściowy jest realizowany, gdy zrealizowany zostanie jeden z przepływów wejściowych W UML 2.0 i wyżej zaleca się stosowanie węzłów połączenia dla każdego węzła decyzyjnego Istnieje możliwość łączenia węzła decyzyjnego z węzłem połączenia. W efekcie otrzymujemy węzeł posiadający wiele przepływów wejściowych i wiele przepływów wyjściowych. Działanie węzła polega na połączeniu kilku istniejących przebiegów alternatywnych i rozdzieleniu ich na inne przebiegi alternatywne

Węzły decyzyjne i połączenia - przykład Diagramy czynności Węzły decyzyjne i połączenia - przykład Po wykonaniu czynności Oblicz dochód sprawdzany jest poziom dochodu. W zależności od jego poziomu wykonywana jest odpowiednia akcja obliczania podatku. Tylko jedna z tych akcji zostanie wykonana.

Diagramy czynności Węzeł rozwidlenia Węzeł rozwidlenia (ang. fork node)– służy do punktu w którym następuje rozdzielnie jednego przepływu wejściowego na dwa lub więcej przepływów, które mogą być wykonywane równolegle (współbieżnie)

Węzeł rozwidlenia - właściwości Diagramy czynności Węzeł rozwidlenia - właściwości Rozwidlenie cechuje się jednym przepływem wejściowym oraz co najmniej dwoma przepływami wyjściowymi Przepływy wyjściowe mogą (ale nie muszą) być realizowane równolegle Czynności (lub akcje) wykonywane w równoległych przepływach mogą się komunikować

Diagramy czynności Węzeł scalenia Węzeł scalenia (ang. join node)– służy do oznaczenia punktu, w którym następuje scalenie (synchronizacja) równoległych przepływów - dochodzi tu do przekazania sterowania z wielu współbieżnych przepływów wejściowych do jednego przypływu wyjściowego

Węzeł scalenia - właściwości Diagramy czynności Węzeł scalenia - właściwości W węźle scalenia następuje oczekiwanie na ukończenie wszystkich równoległych przepływów (synchronizacja przebiegów) Zachowanie węzła scalania można dowolnie modyfikować dodając specyfikację scalania, tj. dodatkowego warunku scalania Warunek scalania jest sprawdzany każdorazowo po dotarciu sterowania z każdego z przepływów równoległych Spełnienie warunku scalania skutkuje przekazaniem sterowania dalej poza węzeł scalania

Węzły rozwidlenia i scalenia przykład Diagramy czynności Węzły rozwidlenia i scalenia przykład Akcje Słuchaj wykładu i Rób notatki mogą (ale nie muszą) być wykonywane równolegle. Proces zakończy się dopiero wtedy, gdy zakończą się obydwie akcje

Partycje Partycja – mechanizm grupowania elementów diagramu czynności Diagramy czynności Partycje Partycja – mechanizm grupowania elementów diagramu czynności Partycje dzielą diagram na wiersze i (lub) kolumny Partycje służą do oznaczenia akcji i (lub) czynności wykonywanych przez określonego aktora (rolę) lub w określonej lokalizacji Partycje znajdują zastosowanie głównie w biznesowych diagramach czynności (realizacja procesu biznesowego często wymaga współdziałania wielu aktorów) Alternatywnym rozwiązaniem w stosunku do partycji jest użycie adnotacji przy każdej akcji lub czynności

Diagramy czynności Partycje - przykład W procesie bierze udział trzech uczestników: Pracownik, Przełożony oraz Dział finansowy Każda z partycji zawiera akcje wykonywanego tylko przez jednego uczestnika

Diagramy czynności Węzeł obiektu Węzeł obiektu (ang. object node) – reprezentuje obiekt, który jest dostępny w określonym miejscu czynności W diagramach czynności występują dwa rodzaje przepływów: przepływ sterowania (ang. control flow) oraz przepływ danych (ang. data flow) Obiekty służą do oznaczenia przepływu danych Umieszczenie węzła obiektu pomiędzy dwiema akcjami lub czynnościami oznacza, że na danym etapie został utworzony, zmodyfikowany lub użyty pewien obiekt

Węzeł obiektu - przykład Diagramy czynności Węzeł obiektu - przykład Obiekt Zamówienie został utworzony w akcji „Pobierz zamówienie” i przesłany do czynności „Przetwarzaj zamówienie” Utworzenie i przesłanie obiektu Zamówienie można przedstawiać w postaci bloku umieszczonego pomiędzy akcjami i (lub) czynnościami (zob. diagram górny) lub w postaci tzw. przekaźników danych (zob. diagram dolny)

Diagramy czynności Zdarzenia czasowe Zdarzenia czasowe (ang. time event) – służą do modelowania zdarzeń zależnych od czasu

Zdarzenia czasowe - właściwości Diagramy czynności Zdarzenia czasowe - właściwości Zdarzeń czasowych używa się do modelowania okresu oczekiwania Okres oczekiwania podaje się w postaci określonej daty lub też w postaci względnej (liczba dni, godzin, minut, itp.) Zdarzenia czasowe służą również do modelowania przepływów cyklicznych, tj. przepływów rozpoczynających się w określonych momentach Zdarzenia czasowe mogą się pojawiać w dowolnym miejscu czynności, w tym również w miejsce węzła początkowego

Zdarzenia czasowe - przykład Diagramy czynności Zdarzenia czasowe - przykład Przykład 1: Po wykonaniu akcji „Dostarcz towar” następuje zatrzymanie procesu na trzy dni, po czym następuje wykonanie akcji „Wyślij rachunek” Przykład 2: Proces jest uruchamiany cyklicznie każdego dnia roboczego o godzinie 16. Zdarzenie czasowe występuje w miejsce węzła początkowego

Węzeł sygnału nadawanego Diagramy czynności Węzeł sygnału nadawanego Węzeł sygnału nadawanego (ang. send signal node) – służy do modelowania asynchronicznego wysyłania komunikatów

Węzeł sygnału nadawanego - właściwości Diagramy czynności Węzeł sygnału nadawanego - właściwości Komunikaty mogą być wysyłane do innych procesów jak i do siebie samych Po wysłaniu komunikatu następuje automatycznie przejście do wykonywania kolejnej akcji lub czynności Po wysłaniu komunikatu proces nie czeka aż odbiorca odbierze komunikat

Węzeł sygnału odbieranego Diagramy czynności Węzeł sygnału odbieranego Węzeł sygnału odbieranego (ang. receive signal node) – służy do modelowania asynchronicznego odbioru komunikatów

Węzeł sygnału odbieranego - właściwości Diagramy czynności Węzeł sygnału odbieranego - właściwości W węźle sygnału odbieranego proces oczekuje na pojawienie się pewnego, ściśle określonego komunikatu Po odebraniu komunikatu następuje przejście do kolejnych akcji lub czynności Węzeł sygnału odbieranego bez dochodzącego sterowania jest zawsze aktywny, tzn. cały czas może odbierać komunikaty Węzeł sygnału odbieranego z dochodzącym przepływem sterowania jest aktywny dopiero w chwili otrzymania sterowania

Sygnały nadawane i odbierane - przykład Diagramy czynności Sygnały nadawane i odbierane - przykład Przykład 1: Proces oczekuje na pojawienie się nowego zamówienia – węzeł sygnału odbieranego „Pobierz zamówienie”. Zamówienie może pojawić się w dowolnym momencie. Czynność „Przetwarzaj zamówienie” jest wykonywana po odebraniu sygnału o nowym zamówieniu. Przykład 2: Węzeł sygnału nadawanego „Wyślij żądanie autoryzacji” powoduje wysłanie żądania autoryzacji (np. karty kredytowej) i przekazanie sterowania do kolejnej akcji bez sprawdzania odpowiedzi. Ponieważ kolejna akcja („Odbierz odpowiedź”) jest węzłem sygnału odbieranego, nastąpi oczekiwanie na pojawienie się odpowiedzi, np. z systemu autoryzacji kart kredytowych

Diagramy czynności Obszary przerwań Obszar przerwań (ang. interruptable region) – służy do modelowania czynności które mogą być w każdej chwili przerwane Do efektywnego działania obszaru przerwań konieczne jest dodanie węzła sygnału odbiorczego wewnątrz obszaru przerwań Jego zadanie polega na oczekiwaniu na komunikat oznaczający przerwanie W chwili dotarcia tego komunikatu następuje przerwanie aktualnie wykonywanej czynności i przejście do wykonywania akcji następującej po węźle przerwania Jeśli komunikat o przerwaniu dotrze w trakcie wykonywania czynności spoza obszaru przerwań, wówczas nic się nie dzieje

Obszar przerwań - przykład Diagramy czynności Obszar przerwań - przykład Proces rozpoczyna się w chwili pobrania zamówienia – sygnał odbiorczy „Pobierz zamówienie”. Celem bloku przerwania jest dopuszczenie możliwości anulowania zlecenia w dowolnym momencie jego przetwarzania Pojawienie się sygnału „Anuluj zamówienie” przerywa przetwarzanie zamówienie po czy następuje przejście do akcji Usuń zamówienie Zamówienie może być anulowane tylko w czasie przetwarzania Po przejściu do akcji „Wyślij towar” anulowanie zamówienia nie jest możliwe

Diagramy czynności – zastosowanie Diagramy czynności stosuje się w modelowaniu: Procesów biznesowych Przypadków użycia Algorytmów i operacji

Zastosowania diagramów czynności - algorytmy Diagramy czynności Zastosowania diagramów czynności - algorytmy // algorytm szukanie // minimum w tablicy Czytaj(t); min := t[1]; for (i=2; i <5; i++) { if (t[i] < min) min = t[i]; } Wypisz(min)

Zastosowania diagramów czynności - przypadki użycia Diagramy czynności Zastosowania diagramów czynności - przypadki użycia Przypadek użycia: Zakup napoju Aktor główny: Klient Główny scenariusz: Klient wrzuca bilon do automatu Klient wybiera rodzaj napoju Automat stwierdza, że wartość bilonu odpowiada cenie wybranego napoju Automat wydaje napój Klient odbiera napój Rozszerzenia: 3a. Automat stwierdza, że cena wybranego napoju jest większa niż wartość wrzuconego bilonu: 3a1. Automat prosi o wrzucenie dodatkowego bilonu 3a2. Klient wrzuca dodatkowy bilon 3b. Automat stwierdza, że cena wybranego napoju jest mniejsza niż wartości bilonu: 3b1. Automat zwraca resztę

Zastosowania diagramów czynności –modelowanie procesów biznesowych Diagramy czynności Zastosowania diagramów czynności –modelowanie procesów biznesowych Proces biznesowy: Obsługa wniosków o urlop Aktorzy: Pracownik, Przełożony, Dział finansowy Opis procesu: Podanie o urlop może złożyć każdy pracownik. Pracownik wypełnia formularz urlopu wpisując dane osobowe i planowany okres urlopu. Podanie jest wysyłane do jego bezpośrednio przełożonego. Przełożony może odrzucić całkowicie podanie – koniec procesu, może wysłać do poprawki lub zaakceptować w całości. Jeśli przełożony wyda decyzję pozytywną, wówczas wniosek jest wysyłany do działu finansowego celem zaksięgowania i wykonania niezbędnych kalkulacji.

Dobre rady 1/3 Zawsze rozpoczynaj diagram od lewego górnego rogu używając symbolu startu. Używaj torów do wskazania czynności wykonywanych przez aktorów. Lewy skrajny tor wskazuje czynność początkową. Używaj torów oszczędnie. W przypadku, gdy byłoby ich zbyt wiele podziel diagram na mniej złożone.

Dobre rady 2/3 Używaj prostych ale znaczących opisów akcji. Akcje nazywaj precyzyjnie unikając takich sformułowań jak „proces” czy „operacja”. Złożone operacje dziel na proste akcje. Upewnij się, że w opisie decyzji uwzględniono wszystkie możliwe wyjścia. Punkt decyzyjny modeluj tylko wtedy gdy wnosi coś do diagramu.

Dobre rady 3/3 Używaj wielokrotnie symboli zakończenia akcji w celu wskazania zdarzeń nietypowych. W każdym diagramie musi być punkt końcowy.

Modelowanie zachowania systemu w czasie Niezbędne w systemach czasu rzeczywistego, np.: systemy bankowe systemy sieciowe systemy śledzenia i nadzorowania Przydatne w systemach wielodostępnych Narzędzia uzupełniające modele funkcji

Diagram sieci przejść w analizie strukturalnej (State Transition Diagram) STAN 1 STAN 2 Warunek Akcja

Przykład - logowanie do systemu BRAK ZGŁOSZENIA Wybrano „login” Otwórz form. „login” Wybrano „EXIT” Zamknij form. „login” OCZEKIWANIE NA LOGIN Podano „login” Prawidłowe hasło Otwórz formularz OCZEKIWANIE NA HASŁO Błędne hasło Wyświetl „jeszcze raz?” OCZEKIWANIE NA DECYZJĘ

Diagram stanów - UML Jest to diagram dynamiczny zwany niekiedy diagramem sieci przejść lub diagramem przepływu sterowania Pokazuje stany w jakich może znaleźć się system oraz w uproszczonej formie akcje i warunki łączące stany

Podstawowe symbole

Diagram stanów – przykład 1.

Diagram stanów – przykład 2.

Diagram stanów – przykład 3.

Diagram stanów – przykład 4.

Literatura Russ Miles, Kim Hamilton: UML 2.0 Wprowadzenie Diagramy czynności Literatura Russ Miles, Kim Hamilton: UML 2.0 Wprowadzenie Stanisław Wrycza: Język UML 2.0 w modelowaniu systemów informatycznych