Podstawy języka UML UML



Podobne dokumenty
Podstawy języka UML UML

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

UML w Visual Studio. Michał Ciećwierz

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

Rysunek 1: Przykłady graficznej prezentacji klas.

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

Język UML w modelowaniu systemów informatycznych

Unified Modeling Language

Diagramy klas. WYKŁAD Piotr Ciskowski

Podstawy projektowania systemów komputerowych

Język UML w modelowaniu systemów informatycznych

Diagramy klas. dr Jarosław Skaruz

Modelowanie obiektowe

TECHNOLOGIE OBIEKTOWE. Wykład 3

Laboratorium 6 DIAGRAM KLAS (Class Diagram)

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

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

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego.

UML cz. II. UML cz. II 1/38

UML cz. I. UML cz. I 1/1

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Modelowanie obiektowe - Ćw. 3.

Język UML w modelowaniu systemów informatycznych

Podstawy inżynierii oprogramowania

Faza analizy (modelowania) Faza projektowania

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Modelowanie danych, projektowanie systemu informatycznego

Modelowanie diagramów klas w języku UML. Łukasz Gorzel @stud.umk.pl 7 marca 2014

1 Projektowanie systemu informatycznego

MODELOWANIE OBIEKTOWE

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

Podstawy programowania III WYKŁAD 4

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Podstawy modelowania w języku UML

DIAGRAM KLAS. Kamila Vestergaard. materiał dydaktyczny

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

Michał Adamczyk. Język UML

Modelowanie i Programowanie Obiektowe

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

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

UML. zastosowanie i projektowanie w języku UML

WPROWADZENIE DO UML-a

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Oprogramowanie o wysokiej jakości to oprogramowanie spełniające następujące kryteria:

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

UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne.

Podstawy Programowania Obiektowego

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Programowanie obiektowe - 1.

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

UML - zarys 2007/2008

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

Świat rzeczywisty i jego model

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Diagramy przypadków użycia

Projektowanie systemów informatycznych. Diagramy przypadków użycia

problem w określonym kontekście siły istotę jego rozwiązania

Podstawy modelowania programów Kod przedmiotu

Projektowanie logiki aplikacji

Podstawy języka UML2 w realnych projektach

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

Inżynieria oprogramowania. Część 5: UML Diagramy klas

Inżynieria oprogramowania. Jan Magott

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.

Unified Modeling Language

Identyfikacja i modelowanie struktur i procesów biologicznych

Paweł Kurzawa, Delfina Kongo

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

Wykład I. Wprowadzenie do baz danych

Technologie obiektowe

Podstawy modelowania w języku UML

Projektowanie baz danych

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

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 studenta

Diagramy czynności Na podstawie UML 2.0 Tutorial

Bazy danych 2. Wykład 1

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

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Wprowadzenie do UML, przykład użycia kolizja

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

Diagramy UML, przykład problemu kolizji

Diagramy czynności. Widok logiczny. Widok fizyczny

IX Konferencja Informatyki Stosowanej

Spis treúci. Księgarnia PWN: Robert A. Maksimchuk, Eric J. Naiburg - UML dla zwykłych śmiertelników. Wstęp Podziękowania...

slajd 1 Model przypadków użycia Anna Bobkowska

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Wykład 1 Inżynieria Oprogramowania

Diagramy zachowania. Diagramy struktury. Przypadków użycia. Stanów. Przeglądu interakcji widoku interakcji (ang. interaction overview)

Dr Katarzyna Grzesiak-Koped

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Pojęcie bazy danych. Funkcje i możliwości.

Transkrypt:

Podstawy języka UML UML

Plan szkolenia Plan szkolenia Godzina (czas) 10:20 11:20 (60 min) 11:20 11:40 (20 min) 11:40 13:10 (90 min) 13:10 13:30 (20 min) 13:30 15:00 (90 min) Temat Wprowadzenie do UML (Definicja, wprowadzenie do modelowania, przykłady) Przerwa kawowa Diagram klas i OCL (Definicje, przykłady, zastosowania) Przerwa Podstawowe komponenty UML (Przypadki użycia, diagram czynności, diagram pakietów, przykłady) Warszawa, 2009 2

