Podstawy modelowania w j zyku UML

Podobne dokumenty
Język UML w modelowaniu systemów informatycznych

Podstawy modelowania w języku UML

Podstawy modelowania w j zyku UML

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

MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

MiASI. Modelowanie analityczne. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Podstawy modelowania w j zyku UML

Wzorce projektowe strukturalne cz. 1

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

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

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

UML w Visual Studio. Michał Ciećwierz

Podstawy modelowania w j zyku UML

Podstawy modelowania w j zyku UML

Laboratorium 6 DIAGRAM KLAS (Class Diagram)

Zbiory i odwzorowania

Rysunek 1: Przykłady graficznej prezentacji klas.

Konstruowanie Baz Danych Wprowadzenie do projektowania. Normalizacja

Programowanie obiektowe w C++ Wykªad 4

Język UML w modelowaniu systemów informatycznych

Podstawy projektowania systemów komputerowych

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

MiASI. Modelowanie integracji systemów. Piotr Fulma«ski. 26 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.

Podstawy modelowania w j zyku UML

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for regression) / 13

Diagramy klas. dr Jarosław Skaruz

Modelowanie obiektowe

Metodydowodzenia twierdzeń

Lab. 02: Algorytm Schrage

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

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

Zarządzanie Zasobami by CTI. Instrukcja

Język UML w modelowaniu systemów informatycznych

Harmonogramowanie projektów Zarządzanie czasem

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Wojewódzki Konkurs Matematyczny

x y x y x y x + y x y

System Zarządzania Relacyjną Bazą Danych (SZRBD) Microsoft Access 2010

Informatyka, matematyka i sztuczki magiczne

Szeregowanie zada« Wykªad nr 5. dr Hanna Furma«czyk. 4 kwietnia 2013

Kompozycja i dziedziczenie klas

Hotel Hilberta. Zdumiewaj cy ±wiat niesko«czono±ci. Marcin Kysiak. Festiwal Nauki, Instytut Matematyki Uniwersytetu Warszawskiego

TECHNOLOGIE OBIEKTOWE. Wykład 3

1. Wprowadzenie do C/C++

Projektowanie i programowanie obiektowe (materiały do wykładu cz. VI)

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Tworzenie modelu obiektowego

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37

POMOC PSYCHOLOGICZNO-PEDAGOGICZNA Z OPERONEM. Vademecum doradztwa edukacyjno-zawodowego. Akademia

Wzorce projektowe kreacyjne

2 Liczby rzeczywiste - cz. 2

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Metody numeryczne i statystyka dla in»ynierów

art. 488 i n. ustawy z dnia 23 kwietnia 1964 r. Kodeks cywilny (Dz. U. Nr 16, poz. 93 ze zm.),

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

Turniej Piłkarski. Copa Manufaktura 2006

Charakterystyka systemów plików

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II.

Rozwi zania klasycznych problemów w Rendezvous

Technologia programowania

1. Wprowadzenie do C/C++

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

Modelowanie danych, projektowanie systemu informatycznego

Lekcja 9 Liczby losowe, zmienne, staªe

System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy

Ekonometria. wiczenia 13 Metoda ±cie»ki krytycznej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Lekcja 3 Banki i nowe przedmioty

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

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

a) nazwa:... b) adres siedziby:... c) NIP:... REGON:... adres:...

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

Baza danych - Access. 2 Budowa bazy danych

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Metody numeryczne. Wst p do metod numerycznych. Dawid Rasaªa. January 9, Dawid Rasaªa Metody numeryczne 1 / 9

Edycja geometrii w Solid Edge ST

Statystyka matematyczna

Podstawy statystycznego modelowania danych Analiza prze»ycia

PROWIZJE Menad er Schematy rozliczeniowe

Metody dowodzenia twierdze«

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

29. TRZY W LINII CZYLI O POSZUKIWANIU ZWIĄZKÓW

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

