LABORATORIUM 4. Po co mi to, przecież wiem, co system ma robić? - czyli o diagramach UML. DIAGRAM CZYNNOŚCI (Activity Diagram)

Podobne dokumenty
Inżynieria Oprogramowania DIAGRAMY CZYNNOŚCI (AKTYWNOŚCI)

Inżynieria oprogramowania

Diagramy czynności Na podstawie UML 2.0 Tutorial

Model przypadków użycia - rola diagramów aktywności Część 2 Wykładowca Dr inż. Zofia Kruczkiewicz

Diagramy czynności tworzenie modelu przypadków użycia Wykład 2

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

koniec punkt zatrzymania przepływów sterowania na diagramie czynności

Diagramy czynności. Widok logiczny. Widok fizyczny

Język UML w modelowaniu systemów informatycznych

Diagramy czynności. sekwencyjnych i współbieŝnych. pomiędzy uporządkowanymi ciągami czynności, akcji i obiektów

Język UML w modelowaniu systemów informatycznych

NIFIED M L ODELLING ANGUAGE. Diagramy czynności

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

Podstawy języka UML2 w realnych projektach

Modelowanie biznesowe. Na podstawie materiałów: Mirosława Ochodeka

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

SysML Tworzenie diagramu aktywności SysML005

MAS dr. Inż. Mariusz Trzaska. Diagramy aktywności

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Diagram Przepływu Danych - podstawowe bloki składowe i reguły konstrukcji

Projektowanie systemów informacyjnych

Po otrzymaniu maila zapraszającego do udziału w korzystaniu z aplikacji ProfiAuto Usługi dla Serwisu, należy użyć przycisku Aktywuj aplikację.

Graficzna notacja procesów biznesowych BPMN. Porównanie z notacja UML. Jakub Morkis, Piotr Chmielewski

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Projektowanie i wdrażanie systemów informatycznych (materiały do wykładu cz. II)

Spis treúci. 1. Wprowadzenie... 13

Wstęp do programowania 2

Diagram sekwencji. Komunikaty mogą być opisane w sposób sformalizowany. poprz / [warunek] *[iter] nr sekw : wynik := operacja(lista)

Ćwiczenie 1. Modelowanie prostego procesu

Modelowanie obiektowe - Ćw. 6.

5. Model komunikujących się procesów, komunikaty

Mapowanie procesów - AS IS (jak jest)

Źródło: S. Wrycza, B. Marcinkowski, K. Wyrzykowski Język UML 2.0 w modelowaniu systemów informatycznych Helion DIAGRAMY INTERAKCJI

Modelowanie aktywności. Jarosław Kuchta Programowanie Współbieżne

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32


MODELOWANIE PRZEPŁYWU DANYCH

Język UML w modelowaniu systemów informatycznych

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Przejścia. Natychmiastowe przekazanie sterowania z akcji lub czynności kończącej dany stan do następnego stanu akcji lub stanu czynności

Ćwiczenia 3: Specyfikacja wymagań Pytania:

Zarządzanie reklamacjami i serwisem w programie bs4

Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne

Zalety projektowania obiektowego

APIO. W4 ZDARZENIA BIZNESOWE. ZALEŻNOŚCI MIĘDZY FUNKCJAMI. ELEMENTY DEFINICJI PROCESU. DIAGRAM ZALEŻNOŚCI FUNKCJI.

Diagramy przypadków użycia

Analiza i mapowanie procesów

Przepływy danych. Oracle Designer: Modelowanie przepływów danych. Diagramy przepływów danych (1) Diagramy przepływów danych (2)

Wymiar poziomy: oś na której umieszczono instancje klasyfikatorów biorące udział w interakcji.

Instrukcja użytkownika

OBIEG FAKTUR W UGIM GOLENIÓW

UML w Visual Studio. Michał Ciećwierz

Laboratorium z zarządzania procesami biznesowymi

Podstawy języka UML2 w realnych projektach

Inżynieria oprogramowania. Wykład 7 Inżynieria wymagań: punkty widzenia, scenariusze, przypadki użycia

Język UML. dr inż. Piotr Szwed C3, pok

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Tryby komunikacji między procesami w standardzie Message Passing Interface. Piotr Stasiak Krzysztof Materla

Doskonalenie procesów - TO BE (tak będzie) Ujęcie statyczne