Agenda Agenda Wprowadzenie do modelowania Wprowadzenie do języka UML Diagram klas Podstawy OCL Diagram pakietów Diagram przypadków użycia Diagram czynności Warszawa, 2009 3

Terminologia UML Wprowadzenie do modelowania Aplikacja program komputerowy, który ma bezpośredni kontakt z użytkownikiem, realizuje zadania dla użytkownika; działanie aplikacji umożliwia system operacyjny. Oprogramowanie ogół programów, w które wyposażony jest system komputerowy; rozróżnia się oprogramowanie podstawowe (m.in. system operacyjny, translatory, graficzny interfejs użytkownika) oraz oprogramowanie użytkowe (aplikacyjne), służące do wykonywania określonych, złożonych zadań, np. oprogramowanie statystyczne. Warszawa, 2009 4

Terminologia UML Wprowadzenie do modelowania Baza danych zbiór wzajemnie powiązanych danych, przechowywanych w pamięci komputerów i wykorzystywanych przez programy użytkowe instytucji lub organizacji wraz z oprogramowaniem umożliwiającym definiowanie, wykorzystywanie i modyfikowanie tych danych. Egzemplarz jedna sztuka z grupy jednorodnych przedmiotów. Warszawa, 2009 5

Poruszane zagadnienia UML Wprowadzenie do modelowania Czym jest model? Znaczenie modelowania Czym jest modelowanie? Do czego służy modelowanie? Człowiek jest modelem świata. Leonardo da Vinci Warszawa, 2009 6

Czym jest model? UML Wprowadzenie do modelowania Przedstawia interesujący nas fragment rzeczywistości w uproszczony, ale uporządkowany sposób; Pozwala lepiej zrozumieć złożoną rzeczywistość. Warszawa, 2009 7

Czym jest modelowanie? UML Wprowadzenie do modelowania Modelowanie można określić jako tworzenie opisu obiektu/zjawiska rzeczywistego lub abstrakcyjnego, wykonywane w założonym celu. Jego efektem jest model, który powinien posiadać określone własności. Z tego względu nie ma modeli złych, są tylko takie, które nie realizują założonego celu. Warszawa, 2009 8

Znaczenie modelowania UML Wprowadzenie do modelowania Wiele czynników ma wpływ na sukces producenta oprogramowania, czy też projektanta baz danych (np. geodezyjnych). Jednym z najważniejszych jest tworzenie modeli. Opracowujemy wszelkiego rodzaju modele, aby przyszli użytkownicy mogli zawczasu wyobrazić sobie gotowe rozwiązanie (np. oprogramowanie) Warszawa, 2009 9

Do czego służy modelowanie? UML Wprowadzenie do modelowania Modele tworzone są głównie z dwóch powodów: dla lepszego zrozumienia i rozwiązania problemu oraz umożliwienia wymiany informacji. Celem modelowania jest rozpoznanie wszystkich czynników, które mogą wpłynąć na realizację projektu Warszawa, 2009 10

Wprowadzenie do UML Poruszane zagadnienia Czym jest UML? Three amigos Historia UML Zastosowanie języka UML Podstawowe elementy UML Nie ma martwych języków, są tylko uśpione umysły - Gustavo Barceló Warszawa, 2009 11

Wprowadzenie do UML Czym jest UML? UML (Unified Modeling Language) jest językiem modelowania. UML jest standardem (Unified zunifikowany, jednolity). UML opisuje, co system ma robić, a nie jak ma to robić. Warszawa, 2009 12

Wprowadzenie do UML Three amigos Metody: OOAD OMT OOSE Inne: Fusion Shleare-Mellora Coda-Yourdona G.Booch J. Rumbaugh I. Jacobson OMT Metoda Booch-a Przypadki użycia Warszawa, 2009 13