UML. zastosowanie i projektowanie w języku UML

Android. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015

PROJEKT TYMCZASOWEJ ORGANIZACJI RUCHU

Język UML w modelowaniu systemów informatycznych

Program Sprzeda wersja 2011 Korekty rabatowe

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Urządzenie do odprowadzania spalin

Proste modele o zªo»onej dynamice

JĘZYK UML JAKO NARZĘDZIE MODELOWANIA PROCESU PROJEKTOWO-KONSTRUKCYJNEGO

Podstawy matematyki dla informatyków

STATUT Studenckiego koªa naukowego J zyka Programowania Python "PyAGH"

Transkrypt:

Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 2

Zwi zki mi dzy klasami Asocjacja (ang. Associations) Uogólnienie, dziedziczenie (ang. Generalizations) Agregacja (ang. Aggregations) Kompozycja (ang. Composite aggregation) Zagnie»d»enia (ang. Nestings) Klasy asocjacyjne (ang. Association Classes) Zale»no±ci (ang. Dependencies)

Asocjacja Asocjacja jest podstawowym rodzajem zwi zków/relacji mi dzy klasami i oznacza istnienie trwaªego powi zania pomi dzy nimi. Asocjacja mo»e zawiera nazwane role na ka»dym ko«cu, liczebno±ci, kierunki i ograniczenia. Przykªady asocjacji: Student studiuje na uczelni Piªkarz gra w dru»ynie piªkarskiej Lekarz pracuje w szpitalu, itd

Nazwy, role i liczebno± asocjacji Nazwa asocjacji wskazuje bezpo±rednio czynno±, jaka zachodzi pomi dzy klasami. Mo»e tak»e wskazywa kierunek. Role okre±laj jak rol peªni dana klasa w asocjacji.

Nazwy, role i liczebno± asocjacji Liczebno± okre±la, ile obiektów jednej klasy bierze udziaª w asocjacji drugiej klasy. Liczebno± mo»na okre±li staª cyfr, np.: 1, 2, 3, 4, itd. Liczebno± mo»na okre±li jako niesko«czono± - oznaczane przez * Liczebno± mo»na okre±li przedziaªem, np. 0..4 - od 0 do 4 2..5 - od 2 do 5 10..1000 - od 10 do 1000 1..* - od 1 do niesko«czono± (minimum 1), itd

Klasy asocjacyjne Klasa asocjacyjna to klasa powi zana za pomoc linii przerywanej z asocjacj. Klasa asocjacyjna opisuje asocjacje pomi dzy klasami, których ta asocjacja dotyczy. Klasa asocjacyjna umo»liwia asocjacji posiadanie operacji i atrybutów.

Klasy asocjacyjne W przypadku wyst powania klasy asocjacyjnej w kodzie programu, klasy bior ce udziaª w asocjacji mog, ale nie musz, posiada bezpo±rednie poª czenia pomi dzy sob. Zatem nasza klasa Pracownik nie musi mie bezpo±redniego poª czenia z klas Projekt. Klasa Pracownik mo»e mie na przykªad poª czenie z klas Rola, za± klasa Rola z klas Projekt. Dzi ki temu przez po±rednictwo klasy asocjacyjnej Rola, klasa Pracownik jest powi zana z klas Projekt.

Dziedziczenie (generalizacja) Generalizacja odpowiada dziedziczeniu znanemu z j zyków programowania. Generalizacja to zwi zek pomi dzy bardziej ogóln klas (rodzicem) a klas bardziej szczegóªow (dzieckiem). Przykªady generalizacji: Kwadrat jest Figur Fiat jest Samochodem Pies jest Zwierz ciem, itd.

Agregacja Agregacje s wykorzystywane w celu przedstawienia elementów, które s zªo»one z mniejszych elementów. Agregacja, w skrócie, oznacza zawieranie, np. Dom zawiera okno Sygnalizacja ±wietlna zawiera»arówk Mieszkanie zawiera telefon Agregacj na diagramie UML oznacza si strzaªk z ko«cem zako«czonym pustym rombem, skierowany w kierunku klasy rodzicielskiej.

