Diagramy czynności Na podstawie UML 2.0 Tutorial



Podobne dokumenty
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

Diagramy stanów tworzenie modeli analizy i projektowania Na podstawie UML 2.0 Tutorial

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

Diagramy czynności i syntaktyka diagramów klas Wykład3

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

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

Inżynieria oprogramowania

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Laboratorium 8 Diagramy aktywności

Diagram stanów Laboratorium 9

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

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7

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

Podstawy programowania III WYKŁAD 4

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

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Język UML w modelowaniu systemów informatycznych

Projektowanie interakcji. Jarosław Kuchta

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

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Wykład 1 Inżynieria Oprogramowania

NIFIED M L ODELLING ANGUAGE. Diagramy czynności

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

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

UML. dr inż. Marcin Pietroo

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

Diagramy czynności. Widok logiczny. Widok fizyczny

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6

UML w Visual Studio. Michał Ciećwierz

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

Język UML w modelowaniu systemów informatycznych

Michał Adamczyk. Język UML

Technologie obiektowe. Plan. Ewolucja technik wytwarzania oprogramowania

Technologie obiektowe

Modelowanie obiektowe

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

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

UML. zastosowanie i projektowanie w języku UML

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

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

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

Modelowanie i analiza systemów informatycznych

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

Autor: dr inż. Zofia Kruczkiewicz, Programowanie aplikacji internetowych 1

Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania

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

Podstawy języka UML2 w realnych projektach

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

Diagramy klas. dr Jarosław Skaruz

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych

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

TECHNOLOGIE OBIEKTOWE. Wykład 3

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.

Projektowanie systemów informacyjnych

Programowanie obiektowe

Diagramy klas, diagramy sekwencji

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Literatura. J. Nilsson: Applying Domain-Driven Design and Patterns,With Examples in C# and.net, Addison-Wesley Professional, 2006

Metody Metody, parametry, zwracanie wartości

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

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Charakterystyka oprogramowania obiektowego

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1

Przykład 1 Iteracja 1 tworzenia oprogramowania

Przykład 1 Iteracja 2 tworzenia oprogramowania Diagramy klas i sekwencji:

WPROWADZENIE DO UML-a

Diagramy sekwencji. wymienianych między nimi

Podstawy projektowania systemów komputerowych

Modelowanie i analiza. warstwy biznesowej aplikacji

Dziedziczenie jednobazowe, poliformizm, tablice wskaźników na obiekty

Modelowanie obiektowe - Ćw. 6.

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

Projekt INP Instrukcja 1. Autor Dr inż. Zofia Kruczkiewicz

Modelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Tworzenie warstwy zasobów projektowanie metodą strukturalną

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

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

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

Wstęp do programowania 2

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu.

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla studentów

Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

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

UML a kod. C++, Java i C#

Szablony klas, zastosowanie szablonów w programach

Protokół JDBC współpraca z relacyjnymi bazami danych lab3

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Klasy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 13

Diagramy UML, przykład problemu kolizji

Analiza i projektowanie obiektowe w UML Kod przedmiotu

Transkrypt:

Diagramy czynności Na podstawie UML 2.0 Tutorial http://sparxsystems.com.au/resources/uml2_tutorial/ Zofia Kruczkiewicz 1

Diagramy czynności 1. Diagramy czyności UML http://sparxsystems.com.au/resources/uml2_tutorial/ 2. Przykład diagramów czynności UML modelowanie operacji (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 3. Przykład diagramów czynności UML modelowanie przepływu czynności (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 2

Diagramy czynności 1. Diagramy czynności UML http://sparxsystems.com.au/resources/uml2_tutorial/ 3

Diagramy czynności Diagram czynności jest odmianą diagramu stanu i opisuje interakcje między obiektami. jak pobierane są operacje, co operacje wykonują (zmiana stanu obiektu), kiedy operacje są wykonywane (sekwencje czynności lub akcji) gdzie są wykonywane. 4

Czynność- zawiera specyfikację sparametryzowanych zachowań (akcje, przepływ sterowania) Akcja elementarny krok czynności 5

Ograniczenia akcji: warunki przed akcją i po akcji Np. Warunek przed: Wybór napoju w automacie, jeśli istnieje Stan: akcja wydania napoju (Dispense drink) Warunek po: Maszyna wydała wybrany napój Przepływ sterowania: Przejście z jednej akcji do drugiej np. wysłanie rachunku Send Payment) i akceptacja rachunku (Accept Payment) 6

Wierzchołek początkowy (Initial) i końcowy (Final) Wierzchołek końca sterowania koniec pojedynczego przebiegu sterowania Wierzchołek końca wielu przebiegów sterowania wewnątrz czynności 7

Obiekt Magazyn danych Przepływ obiektów Wysłanie (Send Invoice) obiektu faktura (Invoice) w celu dokonania zapłaty (Make Payment) Przepływ obiektów Równoważny diagram 8