Wprowadzenie do UML Historia UML UML 1.0 (Rational Software) i UML 1.1 (OMG) Włączenie się do prac OMG UML 1.3 Wersja 0.8 Metody Zunifikowanej (Booch & Rumbaugh, Rational Software), dołącza Jacobson UML 1.5 UML 2.0 Niezależne notacje modelowania: Booch, Coad/Yourdon, OMT, OOSE UML 2.1 ok. 1990 1995 1996 1997 2000 2003 2004 2006 Warszawa, 2009 14

Wprowadzenie do UML Zastosowanie języka UML UML jest językiem przeznaczonym do: obrazowania, specyfikowania i definiowania, konstruowania i tworzenia, dokumentowania. Warszawa, 2009 15

Wprowadzenie do UML Podstawowe elementy UML W UML można wyróżnić kilka grup elementów, które zostały wykorzystane do budowy modelu: strukturalne, czynnościowe, grupujące, komentujące, związki, diagramy Warszawa, 2009 16

Wprowadzenie do UML Systematyka diagramów Warszawa, 2009 17

Przerwa Zapraszamy na przerwę Warszawa, 2009 18

Diagram klas Poruszane zagadnienia Co to jest i do czego służy obiekt? Na czym polega obiektowe podejście? Co to jest i do czego służy klasa? Podstawowe elementy wchodzące w skład klasy Podstawowe związki między klasami Liczebność Dziedziczenie Co to jest klasa abstrakcyjna? Co to jest i do czego służy interfejs? Co to jest klasa asocjacyjna? Żeby widzieć jasno, wystarczy zmienić perspektywę. Antoine de Saint Exupéry Warszawa, 2009 19

Diagram klas Czym jest obiekt? Konkretny lub abstrakcyjny byt wyróżnialny w modelowanej rzeczywistości posiadający nazwę (identyfikację), określone granice, atrybuty i operacje. Obiekt ma swoją tożsamość, która wyróżnia go spośród innych obiektów Obiekt jest to każdy element mający swój odpowiednik w rzeczywistości, coś, co ma stan i zachowanie. Nazwa klasy Pan Tadeusz : Książka Nazwa obiektu Warszawa, 2009 20

Diagram klas Czym jest klasa? Klasa jest uogólnieniem zbioru obiektów zawierających takie same atrybuty, operacje, związki i znaczenie. Klasa reprezentuje grupę obiektów o wspólnym stanie i zachowaniu. Nazwa klasy Atrybuty klasy Operacje klasy Warszawa, 2009 21

Diagram klas Różne sposoby zapisu klasy Każda klasa musi mieć przynajmniej nazwę, która wyróżnia ją spośród innych klas. Dozwolone notacje prezentujące klasy na diagramach UML. Warszawa, 2009 22

Diagram klas Zapis nazwy klasy Wyróżniamy nazwy: proste ścieżkowe Nazwy proste Nazwy ścieżkowe Warszawa, 2009 23

Diagram klas Co to są atrybuty klasy? Atrybuty to właściwości klasy; Określają zbiór wartości, jakie można przypisać do poszczególnych egzemplarzy tej klasy; Klasa może mieć dowolną liczbę atrybutów lub nie mieć ich wcale; Atrybuty mogą być prostymi typami podstawowymi (liczby całkowite, liczby zmiennoprzecinkowe itd.) lub powiązaniami do innych bardziej skomplikowanych obiektów. Atrybuty klasy Warszawa, 2009 24

Diagram klas Warszawa, 2009 25

Diagram klas Co to są operacje klasy? Operacja to pewna usługa, której wykonania można zażądać od każdego obiektu klasy. Jest to abstrakcja czegoś, co można zrobić z każdym obiektem tej klasy. Klasa może mieć dowolną liczbę operacji lub nie mieć ich wcale. Operacje klasy Warszawa, 2009 26