Dokument opisuje sposób postępowania prowadzący do wysłania deklaracji VAT, PIT lub CIT drogą elektroniczną za pomocą funkcji systemu ADA modułu FK.

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH

Automatyczne anulowanie zleceń w wyniku odłączenia od CCG

Diagram maszyny stanowej - POJĘCIA

UML. dr inż. Marcin Pietroo

Vario.Kancelaria kompleksowe zarządzanie informacją i dokumentem

Charakterystyka procesu

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

SPECYFIKACJE WYMAGAŃ PRZYPADKI UŻYCIA (USE CASE)

TXM S.A. Procedura reklamacji. Przeznaczenie: Markety, Rks. A.Wola

UML cz. III. UML cz. III 1/36

Zarządzanie sprzedażą w programie bs4

PROJEKTOWANIE SYSTEMÓW LOGISTYCZNYCH PROJEKT SYSTEMY LOGISTYCZNE WSKAZÓWKI PRAKTYCZNE

Projektowanie bazy danych przykład

Stan/zdarzenie Nexo. Zmienne wirtualne. Zdarzenia wirtualne

TECHNOLOGIE OBIEKTOWE. Wykład 3

MiASI. Modelowanie systemów biznesowych. Piotr Fulmański. 7 stycznia Wydział Matematyki i Informatyki, Uniwersytet Łódzki, Polska

Mapowanie wybranych procesów obsługi klienta w sektorze. Dzień 1.

Język UML w modelowaniu systemów informatycznych

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

SYSTEM OBSŁUGI PROCESU TWORZENIA ZAMÓWIEŃ. Wersja demonstracyjna aplikacji w Internecie :

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

Stan globalny. Krzysztof Banaś Systemy rozproszone 1

Diagramy stanów i aktywności. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania

Znaleziony - jeżeli nadawca nie jest znany w obrębie danego fragmentu Utracony - jeżeli odbiorca komunikatu nie jest znany w obrębie danego fragmentu

Projekt zabawki edukacyjnej dla dziecka

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Rozdział 1. Integracja systemu "KasNet" z pinpadami firmy "First Data Polska S.A."

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

PROJEKTOWANIE SYSTEMÓW LOGISTYCZNYCH PROJEKT PODSYSTEM LOGISTYCZNY PRZETWARZANIE ZAMÓWIEŃ

Rysunek 1: Przykłady graficznej prezentacji klas.

Obieg korespondencji. System spełnia wymagania GIODO. Funkcja obsługi obiegu korespondencji dzięki zastosowaniu kodów kreskowych.

Zagadnienia Semestr IV Inżynieria Oprogramowania WSZiB

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Transkrypt:

LABORATORIUM 4. Po co mi to, przecież wiem, co system ma robić? - czyli o diagramach UML 1. Słownik pojęć DIAGRAM CZYNNOŚCI (Activity Diagram) Czynność specyfikacja sparametryzowanych zachowań (akcje, przepływy sterowania) Akcja elementarny krok czynności Przepływ sterowania przejście z jednej akcji do drugiej (zapłacenie rachunku -> wydruk paragonu) Ograniczenia akcji warunki przed i po akcją (PŁACENIE KARTĄ: warunek przed: wstukanie PIN, stan: akceptacja transakcji przez bank, warunek po: transakcja została przyjęta, wydruk paragonu) Przepływ obiektu (utworzenie, modyfikacja, użycie np. przesłanie faktury, celem dokonania zapłaty): Partycje (Swimlanes) - są to regiony przeznaczone do grupowania aktywności według odpowiedzialności. 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. Przykład: podział czynności wykonywanej na obiekcie pomiędzy 2 inne obiekty (podmioty)