Blok wyboru Bloki rozdzielania i łączenia 9

Powtarzanie czynności: iteracyjnie (iterative), równolegle (parallel) lub w postaci strumienia (stream) 10

Obsługa wyjątków reakcja na błąd Obsługa przerwań reakcja na na inną akcję niż typowa 11

Partycje(tory) np. podział czynności wykonywanych na obiekcie Faktura (Invoice) przez dwa różne obiekty: Wydział Finansowy (Accounting Department) i klienta (Customer). 12

Diagramy czynności 1. Diagramy czynności UML http://sparxsystems.com.au/resources/uml2_tutorial/ 2. Przykład diagramów czynności UML modelowanie operacji (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 13

Diagram aktywności reprezentujący zaznaczoną część scenariusza diagramu sekwencji ze slajdu 16 14

Kod źródłowy projektowanej metody za pomocą diagramu aktywności public void Wstaw_zakup (int nr, int ile,tprodukt1 produkt1) { TRachunek rachunek; if ((rachunek=szukaj_rachunek(nr))!=null ) if ((produkt1=szukaj_produkt(produkt1))!=null ) rachunek.wstaw_zakup(new TZakup(ile,produkt1)); } 15

(5) Wstawianie nowego zakupu (void TAplikacja::Wstaw_zakup (int nr, int ailosc, String dane[])) 3 1 Zofia Kruczkiewicz, Modelowanie i analiza systemów 12 16

//TAplikacja public void Wstaw_zakup (int nr, int ile, String dane[]) { TRachunek rachunek; TFabryka fabryka = new TFabryka(); TProdukt1 produkt1 = fabryka.podaj_produkt(dane); if ((rachunek=szukaj_rachunek(nr))!= null) if ((produkt1=szukaj_produkt(produkt1))!= null) rachunek.dodaj_zakup(new TZakup(ile, produkt1)); } Zofia Kruczkiewicz, Modelowanie i analiza systemów informatycznych 5_1 17

Wytyczne dla tworzenia diagramów operacji 1. Należy uwzględnić abstrakcje uczestniczące w tej operacji. Są to parametry przekazywane do metody, atrybuty klasy metody oraz klas obiektów związanych z metodą. 2. Należy zidentyfikować warunki wstępne stanu początkowego i końcowego modelowanej operacji. Należy znaleźć wszystkie wartości, które nie mogą zmienić się podczas realizacji operacji. 3. Przechodząc od stanu początkowego do końcowego należy modelować kolejne stany czynności lub stany akcji. 4. Należy w razie potrzeby korzystać z rozgałęzień do modelowania ścieżek warunkowych i iteracji. 5. Jeśli operacja należy do klasy aktywnej (i tylko wtedy), należy wtedy korzystać z rozwidleń i scaleń, żeby określić równoległe przepływy sterowania. 18

Diagramy czynności 1. Diagramy czynności UML http://sparxsystems.com.au/resources/uml2_tutorial/ 2. Przykład diagramów czynności UML modelowanie operacji (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 3. Przykład diagramów czynności UML modelowanie przepływu czynności i obiektów (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 19

Diagram czynności jako model biznesowy systemu sprzedaży towarów 20

Diagram czynności przypadku użycia Wstawianie nowego zakupu (model przypadku użycia w warstwie biznesowej) Diagram aktywności reprezentujący zaznaczoną część scenariusza diagramu sekwencji ze slajdu 22 (lub 16) oraz slajdu 24 21

(5) Wstawianie nowego zakupu (void TAplikacja::Wstaw_zakup (int nr, int ailosc, String dane[])) 3 1 Zofia Kruczkiewicz, Modelowanie i analiza systemów 12 22

//TAplikacja public void Wstaw_zakup (int nr, int ile, String dane[]) { TRachunek rachunek; TFabryka fabryka = new TFabryka(); TProdukt1 produkt1 = fabryka.podaj_produkt(dane); if ((rachunek=szukaj_rachunek(nr))!= null) if ((produkt1=szukaj_produkt(produkt1))!= null) rachunek.dodaj_zakup(new TZakup(ile, produkt1)); } Zofia Kruczkiewicz, Modelowanie i analiza systemów informatycznych 5_1 23

(12) void TRachunek::Dodaj zakup(tzakup atzakup) 13 Zofia Kruczkiewicz, Modelowanie i analiza systemów 24

//TRachunek private ArrayList<TZakup> Zakupy = new ArrayList<TZakup>(); public void Dodaj_zakup (TZakup atzakup) { TZakup zakup; if ((zakup = Szukaj_zakup(aTZakup))!= null) zakup.dodaj_ilosc(atzakup.podaj_ilosc()); else Zakupy.add(aTZakup); } Zofia Kruczkiewicz, Modelowanie i analiza systemów informatycznych 5_1 25

Wytyczne dla 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, Modelowanie jeśli i analiza jest systemów to konieczne do zrozumienia przepływu tych obiektów. 26