Diagram klas Widoczność Widoczność to jedna z podstawowych cech, jakie można określić dla atrybutów i operacji klasy. Widoczność określana jest w jeden z następujących sposobów: + publiczny (ang. public) # chroniony (ang. protected) prywatny (ang. private) ~ pakietowy (ang. package) Widoczność Warszawa, 2009 27

Diagram klas Czym jest dziedziczenie? Hierarchiczne powiązanie między klasami, w którym klasy podrzędne przejmują (dziedziczą) wszystkie właściwości (atrybuty i operacje) klas nadrzędnych, a ponadto mają właściwości specyficzne dla siebie. Warszawa, 2009 28

Diagram klas Co to jest klasa abstrakcyjna? Klasy abstrakcyjne stanowią uogólnienie obiektów konkretnych znajdujących się na niższych poziomach hierarchii. Nie można tworzyć obiektów klas abstrakcyjnych. Nazwa klasy abstrakcyjnej musi być napisana kursywą (pochyłą czcionką). Warszawa, 2009 29

Diagram klas Związki między klasami Związek to relacja zachodząca miedzy klasami lub obiektami. Podstawowe związki: Asocjacja powiązanie Agregacja szczegółowy przypadek powiązania Kompozycja szczegółowy przypadek agregacji Generalizacja uogólnienie Realizacja Warszawa, 2009 30

Diagram klas Asocjacja Asocjacja to podstawowy związek między klasami. Asocjacja oznacza istnienie trwałego powiązania pomiędzy klasami. Przykłady asocjacji: firma zatrudnia pracowników, student studiuje na uczelni, klient zamawia produkt. Warszawa, 2009 31

Diagram klas Nazwy i role asocjacji Sposób powiązania obu klas jest określony poprzez nazwę znajdującą się nad związkiem. Przy nazwie asocjacji czasami można zaobserwować symbol strzałki określający kierunek interpretacji powiązania. Role określają, jak sama nazwa wskazuje, jaką rolę pełni dana klasa w asocjacji. Warszawa, 2009 32

Diagram klas Liczebność Liczebność określa możliwą ilość wystąpienia obiektów danej klasy biorących udział w danym związku. Sposoby przedstawienia liczebności: [1], [2], [10] [*], [0..*] [0..1], [1..5], [10..100], [1..*] [0..1, 3..4, 6..*], [1..5, 7, 9] Warszawa, 2009 33

Diagram klas Agregacja Agregacja jest to szczególny rodzaj asocjacji, która określa związek między agregatem (całością), a składnikiem (częścią/segmentem). Dana część może należeć do wielu całości i jest od nich niezależna. Segmenty Agregaty Warszawa, 2009 34

Diagram klas Kompozycja Szczególnym przypadkiem agregacji jest kompozycja, która oznacza składanie się obiektu z obiektów składowych, które nie mogą istnieć bez obiektu głównego. Kompozycja jest relacją typu "posiada". Agregat Agregat Segment Segmenty Warszawa, 2009 35

Diagram klas Asocjacja, agregacja i kompozycja Warszawa, 2009 36

Diagram klas Generalizacja Hierarchiczne powiązania miedzy klasami, dzięki którym klasy podrzędne przejmują własności klas nadrzędnych. Klasy nadrzędne, znajdujące się na najwyższym poziomie hierarchii określa się mianem korzenia i oznacza się je jako {root}, natomiast te najniższe są to liście {leaf}. {leaf} Klasa nadrzędna (nadklasa), {root} Klasa podrzędna (podklasa) {leaf} Warszawa, 2009 37

Diagram klas Warszawa, 2009 38

Diagram klas Interfejsy W UML interfejsy są zestawem operacji, które wyznaczają usługi oferowane przez klasę i sposobem na przejrzystą prezentację projektu. IUSB Typowy interfejs Interfejs symbol kuli Warszawa, 2009 39