Zdarzenia czasowe (Time Event) - służy modelowaniu zdarzeń zależnych od czasu - okresu oczekiwania w postaci określonej daty lub względnej (liczba dni, godzin, minut, itp.). Służą również do modelowania przepływów cyklicznych, tj. przepływów rozpoczynających się w określonych momentach. Mogą się pojawiać w dowolnym miejscu czynności, w tym również w miejsce węzła początkowego Węzeł sygnału nadawanego (Send Signal Node)-służy modelowaniu asynchronicznego wysyłania komunikatów (do innych procesów lub do samego węzła). Po wysłaniu komunikatu następuje automatycznie przejście do wykonywania kolejnej akcji/czynności (proces nie czeka na odbiór komunikatu) Węzeł sygnału odbieranego (Receive Signal Node) służy modelowaniu asynchronicznego odbioru komunikatów przez proces oczekujący na pojawienie się ściśle określonego komunikatu. Po odebraniu komunikatu generowane jest przejście do kolejnych akcji/czynności. Bez dochodzącego sterowania jest zawsze aktywny (może odbierać komunikaty cały czas), z dochodzącym przepływem sterowania uaktywnia się dopiero w momencie otrzymania sterowania Obszar przerwań (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. Diagram czynności (aktywności) pozwala na zobrazowanie wewnętrznych stanów w jakim może znajdować się obiekt w trakcie jego użytkowania pozwala definiować zdarzenia, które doprowadzają do zmiany stanu modelowanego obiektu. służy do obrazowania czynności oraz zakresu odpowiedzialności użytkowników systemu (użytkownikiem systemu może być inny podsystem).

w odróżnieniu od diagramu stanów opisuje działania związane z wieloma, komunikującymi się wzajemnie obiektami. Definiuje odpowiedzi na pytania: jak pobierane są operacje? co operacje wykonują (zmiana stanu obiektu)? gdzie i kiedy operacje są wykonywane? Nazwa Notacja UML Stan początkowy akcji (węzeł początkowy, zawsze jeden) Stan końcowy akcji (węzeł końcowy, może być ich wiele) Stan końcowy pojedynczej akcji Czynność (aktywność) Decyzja rozdzielenie aktywności na kilka innych, służy wyborowi jednego przejścia przepływu sterowania każde wyjście opatrzone warunkiem koniecznym do realizacja danego przejścia zebranie różnych alternatywnych przejść (ścieżki alternatywne) Sztabka synchronizująca (Współbieżność) Przejście FORK (rozdzielenie jednej operacji na kilka przebiegających równolegle, po zajściu przejść przychodzących występują jednocześnie wszystkie przejścia wychodzące) JOIN (złączenie kilku operacji równoległych w jedną, aby nastąpiło przejście wychodzące, muszą wystąpić wszystkie przejścia przychodzące.) PRZEPŁYW STEROWANIA (Control Flow) (Zakończenie jednej czynności powoduje

rozpoczęcie drugiej) PRZEPŁYW OBIEKTU (Data Flow) (Obiekt występuje pomiędzy aktywnościami, co oznacza że jest otrzymywany na wyjściu pierwszej z nich, a pobierany na wejściu drugiej) Elementy rozproszone R Tory pływackie (określenie który element systemu wykonuje akcje) Zdarzenie czasowe Węzeł sygnału NADAWANEGO ODBIERANEGO Do jednego diagramu może należeć kilka przepływów (kilka obiektów zaangażowanych w wykonywanie czynności)

Przykład z życia codziennego: Podsumowanie: Diagram czynności stanowi graficzną reprezentację przepływu kontroli. Diagram jest używany do: analizowania przypadków użycia; zrozumienia interakcji zachodzących między przypadkami użycia; do modelowania przetwarzania wielowątkowego; Diagram nie należy używać do: pokazywania współpracy między 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;

Wytyczne do tworzenia diagramów czynności: 1. Należy ustalić najważniejsze czynności - nie można przedstawić na jednym diagramie wszystkich czynności 2. Należy wybrać obiekty przedsiębiorstwa, które są zobowiązane do realizacji bardziej ogólnego przepływu. Mogą to być elementy rzeczywiste, istniejące w słownictwie systemu, lub elementy abstrakcyjne. W obu przypadkach należy utworzyć tor dla każdego wybranego obiektu. 3. Należy zidentyfikować stan początkowy i końcowy modelowanego przepływu. 4. Przechodząc od stanu początkowego do końcowego należy modelować kolejne stany czynności lub stany akcji. 5. W przypadku złożonych akcji lub często występujących zbiorów akcji należy je połączyć w stany czynności. Z każdym stanem skojarz oddzielny diagram czynności, który przedstawia zebrane nim akcje. 6. Należy zobrazować przepływy czynności między stanami akcji i stanami czynności. Pierwsze powinny być brane pod uwagę przepływy sekwencyjne, potem rozgałęzienia, na końcu rozwidlenia i scalenia. 7. Jeśli w modelowanym przepływie czynności biorą udział istotne obiekty, należy je umieścić na diagramie. Należy uwzględniać zmieniające się atrybuty i stany tych obiektów, jeśli jest to konieczne do zrozumienia przepływu tych obiektów. Diagram czynności a przypadek użycia

Przykład 1: Kosmonauta, aby polecieć w kosmos, przyjeżdża do ośrodka treningowego i melduje się. Jest odsyłany najpierw na badanie wzroku i jednocześnie zdjęcie miary, dalej pobierana jest od niego próbka krwi, która przechodzi analizę w laboratorium, a w tym czasie kosmonauta przechodzi szkolenie z obsługi skafandra i promu. Zdjęta miara trafia do techników, którzy przygotowują kombinezon, a następnie przeprowadzają przymiarkę przed szkoleniem z obsługi, i w razie czego dokonują poprawek. Jeśli kosmonauta nie odpadnie przy badaniach i ma gotowy skafander, zaczyna czekać na miejsce w rakiecie

Przykład 2: Samochód trafia do warsztatu w celu naprawy. Mechanik robi wstępny przegląd i jeśli okazuje się, że będzie potrzebować części, przesyła zamówienie na części do magazynu. Gdy zamówienie jest realizowane, mechanik w tym czasie wymontowuje zepsute części. Zbiór części w magazynie jest kompletowany, po czym są one wydawane mechanikowi. Jeśli brak części w magazynie, wysyłane jest zlecenie na zamówienie części do działu finansowego. Magazyn czeka na realizację zamówienia, po czym kończy kompletowanie części i odsyła je mechanikowi. Gdy mechanik dostanie części lub gdy naprawa ich nie wymagała, mechanik naprawia, po czym sprawdza samochód. Jeśli coś nadal nie działa, procedura powtarzana jest od początku, a jeśli samochód jest już sprawny, mechanik wysyła kosztorys naprawy do działu finansowego, który sporządza rachunek i powiadamia klienta o zakończeniu naprawy. W tym czasie mechanik sprząta i myje samochód, po czym oddaje go klientowi. Po wstępnym przeglądzie może okazać się również, że samochód nie nadaje się do naprawy. Wtedy mechanik zawiadamia dział finansowy, który dzwoni do klienta i pyta, czy samochód ma być ze złomowany, czy klient woli go odebrać. Jeśli klient chce odebrać samochód sam, zostaje mu wystawiony rachunek i mechanik wydaje klientowi samochód. Jeśli klient woli samochód ze złomować również otrzymuje rachunek, zaś mechanik przygotowuje samochód do złomowania wymontowując z niego wartościowe części i wysyłając je do magazynu. Gdy magazyn otrzyma już wszystkie cenne części, mechanik odstawia samochód na złom

Przykład 3: Kapitan piratów patrząc przez swoją lunetę może zauważyć 2 typy okrętów. Jeśli widzi okręt wojenny, wydaje załodze rozkaz przygotowania dział, zaś jeśli widzi okręt handlowy, rozkazuje załodze przygotować się do abordażu, a majtkowie w tym czasie wywieszają flagę piracką. W przypadku ostrzału z dział, jeśli jest skuteczny, czyli przeciwnik odnosi duże zniszczenia, również dochodzi do abordażu, w przeciwnym razie kapitan nakazuje załodze przygotowanie żagli i ucieczkę z wiatrem. Zakładamy, że kapitan jest błyskotliwy i dzięki jego

wybitnym umiejętnościom abordaż zawsze się udaje. Po abordażu załoga przeszukuje okręt i dzieli się łupami 20% doli oddając kapitanowi. W tym samym czasie majtkowie znoszą rannych pod pokład i oddają ich pod opiekę okrętowego łapiducha. Łapiduch po zajęciu się rannymi zdaje relację ze stanu załogi kapitanowi. Po podziale łupów martwym załogantom urządza się pogrzeb w morzu, a w tym czasie majtkowie zajmują się przeglądem sprawności dział, a kapitan ogląda znów horyzont przez lunetę. Jeśli zauważy nowy statek, cała procedura zaczyna się od nowa, zaś jeśli horyzont jest czysty, kapitan zleca majtkom wyniesienie spod pokładu 2 beczek rumu, a sam w tym czasie ustala kurs na Tortugę.