Kompozycja I Kompozycja jest szczególnym przypadkiem agregacji. Kompozycja od agregacji ró»ni si tym,»e klasa posiada obiekty (skªada si z obiektów), które bez tej klasy nie mogªy by istnie. Je±li rodzic w kompozycji jest usuwany, zwykle wszystkie jego cz ±ci s usuwane z nim; jednak»e cz ± mo»e zosta indywidualnie usuni te z kompozycji, bez konieczno±ci usuwania caªej kompozycji. Kompozycja jest relacj przechodni, asymetryczn i mo»e by rekurencyjne. Kompozycj na diagramie UML oznacza si strzaªk z ko«cem zako«czonym wypeªnionym rombem, skierowany w kierunku klasy rodzicielskiej.

Kompozycja II

Ró»nica mi dzy agregacj i kompozycj - przykªad Ksi»ka adresowa skªada si z wielu kontaktów i grup kontaktów. Grupa kontaktów to wirtualne grupowanie kontaktów; ka»dy kontakt mo»e by zawarty w wi cej ni» jednej grupie kontaktów. Usuni cie ksi»ki adresowej powoduje,»e wszystkie kontakty i grupy kontaktowe zostan usuni te. Usuni cie grupy kontaktów, nie powoduje usuni cia»adnego kontaktu.

Zagnie»d»enia Zagnie»d»enie jest relacj pokazuj c,»e element ¹ródªowy (np. klasa Element) jest zagnie»d»ona w elemencie docelowym (np. klasa Stos).

Zagnie»d»enia I c l a s s S t o s { p r i v a t e : c l a s s Element { public : i n t dana ; Element n e x t ; } ; Element Top ; public : S t o s ( ) ; ~Stos ( ) { c l e a r ( ) ; } ; bool empty ( ) const ; void c l e a r ( ) ; void push ( i n t ) ;

Zagnie»d»enia II } ; void pop ( ) ; i n t top ( ) ;

Zale»no±ci Zale»no±ci u»ywane s do modelowania szerokiego zakresu zwi zków pomi dzy elementami modelu. Zwykle stosowane s na wczesnym etapie procesu projektowania, gdy wiadomo,»e istnieje jaki± zwi zek mi dzy dwoma elementami, ale jest zbyt wcze±nie, aby dokªadnie wiedzie, jaki jest to zwi zek. W pó¹niejszym etapie procesu projektowania zale»no±ci zostan uszczegóªowione lub zast pione bardziej konkretnym typem zwi zku.

Diagramy klas i zwi zki- przykªad ródªo:http://www.uml-diagrams.org/class-diagrams-overview.html

Diagramy obiektów Diagram obiektu mo»e by uwa»ane za szczególny przypadek diagramu klasy. Diagramy obiektu wykorzystuj podzbiór elementów diagramu klas, aby podkre±li zwi zek pomi dzy instancjami klas w pewnym momencie czasowym. Diagramy obiektu nie pokazuj niczego architektonicznie innego do diagramów klas, ale odzwierciedlaj wielo± i role.

Diagramy obiektów - ró»nice w wygl dzie pomi dzy klas i obiektem Klasy skªada si z trzech cz ±ci: nazwa klasy, atrybuty i operacje. Domy±lnie obiekty nie maj takiego przedziaªu, posiadaj tylko nazw. Obiekty na diagramie prezentuje si za pomoc prostok tów, w których nazwa jest podkre±lona. Po niej, po dwukropku, znajduje si nazwa klasy, której obiekt reprezentuje dany prostok t.

Diagramy obiektów - przykªad ródªo:http: //www.uml-diagrams.org/class-diagrams-overview.html#object-diagram