Diagram klas Realizacja Przedstawia związek znaczeniowy między obiektami diagramu UML (klasami) z których jeden określa kontrakt, a drugi zapewnia wywiązanie się z niego. Warszawa, 2009 40

Diagram klas Związek jako klasa klasa asocjacyjna Klasa asocjacyjna jest to byt o właściwościach zarówno klasy, jak i powiązania. Można go postrzegać jako powiązanie mające też właściwości klasy lub jako klasę mającą też właściwości powiązania. Warszawa, 2009 41

Diagram klas Notatka Notatka to odpowiednik żółtej karteczki przylepionej gdzieś w widocznym miejscu. Notatki pozwalają na dopisywanie komentarzy, ograniczeń i wymagań. Warszawa, 2009 42

Diagram klas Czym jest diagram klas? podsumowanie Podstawowym i najczęściej wykorzystywanym diagramem języka UML. Jest wykorzystywany do modelowania statycznych relacji pomiędzy komponentami systemu. Ukazuje wzajemne powiązania między klasami tworzącymi dany system, ale nie ukazuje żadnych relacji pomiędzy samymi obiektami. Pojedynczy model UML może posiadać wiele diagramów klas pokazujących ten sam system z wielu perspektyw. Warszawa, 2009 43

OCL Poruszane zagadnienia Czym jest OCL? Czym są ograniczenia? Zalety stosowania ograniczeń Warszawa, 2009 44

OCL Czym jest OCL? OCL (Object Constraint Language) jest językiem umożliwiającym wyrażanie dodatkowych informacji (ograniczeń) w modelach używanych w procesie tworzenia obiektowego. Język OCL jest precyzyjny, jednoznaczny, łatwy do czytania i stosowania dla projektantów jak i ich klientów. OCL jest językiem deklaracyjnym. Warszawa, 2009 45

OCL Czym są ograniczenia? Ograniczenie (ang. constraint) to restrykcja nałożona na jedną lub więcej wartości (części) modelu lub systemu obiektowego. Ograniczenia i warunki opisane za pomocą OCL są interpretowane w sposób deklaracyjny określają co jest sytuacją poprawną i nie zmieniają stanu modelu. Wyrażenia OCL można zapisywać w osobnych plikach, jako notatki dołączone do modelu UML lub bezpośrednio umieścić je na obiektach. Warszawa, 2009 46

OCL Zalety stosowania ograniczeń Korzyści jakie przynoszą ograniczenia: Lepsza dokumentacja Większa precyzja Komunikacja bez nieporozumień Warszawa, 2009 47

Przerwa Zapraszamy na przerwę Warszawa, 2009 48

Diagram pakietów Poruszane zagadnienia Czym jest pakiet? Czym jest diagram pakietów? Elementy diagramu pakietów Jakie zastosowanie znajduje diagram pakietów? Warszawa, 2009 49

Diagram pakietów Czym jest pakiet? Pakiet to mechanizm ogólnego stosowania, służący do organizowania elementów w grupy. Dobrze zaprojektowane pakiety składają się z podobnych znaczeniowo i razem zmieniających się bytów. Są luźno powiązane ze sobą, ale silnie spójne wewnętrznie Nazwa Pakiet ZarządzanieZamówieniami Zawierający klasy Warszawa, 2009 50

Diagram pakietów Przykład z JMD Warszawa, 2009 51

Diagram pakietów Czym jest diagram pakietów? Diagram pakietów to przedstawienie logicznej struktury systemu w postaci zestawu pakietów połączonych zależnościami i zagnieżdżeniami. Diagram pakietów umożliwia sklasyfikowanie i pogrupowanie elementów takich jak klasy, przypadki użycia itp. Warszawa, 2009 52

Diagram pakietów Elementy diagramu pakietów Podstawowymi elementami diagramu pakietów są: Pakiet zbiór(grupa) elementów modelu. Zależności stereotypowe: <<import>> <<access>> <<merge>> Warszawa, 2009 53

Diagram pakietów Zależności Zależność to związek użycia. Zależności mogą być nieokreślone lub należeć do pewnej szczególnej grupy określonej przez umieszczony obok linii zależności stereotyp. Trzy stereotypy do dokładniejszego określenia zależności: Import (import) Access (dostęp) Merge (scalenie) Warszawa, 2009 54

Diagram pakietów Zależności c.d. import Import (import) określa, że pakiet włącza elementy publiczne innego pakietu do własnej przestrzeni nazw. Warszawa, 2009 55

Diagram pakietów Zależności c.d. access Access (dostęp) wskazuje, że pakiet korzysta z publicznych elementów innego pakietu. Każdy element musi być w pełni kwalifikowany poprzez wykorzystanie dłuższej, rozdzielanej dwukropkami nazwy ścieżki. Warszawa, 2009 56

Diagram pakietów Zależności c.d. merge Merge (scalenie) wskazuje, że zależny pakiet jest pakietem zaprzyjaźnionym. Pakiet zaprzyjaźniony ma dostęp do wszystkich elementów drugiego pakietu, niezależnie od ich widoczności. Warszawa, 2009 57

Diagram pakietów Jakie znajduje zastosowanie? Ukrywanie mniej istotnych elementów modelu. Ułatwienie podziału prac miedzy członkami zespołu/różnymi zespołami. Wizualizacja podstawowych zależności pomiędzy częściami systemu. Tworzenie modeli poglądowych dla modeli zawierających wiele elementów. Organizacja (uporządkowanie) wielkich modeli. Grupowanie elementów. Warszawa, 2009 58

Diagram przypadków użycia Poruszane zagadnienia Czym jest diagram przypadków użycia? Aktor Identyfikacja aktorów Klasyfikacja aktorów Co to jest przypadek użycia? Identyfikacja przypadków użycia Związki w diagramie przypadków użycia Asocjacja, zawieranie, rozszerzanie Uogólnienie Liczebność w diagramie przypadków użycia Warszawa, 2009 59

Czym jest diagram przypadków użycia? UML Diagram przypadków użycia Diagram przypadków użycia w języku UML służy do modelowania funkcjonalności systemu. Tworzony jest zazwyczaj w początkowych fazach modelowania. Diagram ten stanowi tylko przegląd możliwych działań w systemie. Warszawa, 2009 60

Diagram przypadków użycia Aktor Aktor (ang. actor) abstrakcyjny użytkownik systemu, reprezentujący grupę rzeczywistych użytkowników o podobnych funkcjach i sposobie komunikacji z systemem. Najczęściej aktor jest sprawcą zdarzenia powodującego uruchomienie przypadku użycia. Aktor Nazwa Warszawa, 2009 61

Diagram przypadków użycia Identyfikacja aktorów Kto komunikuje się z systemem? Kto będzie korzystał z funkcji systemu? Kto będzie system pielęgnował? Jakie urządzenia system obsługuje? (aktorzy nieożywieni) Z jakimi innymi systemami system się komunikuje? (aktorzy będący innymi systemami) Kto lub co jest zainteresowane wynikami pracy systemu? Warszawa, 2009 62

Diagram przypadków użycia Klasyfikacja aktorów Aktor główny korzysta z podstawowych funkcji systemu Aktor drugorzędny korzysta głównie z funkcji służących do realizacji zadań pomocniczych (np. administrowania i pielęgnacji systemu) Aktor aktywny inicjuje przypadek użycia Aktor pasywny nie inicjuje przypadku użycia, lecz tylko w nim uczestniczy Aktor ożywiony/osobowy reprezentacja ludzi, grupy ludzi Aktor nieożywiony/bezosobowy reprezentuje system lub urządzenie Warszawa, 2009 63

Diagram przypadków użycia Co to jest przypadek użycia? Przypadek użycia (ang. use case) jednostka funkcjonalności dostarczana przez system, która jest realizowana jako ciąg interakcji pomiędzy aktorem a systemem. Nazwa Przypadek użycia Warszawa, 2009 64

Diagram przypadków użycia Identyfikacja przypadków użycia Czy aktor musi pamiętać, tworzyć, usuwać, modyfikować informacje w systemie? Czy aktor ma być powiadamiany o zdarzeniach w systemie, i na odwrót? Warszawa, 2009 65

Związki w diagramie przypadków użycia UML Diagram przypadków użycia Związek w diagramie przypadków użycia to relacja zachodząca miedzy przypadkami użycia, aktorami lub przypadkami użycia a aktorami. Podstawowe związki: Asocjacja Zawieranie Rozszerzanie Uogólnienie Warszawa, 2009 66

Asocjacja, zawieranie, rozszerzenie UML Diagram przypadków użycia Asocjacja dwukierunkowej komunikacji pomiędzy przypadkiem użycia a aktorem. Zawieranie <<include>> służy do modelowania fragmentów przypadku użycia postrzeganych przez użytkownika jako konieczne zachowanie systemu. Rozszerzanie <<extend>> służy do modelowania fragmentów przypadku użycia postrzeganych przez użytkownika jako opcjonalne zachowanie systemu. Warszawa, 2009 67

Asocjacja, zawieranie, rozszerzenie cd. UML Diagram przypadków użycia Warszawa, 2009 68

Asocjacja, zawieranie, rozszerzenie cd. UML Diagram przypadków użycia Warszawa, 2009 69

Diagram przypadków użycia Uogólnienie Uogólnienie znajduje zastosowanie gdy jeden przypadek użycia może być szczególną odmianą innego, już istniejącego przypadku użycia. Warszawa, 2009 70

Diagram przypadków użycia Liczebność Typy liczebności są analogiczne do tych występujących w diagramach klas. Sposoby przedstawienia liczebności: [1], [10], itd. [*] [0..3], [10..100], [1..*] [1..5, 7, 9] Warszawa, 2009 71

Diagram czynności Poruszane zagadnienia Czym jest diagram czynności? Podstawowe elementy Czynność a akcja Współbieżność Warszawa, 2009 72

Diagram czynności Czym jest diagram czynności? Diagram czynności (ang. activity diagram) dotyczy jednego lub wielu obiektów. Opisuje czynności i kolejności ich realizowania przez obiekty oraz reprezentuje interakcję z punktu widzenia wykonywanej pracy. Warszawa, 2009 73

Diagram czynności Podstawowe elementy Prostokąt o zaokrąglonych rogach przedstawiony poniżej jest graficzną interpretacją czynności lub akcji wykonywanej przez system. Romby reprezentują decyzje. Czynność/akcja Decyzja Początkowy i końcowy stan akcji, przedstawiane są odpowiednio jako zamalowane koło oraz koło z kropką. Trzeci z poniższych symboli przekreślone koło oznacza zatrzymanie akcji. Warszawa, 2009 74

Diagram czynności Podstawowe elementy c.d. Strzałki określają przepływ sterowania między czynnościami. Zakończenie jednej czynności powoduje rozpoczęcie drugiej. Przepływ sterowania Warszawa, 2009 75

Diagram czynności Przykłady diagramu czynności Warszawa, 2009 76

Diagram czynności Czynność a akcja Czynność jest bardziej ogólnym pojęciem, w związku z czym jest podzielna i charakteryzuje się dłuższym czasem wykonywania. Akcja jest pojęciem szczegółowym, a co za tym idzie, niepodzielnym, o krótkim czasie realizacji. Warszawa, 2009 77

Diagram czynności Współbieżność To jednoczesne wykonywanie kilku czynności. Elementy wykonywane współbieżnie wyróżnia się pogrubionymi poziomymi liniami, która je niejako grupują. Warszawa, 2009 78

Pytania Pytania Warszawa, 2009 79

Dziękujemy za uwagę Warszawa, 2009 80