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

Wielkość: px
Rozpocząć pokaz od strony:

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

Transkrypt

1 KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH Analiza przypadków użycia - diagramy klas w fazie analizy Przygotował: mgr inż. Radosław Adamus

2 Wstęp Poprzednie ćwiczenie (Analiza przypadków użycia analiza zachowania) wprowadziło nas w pierwszą fazę procesu analizy przypadków użycia: wyszukiwanie kluczowych abstrakcji, budowę modelu projektowego oraz tworzenie realizacji przypadków użycia poprzez analizę zachowania na diagramach interakcji. Niniejsze ćwiczenie jest kontynuacją tego procesu polegającą na tworzeniu diagramów klas, definiowaniu atrybutów, związków (asocjacji) pomiędzy klasami oraz definiowaniu mechanizmu analizy uwzględniającego wymagania niefunkcjonalne. Definiowanie klas Po zdefiniowaniu diagramów interakcji opisujących realizację przypadków użycia, kolejnym zadaniem, jakie należy wykonać, jest odzwierciedlenie zachowania obiektów w statycznej strukturze klas. Zadania te składają się z następujących czynności: 1. Określenie odpowiedzialności poszczególnych klas (na podstawie komunikatów, jakie otrzymują obiekty tej klasy na diagramach interakcji) 2. Określenie atrybutów i asocjacji 3. Określenie mechanizmu analizy 4. Unifikacja klas z poszczególnych przypadków użycia Określanie odpowiedzialności klas Każda z klas analizy jest odpowiedzialna za wykonanie określonych zadań w przypadku użycia. Rozróżnienie pomiędzy klasami boundary, entity i control wprowadza już podstawowy podział odpowiedzialności: Klasy boundary odpowiedzialne za komunikację pomiędzy przypadkiem użycia a aktorem, Klasy control odpowiedzialne za sterowanie przepływem zadań wykonywanych w danym przypadku użycia. Klasy entity odpowiedzialne za zarządzanie i przetwarzanie danych potrzebnych do realizacji przypadku użycia.

3 Po dokonaniu tego wstępnego podziału należy określić szczegółowe odpowiedzialności poszczególnych klas. Na opis odpowiedzialności składają się: Działania, jakie obiekt klasy jest zobowiązany wykonać (wyrażane jako operacje) podstawowym źródłem informacji na ten temat są diagramy interakcji. Informacje, jakie obiekt posiada, którymi zarządza i które udostępnia (wyrażane jako atrybuty klas oraz operacje umożliwiające zarządzanie tymi danymi) podstawowym źródłem informacji są: specyfikacja systemu, specyfikacje przypadków użycia, słownik pojęć, wymagania niefunkcjonalne. Określanie atrybutów Atrybuty są wykorzystywane do przechowywania informacji, zakłada się ich atomowość i nie posiadanie odpowiedzialności. Nazwa atrybutu powinna być rzeczownikiem, który jasno określa, jakie informacje przechowuje dany atrybut. Jeżeli z nazwy atrybutu nie wynika, w sposób oczywisty, jakie informacje przechowuje powinien on być dodatkowo opisany. W fazie analizy nie przeznacza się dużo czasu na definiowane typów/sygnatur atrybutów. Typy powinny pochodzić z modelowanej dziedziny biznesowej i nie mieć związku ż żadnym konkretnym językiem programowania. Potencjalnymi źródłami atrybutów są: Wiedza dziedzinowa, Wymagania, Specyfikacje przypadków użycia. Należy pamiętać o tym, że atrybuty są atomowe i jeżeli jakaś własność klasy powinna posiadać odpowiedzialność to nie może być zamodelowana jako atrybut, ale jako osobna klasa połączona odpowiednim związkiem z daną klasą (asocjacja, agregacja). Decyzja o tym czy dana własność jest atomowa zależy od modelowanego problemu i powinna przede wszystkim uwzględniać ewentualną odpowiedzialność klasy a nie samą atomowość danych (np. typ data/godzina jest zazwyczaj traktowany jako atomowy mimo tego, że z punktu widzenia konkretnego języka implementacyjnego wcale nie musi być typem atomowym). Ogólnie można powiedzieć, że należy wykorzystać atrybuty, jeżeli:

4 Istotna jest tylko wartość, a nie jej lokalizacja, Informacja jest przypisana tylko do jednego obiektu, żadne inne obiekty nie odnoszą się bezpośrednio do tej informacji. Dostęp do informacji można zamodelować jako dwie operacje: ustaw (set) i pobierz (get), które dokonują co najwyżej prostych transformacji. Informacja nie posiada żadnego zachowania poza udostępnianiem swojej wartości. Z drugiej strony, jeżeli informacja posiada złożone zachowanie lub jest współdzielona przez dwa lub większą liczbę obiektów powinna być zamodelowana jako osobna klasa. Należy pamiętać, że proces określania atrybutów jest sterowany przypadkami użycia, co oznacza, że wszystkie wykryte atrybuty muszą być przydatne w realizacji przynajmniej jednego przypadku użycia. Określanie asocjacji Asocjacja reprezentuje strukturalny związek pomiędzy obiektami różnych klas (łączy instancje dwóch lub większej liczny klas przez pewien odcinek czasu). Asocjacje można wykorzystać w celu pokazania, że jeden obiekt wie o istnieniu innego obiektu. Wynika to z tego, że często, w celu umożliwienie interakcji pomiędzy nimi (np. przesyłania komunikatów), obiekty muszą przechowywać referencję do siebie nawzajem. Z tego względu cześć asocjacji pomiędzy klasami bezpośrednio wynika z interakcji opisanych na diagramach sekwencji czy współpracy. Większość asocjacji to proste związki łączące dwie klasy: Państwo Stolica Rys 1. Związek asocjacji Zdarza się, że klasa posada asocjację do samej siebie. Nie musi to jednak oznaczać, że instancja tej klasy jest związana ze sobą; częściej oznacza to, że jedna instancja klasy jest związana z inną instancją tej samej klasy.

5 Osoba podwładny szef Rys 2. Asocjacja typu self Asocjacja może posiadać nazwę, która może być umieszczona nad lub pod linią definiującą związek asocjacji. Nazwa powinna odzwierciedlać cel, jakiemu służy powiązanie i z tego względu powinna być czasownikiem. Firma pracuje_dla Osoba Rys 3. Nazwa asocjacji Należy unikać nazw, typu: posiada, zawiera, ponieważ nie wnoszą one żadnej nowej informacji o związku pomiędzy klasami (są zbyt ogólne, związek typu zawiera jest bezpośrednio wyrażany w UML-u jako specjalna forma asocjacji nazywana agregacją). Nazwa asocjacji jest opcjonalna i może zostać pominięta, jeżeli związek jest oczywisty (np. wynika z nazw klas biorących w nim udział lub jest naturalny). Nazwa asocjacji jest również pomijana, jeżeli opisane zostały role, jakie są grane przez klasy uczestniczące w danym związku. Opis asocjacji poprzez role jest niezbędny w przypadku, gdy związek łączy ze sobą tą samą klasę (patrz rysunek 2). Dodatkowym, (ale bardzo istotnym) opisem asocjacji jest określenie liczności dla klas występujących w związku. Dzięki liczności możemy wyrazić następujące własności asocjacji: Opcjonalność (liczność może przyjąć wartość zero) Związek jeden do jednego Związek jeden do wielu Związek wiele do wielu Zakres liczby obiektów występujących w danym związku.

6 Wymaganie istnienia jednocześnie kilku obiektów w związku (nieciągłe wartości liczności). Firma 1 1..* Osoba Rys 4. Liczność asocjacji Tabela 1: Oznaczenia liczności w UML- u. UML ZNACZENIE * 1,2,3, * 2,3,4, ,4,5 2,4,18 2,4,18-1,? ,1 0..* 0,1,2,... * 0,1,2,... Innym sposobem precyzowania asocjacji jest skierowanie, czyli określenie czy obie strony asocjacji wiedzą nawzajem o swoim istnieniu czy też, tylko jedna ze stron wie o istnieniu drugiej. Asocjacje domyślnie są skierowane (nawigowalne) w obu kierunkach, czyli zakładają, że z poziomu obiektu jednej klasy można dostać się do obiektu drugiej klasy i na odwrót. Jeżeli asocjacja powinna być tylko jednostronna należy to zaznaczyć poprzez dodanie grotu strzałki na końcu linii określającej związek asocjacji.

7 Rys. 5 Asocjacja skierowana Związek pomiędzy klasami może również być wyrażony jako szczególny przypadek asocjacji: agregacja lub generalizacja specjalizacja. Znajdowanie związków pomiędzy klasami Podstawowym źródłem dla procesu wyszukiwania asocjacji są diagramy współpracy pokazujące powiązania pomiędzy obiektami. Takie powiązanie wskazuje na to, że obiekty, pomiędzy którymi ono istnieje, musza się ze sobą komunikować. Oznacza to, że na diagramie klas powinno pojawić się powiązanie pomiędzy klasami, do których nalezą te obiekty. Czyli, należy przyjąć podstawową zasadę, że: Dla każdego związku pomiędzy dwoma obiektami na diagramie współpracy powinno pojawić się powiązanie pomiędzy odpowiednimi klasami na diagramie klas (diagram VOPC dla przypadku użycia). Powiązania, na diagramie współpracy, prowadzące do tego samego obiektu niekoniecznie muszą zostać odzwierciedlone w postaci związku na diagramie klas. Związek (typu self ) powinien pojawić się na diagramie klas, jeżeli powiązanie łączy ze sobą dwa obiekty tej samej klasy. Jeżeli na diagramie sekwencji dwa obiekty przesyłają między sobą różne komunikaty może to niekiedy oznaczać, że pomiędzy klasami, do których to obiekty należą, istnieje więcej niż jeden związek asocjacji. Sytuacja taka nie wynika jedna z liczby komunikatów, ale z ewentualnych różnych ról, jakie są przypisane do tych samych klas w różnych sytuacjach. Przykład z rysunku 6 pokazuje sytuację, w której osoba może być członkiem wielu komitetów, przewodniczącym tylko jednego. Nastąpiło tutaj rozróżnienie ról (członek komitetu, przewodniczący komitetu) i wynikające z tego różnice (w tym wypadku liczność) spowodowały potrzebę stworzenia dwóch osobnych asocjacji. jest_członkiem * * Osoba Komitet 1 jest_przewodniczącym * Rys. 6 Kilka asocjacji łączących te same klasy

8 Trzeba pamiętać o tym, że skupić się należy tylko na asocjacjach potrzebnych w realizacji przypadku użycia. Nie dodawać związków, które wydaje się, że powinny wystąpić, jeżeli nie zostały wykryte na podstawie analizy diagramu interakcji. Po zdefiniowaniu asocjacji należy określić i nazwać role, jakie klasy grają w tym związku (bądź nadać nazwę samej asocjacji), oraz określić liczność asocjacji. Na koniec należy krótko opisać asocjację w celu zasygnalizowania sposobu, w jaki asocjacja jest używana lub, jaki związek reprezentuje. Agregacja Agregacja jest szczególną formą asocjacji, wykorzystywaną do modelowania związku całość - część. Ponieważ, jest to po prostu specjalna forma asocjacji to wszystkie własności asocjacji (role, liczność, skierowanie) również dotyczą związku agregacji. Rys. 7 Agregacja, czyli związek całość część. Kiedy należy zdefiniować związek agregacji zamiast asocjacji? Obiekt jest złożony z innych obiektów (np. samochód składa się z silnika, czterech kół, itd.) obiekt jest niekompletny bez swoich części (na poziomie analizy nie rozpatruje się podziału na agregację i kompozycję), Obiekt jest logiczną kolekcją innych obiektów (np. rodzina składa się z rodziców i dzieci). Obiekt fizycznie zawiera w sobie inne obiekty (np. samolot zawiera pilota). Jednak odpowiedz na pytanie, czy należy wykorzystać asocjację, czy agregację jest w dużym stopniu zależna od konkretnej aplikacji. Jeżeli modelowanie dotyczy np. dealerów samochodowych to związek pomiędzy silnikiem a samochodem będzie niewątpliwie występował jako związek całość część, natomiast w przypadku modelowania sklepu z częściami samochodowymi silnik

9 może być mniej zależny od konkretnego samochodu i związek przyjmie postać asocjacji. Przyjmuje się, że w przypadku wątpliwości należy użyć asocjacji. Określanie mechanizmu analizy Wyidealizowany model analizy nie uwzględnia wymagań niefunkcjonalnych (np. wydajność, trwałość, rozproszenie, itd.). Jest to spowodowane tym, że wprowadzają one duży bagaż złożoności, który na tym etapie może spowodować przysłonięcie niektórych, istotnych z punktu widzenia dziedziny biznesowej własności funkcjonalnych projektowanego systemu. Nie oznacza to jednak, że wymagania niefunkcjonalne powinny zostać pominięte, są one równie istotne jak funkcje systemu. Dlatego, w celu uniknięcia nadmiernej złożoności na tym etapie projektu wprowadza się tzw. mechanizm analizy, który pozwala na przypisanie wymagań niefunkcjonalnych do poszczególnych elementów modelu analizy i ogólne opisanie ich (wymagań niefunkcjonalnych) charakterystyk w sposób niezależny od implementacji. Jeżeli, na przykład, analityk wykryje, że pewna grupa danych powinna być trwała (powinna istnieć nawet, gdy aplikacja w tym momencie nie pracuje), to, mimo tego, że nie został jeszcze wybrany mechanizm ani narzędzie (system bazy danych) zarządzania takimi danymi, musi mieć on możliwość zasygnalizowania takiej sytuacji. W tym celu używa on mechanizmu analizy, który pozwala opisać samą niefunkcjonalną własność elementu modelu, jak i określić jej charakterystyki. Przykładami mechanizmów analizy są: Trwałość (ang. Persistency) Typ komunikacji (IPC, RPC) Przekazywanie komunikatów (ang. Message routing) Rozproszenie (ang. Distribution) Transakcje (ang. Transaction Management) Synchronizacja procesów (ang. Process synchronization) Wymiana informacji, formaty konwersji (ang. Information exchange, format conversion) Bezpieczeństwo (ang. Security) Obsługa błędów (ang. Error detection, handling, reporting)

10 Nadmiarowość (ang. Redundancy) Interfejsy spadkowe (ang. Legacy Interface) Każdy mechanizm analizy ma przypisane właściwości umożliwiające sprecyzowanie wybranych własności, np.: Mechanizm: trwałość Ziarnistość Natężenie Czas trwania Mechanizm dostępu Częstotliwość dostępu Niezawodność Mechanizm: komunikacja międzyprocesowa Opóźnienie Synchronizacja Rozmiar komunikatu Protokół Mechanizm: interfejs spadkowy Opóźnienie Czas Mechanizm dostępu Częstotliwość dostępu Mechanizm: bezpieczeństwo Ziarnistość danych Ziarnistość użytkowników Reguły bezpieczeństwa Typy uprawnień

11 Proces opisu mechanizmu analizy W celu opisania mechanizmów analizy należy: Zebrać wszystkie mechanizmy analizy w postaci listy takie same mechanizmy analizy mogą występować w różnych sytuacjach pod różnymi nazwami (trwałość, baza danych, repozytorium, składowanie) (komunikacja między-procesowa, zdalne wywołanie procedury, przekazywanie komunikatów) Narysować mapę powiązań pomiędzy klasami i mechanizmami analizy klasy, nazwy mechanizmów, strzałki łączące klasy z odpowiednimi mechanizmami Określić właściwości mechanizmów analizy aby ułatwić w procesie projektowym wybór odpowiedniego rozwiązania projektowego należy opisać podstawowe właściwości mechanizmów. Zamodelować mechanizmy analizy przy użyciu kolaboracji kiedy mechanizmy zostały zidentyfikowane i nazwane, należy je zamodelować w postaci współpracujących ze sobą klas. Niektóre z tych klas nie udostępniają żadnej funkcjonalności specyficznej dla tworzonej aplikacji, ale jedynie służą wsparciu działania aplikacji (często umieszcza się je potem w specjalnej warstwie oprogramowania zwanej middleware). Unifikacja klas Zanim rozpocznie się proces projektowania przypadków użycia, klasy analizy powinny być zunifikowane w celu uniknięcia nadmiarowości w zdefiniowanych pojęciach. Niebezpieczeństwo powielania się pewnych elementów wynika przede wszystkim z tego, że dotychczas każdy przypadek użycia był rozpatrywany osobno i w odizolowaniu od pozostałych elementów (z wyjątkiem kluczowych abstrakcji). Na tym etapie powinny zostać połączone: Klasy, które opisują to samo zjawisko (być może z różnych punktów widzenia wynikających z innych własności tych zjawisk rozpatrywanych w różnych przypadkach użycia). Klasy, które definiują podobne zachowanie.

12 Klasy entity, które posiadają takie same atrybuty, nawet, jeżeli posiadają inne zachowanie (zachowanie klas powinno zostać zsumowane w klasie wynikowej). Zadania 1. Określ atrybuty, które musza posiadać klasy analizy określone w procesie wykrywania kluczowych abstrakcji oraz analizowania przypadków użycia na diagramach interakcji i umieść je (atrybuty) w odpowiednich klasach. 2. Określ asocjacje pomiędzy klasami analizy na podstawie związków na diagramach współpracy, opisz role i/lub nazwy asocjacji oraz liczność. Sprawdź asocjację pod kątem ich przekształcenia na agregacje. Umieść asocjacje na diagramach VOPC. 3. Dla każdej zidentyfikowanej klasy analizy określ czy należy jej przypisać mechanizmy analizy. Skoncentruj się na następujących mechanizmach: Trwałość, Rozproszenie, Bezpieczeństwo i Interfejs Spadkowy. Pamiętaj, że klasy nie musza mieć żadnego mechanizmu analizy lub mogą mieć jeden i więcej mechanizmów. Jako pomoc wykorzystaj Specyfikację Uzupełniającą. Określony mechanizm analizy wraz z opisanymi własnościami umieć w dokumentacji klas. Utwórz dokument programu Word o nazwie Mapa mechanizmów analizy i umieść w nim tabelkę wiążącą klasy z odpowiednimi mechanizmami analizy (patrz przykład w tabeli 2). Tabela 2: Przykładowa tabela mapująca klasy na odpowiednie mechanizmy analizy. KLASA ANALIZY Student Kurs Kontrole rejestracji MECHANIZM ANALIZY Trwałość, Bezpieczeństwo Trwałość, Interfejs Spadkowy Rozproszenie 4. Dokonaj unifikacji klas na diagramie Klasy Analizy w pakiecie Model projektowy.

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH Przygotował: mgr inż. Radosław Adamus Wprowadzenie: W procesie definiowania wymagań dla systemu tworzyliśmy Model Przypadków

Bardziej szczegółowo

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA Przygotował: mgr inż. Radosław Adamus Wprowadzenie Podstawą każdego projektu, którego celem jest budowa oprogramowania są wymagania, czyli warunki,

Bardziej szczegółowo

Rysunek 1: Przykłady graficznej prezentacji klas.

Rysunek 1: Przykłady graficznej prezentacji klas. 4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez

Bardziej szczegółowo

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

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language) Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu

Bardziej szczegółowo

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

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 3 Diagramy przypadków użycia Diagramy przypadków użycia (ang. use case)

Bardziej szczegółowo

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

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

UML w Visual Studio. Michał Ciećwierz

UML w Visual Studio. Michał Ciećwierz UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować

Bardziej szczegółowo

Diagram przypadków użycia

Diagram przypadków użycia Diagram przypadków użycia Diagram przypadków użycia opisuje system z punktu widzenia użytkownika, pokazuje, co robi system, a nie jak to robi. Diagram ten sam w sobie zazwyczaj nie daje nam zbyt wielu

Bardziej szczegółowo

Świat rzeczywisty i jego model

Świat rzeczywisty i jego model 2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),

Bardziej szczegółowo

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,

Bardziej szczegółowo

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

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego. Umiejętność czytania oraz tworzenia diagramów klas UML jest podstawą w przypadku zawodu programisty. Z takimi diagramami będziesz spotykał się w przeciągu całej swojej kariery. Diagramy klas UML są zawsze

Bardziej szczegółowo

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

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe

Bardziej szczegółowo

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

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski INFORMATYKA W ZARZĄDZANIU Wykład VI dr Jan Kazimirski jankazim@mac.edu.pl http://www.mac.edu.pl/jankazim MODELOWANIE SYSTEMÓW UML Literatura Joseph Schmuller UML dla każdego, Helion 2001 Perdita Stevens

Bardziej szczegółowo

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

UML cz. II. UML cz. II 1/38 UML cz. II UML cz. II 1/38 UML cz. II 2/38 Klasy Najważniejsze informacje o klasie: różnica pomiędzy klasą a jej instancją (obiektem) na podstawie klasy tworzone są obiekty (instancje klasy) stan obiektu

Bardziej szczegółowo

Laboratorium 6 DIAGRAM KLAS (Class Diagram)

Laboratorium 6 DIAGRAM KLAS (Class Diagram) Laboratorium 6 DIAGRAM KLAS (Class Diagram) Opisuje strukturę programu (a także zależności między nimi), co znajduje odzwierciedlenie w kodzie. Charakteryzuje zależności pomiędzy składnikami systemu: klasami,

Bardziej szczegółowo

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

Inżynieria oprogramowania. Część 5: UML Diagramy klas UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI Opracował: mgr inż. Przemysław Pardel v1.01 2010 Inżynieria oprogramowania Część 5: UML Diagramy klas ZAGADNIENIA DO ZREALIZOWANIA (3H) 1. Diagram klas... 3 Zadanie

Bardziej szczegółowo

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

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji Analiza i programowanie obiektowe 2016/2017 Wykład 6: Projektowanie obiektowe: diagramy interakcji Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Przejście

Bardziej szczegółowo

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

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

Podstawy projektowania systemów komputerowych

Podstawy projektowania systemów komputerowych Podstawy projektowania systemów komputerowych Diagramy klas UML 1 Widok logiczny Widok logiczny Widok fizyczny Widok przypadków użycia Widok procesu Widok konstrukcji Używany do modelowania części systemu

Bardziej szczegółowo

TECHNOLOGIE OBIEKTOWE. Wykład 3

TECHNOLOGIE OBIEKTOWE. Wykład 3 TECHNOLOGIE OBIEKTOWE Wykład 3 2 Diagramy stanów 3 Diagram stanu opisuje zmiany stanu obiektu, podsystemu lub systemu pod wpływem działania operacji. Jest on szczególnie przydatny, gdy zachowanie obiektu

Bardziej szczegółowo

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek TECHNOLOGIE OBIEKTOWE WYKŁAD 2 Anna Mroczek 2 Diagram czynności Czym jest diagram czynności? 3 Diagram czynności (tak jak to definiuje język UML), stanowi graficzną reprezentację przepływu kontroli. 4

Bardziej szczegółowo

Zalety projektowania obiektowego

Zalety projektowania obiektowego Zalety projektowania obiektowego Łatwe zarządzanie Możliwość powtórnego użycia klas obiektów projektowanie/programowanie komponentowe W wielu przypadkach występuje stosunkowo proste mapowanie pomiędzy

Bardziej szczegółowo

Technologie obiektowe

Technologie obiektowe WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność

Bardziej szczegółowo

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

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu. AGH, EAIE, Informatyka Winda - tutorial Systemy czasu rzeczywistego Mirosław Jedynak, Adam Łączyński Spis treści 1 Wstęp... 2 2 Przypadki użycia (Use Case)... 2 3 Diagramy modelu (Object Model Diagram)...

Bardziej szczegółowo

Podstawy programowania III WYKŁAD 4

Podstawy programowania III WYKŁAD 4 Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.

Bardziej szczegółowo

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

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy

Bardziej szczegółowo

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

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej

Bardziej szczegółowo

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

Spis treúci. 1. Wprowadzenie... 13 Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

Modelowanie danych, projektowanie systemu informatycznego

Modelowanie danych, projektowanie systemu informatycznego Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym

Bardziej szczegółowo

Diagramy przypadków użycia

Diagramy przypadków użycia Instytut Informatyki Uniwersytetu Śląskiego 10 października 2010 Spis treści 1 Wprowadzenie do UML 2 3 4 5 6 Diagramy UML Język UML definiuje następujący zestaw diagramów: diagram przypadków użycia - służy

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 8 Diagram pakietów I Diagram pakietów (ang. package diagram) jest diagramem

Bardziej szczegółowo

Podstawy modelowania programów Kod przedmiotu

Podstawy modelowania programów Kod przedmiotu Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

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

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 3: Model związków encji. dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Co to jest model związków encji? Model związków

Bardziej szczegółowo

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych 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

Bardziej szczegółowo

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

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 Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury

Bardziej szczegółowo

ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI

ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI XVIII Forum Teleinformatyki mgr inż. Michał BIJATA, doktorant, Wydział Cybernetyki WAT Michal.Bijata@WAT.edu.pl, Michal@Bijata.com 28 września 2012 AGENDA Architektura

Bardziej szczegółowo

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

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig Modelowanie Obiektowe Wykład 1: Wprowadzenie do Modelowania i języka UML Anna Kulig Wprowadzenie do modelowania Zasady Pojęcia Wprowadzenie do języka UML Plan wykładu Model jest uproszczeniem rzeczywistości.

Bardziej szczegółowo

Paweł Kurzawa, Delfina Kongo

Paweł Kurzawa, Delfina Kongo Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management

Bardziej szczegółowo

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja

Bardziej szczegółowo

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

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie

Bardziej szczegółowo

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP Laboratoria 5-7- część 1 Identyfikacja klas reprezentujących logikę biznesową projektowanego oprogramowania, definicja atrybutów i operacji klas oraz związków między klasami - na podstawie analizy scenariuszy

Bardziej szczegółowo

1 Projektowanie systemu informatycznego

1 Projektowanie systemu informatycznego Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................

Bardziej szczegółowo

Diagramy czynności. Widok logiczny. Widok fizyczny

Diagramy czynności. Widok logiczny. Widok fizyczny Diagramy czynności System widoków 4+1 Kruchtena Widok logiczny Widok fizyczny Widok procesu Widok przypadków użycia Widok konstrukcji Diagramy czynności są jedynym diagramem w widoku procesu modelowanego

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 11 Diagramy struktur złożonych Klasyfikator - definiuje cechy strukturalne

Bardziej szczegółowo

Modelowanie obiektowe - Ćw. 3.

Modelowanie obiektowe - Ćw. 3. 1 Modelowanie obiektowe - Ćw. 3. Treść zajęć: Diagramy przypadków użycia. Zasady tworzenia diagramów przypadków użycia w programie Enterprise Architect. Poznane dotychczas diagramy (czyli diagramy klas)

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 4 Diagramy aktywności I Diagram aktywności (czynności) (ang. activity

Bardziej szczegółowo

Projektowanie oprogramowania

Projektowanie oprogramowania Wrocław, 27.09.2010 1. Warunki wstępne Projektowanie oprogramowania Warunkiem uczestnictwa w zajęciach jest zaliczenie przedmiotu: Podstawy inżynierii oprogramowania (ćwiczenia) Zajęcia składają się z

Bardziej szczegółowo

Podstawy modelowania w języku UML

Podstawy modelowania w języku UML Podstawy modelowania w języku UML dr hab. Bożena Woźna-Szcześniak, prof. UJD Uniwersytet Humanistyczno-Przyrodniczy im. Jana Długosza w Częstochowie Wykład 2 Związki między klasami Asocjacja (ang. Associations)

Bardziej szczegółowo

Diagramy klas. WYKŁAD Piotr Ciskowski

Diagramy klas. WYKŁAD Piotr Ciskowski Diagramy klas WYKŁAD Piotr Ciskowski przedstawienie statyki systemu graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków między nimi obiekty byt, egzemplarz

Bardziej szczegółowo

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

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski Diagramy przypadków użycia WYKŁAD Piotr Ciskowski Diagram przypadków użycia definiowanie wymagań systemowych graficzne przedstawienie przypadków użycia, aktorów, związków między nimi występujących w danej

Bardziej szczegółowo

Projektowanie logiki aplikacji

Projektowanie logiki aplikacji Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

Inżynierski Projekt Zespołowy

Inżynierski Projekt Zespołowy Inżynierski Projekt Zespołowy Projekt Funkcji Systemu 1. Wymagania funkcjonalne i niefunkcjonalne Prace nad specyfikacją powinny się koncentrowad na funkcjonalnościach, interakcji systemu z użytkownikiem,

Bardziej szczegółowo

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

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Diagramy interakcji Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania.

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 5 Diagram sekwencji - wprowadzenie I Diagram sekwencji (ang. sequence

Bardziej szczegółowo

Tworzenie warstwy zasobów projektowanie metodą strukturalną

Tworzenie warstwy zasobów projektowanie metodą strukturalną Tworzenie warstwy zasobów projektowanie metodą strukturalną Autor Zofia Kruczkiewicz Programowanie i wdrażanie systemów informatycznych 2011-03-27 1 1. Zasady modelowania wymagań funkcjonalnych systemu

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska

MAS dr. Inż. Mariusz Trzaska MAS dr. Inż. Mariusz Trzaska Wykład 4 Model obiektowy cz. 2 Zagadnienia Asocjacja binarna Agregacja a kompozycja Modelowanie generalizacji-specjalizacji Obejście dziedziczenia wielokrotnego Asocjacja kwalifikowana

Bardziej szczegółowo

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

UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne. 45. UML, jego struktura i przeznaczenie. Przeznaczenie UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne. Pozwala obrazować, specyfikować, tworzyć

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.

Bardziej szczegółowo

Modelowanie systemów w architekturze J2EE z wykorzystaniem notacji UML

Modelowanie systemów w architekturze J2EE z wykorzystaniem notacji UML VIII Konferencja PLOUG Koœcielisko PaŸdziernik 2002 Modelowanie systemów w architekturze J2EE z wykorzystaniem notacji UML Piotr Wilk Premium Technology Sp. z o.o. PWilk@PremiumTechnology.pl Modelowanie

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA. laboratorium

INŻYNIERIA OPROGRAMOWANIA. laboratorium INŻYNIERIA OPROGRAMOWANIA laboratorium UML 1/4 UML (Unified Modeling Language) - język modelowania obiektowego systemów i procesów [Wikipedia] Spojrzenie na system z różnych perspektyw dzięki zastosowaniu

Bardziej szczegółowo

Zagadnienia Semestr IV Inżynieria Oprogramowania WSZiB

Zagadnienia Semestr IV Inżynieria Oprogramowania WSZiB Zagadnienia Wprowadzenie pojęcia obiektu i klasy obiektu Reprezentacja systemu jako zbioru wzajemnie oddziaływujących obiektów Poszczególne etapy procesu tworzenia obiektowego projektu systemu Charakterystyka

Bardziej szczegółowo

Modelowanie obiektowe

Modelowanie obiektowe Modelowanie obiektowe ZPO 2018/2019 Dr inż. W. Cichalewski Materiały wykonane przez W. Tylman Diagramy klas Diagramy klas Zawiera informacje o statycznych związkach między elementami (klasami) Są ściśle

Bardziej szczegółowo

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

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław

Bardziej szczegółowo

Podstawy inżynierii oprogramowania

Podstawy inżynierii oprogramowania Podstawy inżynierii oprogramowania Modelowanie. Podstawy notacji UML Aleksander Lamża ZKSB Instytut Informatyki Uniwersytet Śląski w Katowicach aleksander.lamza@us.edu.pl Zawartość Czym jest UML? Wybrane

Bardziej szczegółowo

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

Modelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych Modelowanie przypadków użycia Jarosław Kuchta Podstawowe pojęcia Przypadek użycia jest formalnym środkiem dla przedstawienia funkcjonalności systemu informatycznego z punktu widzenia jego użytkowników.

Bardziej szczegółowo

Identyfikacja i modelowanie struktur i procesów biologicznych

Identyfikacja i modelowanie struktur i procesów biologicznych Identyfikacja i modelowanie struktur i procesów biologicznych Laboratorium 2: Wprowadzenie do UML-a. mgr inż. Urszula Smyczyńska AGH Akademia Górniczo-Hutnicza 1. Cel zajęć Celem zajęć jest zapoznanie

Bardziej szczegółowo

Procesowa specyfikacja systemów IT

Procesowa specyfikacja systemów IT Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła 030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,

Bardziej szczegółowo

WOJSKOWA AKADEMIA TECHNICZNA

WOJSKOWA AKADEMIA TECHNICZNA WOJSKOWA AKADEMIA TECHNICZNA LABORATORIUM ANALIZA I MODELOWANIE SYSTEMÓW INFORMATYCZNYCH Stopień, imię i nazwisko prowadzącego Stopień, imię i nazwisko słuchacza Grupa szkoleniowa mgr inż. Łukasz Laszko

Bardziej szczegółowo

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

Źródło: S. Wrycza, B. Marcinkowski, K. Wyrzykowski Język UML 2.0 w modelowaniu systemów informatycznych Helion DIAGRAMY INTERAKCJI DIAGRAMY INTERAKCJI DIAGRAMY STEROWANIA INTERAKCJĄ Diagramy sterowania interakcją dokumentują logiczne związki między fragmentami interakcji. Podstawowe kategorie pojęciowe diagramów sterowania interakcją

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Michał Adamczyk. Język UML

Michał Adamczyk. Język UML Michał Adamczyk Język UML UML I. Czym jest UML Po co UML II.Narzędzia obsługujące UML, edytory UML III.Rodzaje diagramów UML wraz z przykładami Zastosowanie diagramu Podstawowe elementy diagramu Przykładowy

Bardziej szczegółowo

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2 Modelowanie i analiza systemów informatycznych 1. Warstwowa budowa systemów informatycznych 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wstęp do modelowania systemów

Bardziej szczegółowo

Bazy danych TERMINOLOGIA

Bazy danych TERMINOLOGIA Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.

Bardziej szczegółowo

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy

Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy Uwaga: 1. Praca powinna być napisana z użyciem formy bezosobowej np. wykonano. Nazwa rozdziału Zawartość Liczba stron 1. Wstęp Rozdział ten powinien zawierać zarys najważniejszych elementów pracy Krótki

Bardziej szczegółowo

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN Podziękowania REQB Poziom Podstawowy Przykładowy Egzamin Dokument ten został stworzony przez główny zespół Grupy Roboczej REQB dla Poziomu Podstawowego. Tłumaczenie

Bardziej szczegółowo

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów)

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów) Projektowanie obiektowe Wzorce projektowe Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów) 1 Roadmap Adapter Bridge Composite Facade 2 Pojęcia obiekt interfejs typ klasa 3 Co to jest delegacja?

Bardziej szczegółowo

Programowanie obiektowe - 1.

Programowanie obiektowe - 1. Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która

Bardziej szczegółowo

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1 Charakterystyka oprogramowania obiektowego 1. Definicja systemu informatycznego 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wymagania 4. Problemy z podejściem nieobiektowym

Bardziej szczegółowo

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20 Z1-PU7 WYDANIE N2 Strona: 1 z 5 (pieczęć wydziału) KARTA PRZEDMIOTU 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA 3) Karta przedmiotu ważna od roku akademickiego: 2014/2015 2) Kod przedmiotu:

Bardziej szczegółowo

Bazy danych 2. dr inż. Tadeusz Jeleniewski

Bazy danych 2. dr inż. Tadeusz Jeleniewski Wykład 4 Projektowanie bazy danych i procesów aplikacji Modelowanie reguł przetwarzania Środowisko przykładowego programu do modelowania reguł przetwarzania Reguły poprawności 2018-02-23 Bazy danych 2

Bardziej szczegółowo

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2, O-MaSE Organization-based Multiagent System Engineering MiASI2, TWO2, 2017-2018 Materiały Strona poświęcona metodzie O-MaSE http://macr.cis.ksu.edu/projects/omase.html (Multiagent & Cooperative Reasoning

Bardziej szczegółowo

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego PROJEKTOWANIE BAZ DANYCH PRZESTRZENNYCH Zgodne z ogólną metodologią projektowania baz danych Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego Proces budowy bazy danych wymaga

Bardziej szczegółowo

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

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

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

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Systemy informatyczne. Modelowanie danych systemów informatycznych

Systemy informatyczne. Modelowanie danych systemów informatycznych Modelowanie danych systemów informatycznych Diagramy związków encji Entity-Relationship Diagrams Modelowanie danych diagramy związków encji ERD (ang. Entity-Relationship Diagrams) diagramy związków encji

Bardziej szczegółowo

UML. zastosowanie i projektowanie w języku UML

UML. zastosowanie i projektowanie w języku UML UML zastosowanie i projektowanie w języku UML Plan Czym jest UML Diagramy przypadków użycia Diagramy sekwencji Diagramy klas Diagramy stanów Przykładowe programy Visual Studio a UML Czym jest UML UML jest

Bardziej szczegółowo

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

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa

Bardziej szczegółowo

MODELOWANIE OBIEKTOWE

MODELOWANIE OBIEKTOWE (Wykład na podstawie literatury: M.Śmiałek Zrozumieć UML 2.0, Helion 2005) UML Unified Modeling Language (język do specyfikowania, wizualizowania, konstruowania i dokumentacji tzw. artefactów oraz czynności

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska

MAS dr. Inż. Mariusz Trzaska MAS dr. Inż. Mariusz Trzaska Wykład 5 Model obiektowy cz. 3 Zagadnienia Dziedziczenie asocjacji Asocjacje pochodne Redukcja liczności Role wielowartościowe Trochę więcej o agregacji Agregacja rekursywna

Bardziej szczegółowo

Projektowanie Zorientowane na Dziedzinę. ang. Domain Driven Design

Projektowanie Zorientowane na Dziedzinę. ang. Domain Driven Design Projektowanie Zorientowane na Dziedzinę ang. Domain Driven Design 2 Projektowanie Stan posiadania Przypadki użycia Model dziedziny Operacje systemowe Kontrakty dla operacji systemowych Problemy do rozwiązania

Bardziej szczegółowo

WOJSKOWA AKADEMIA TECHNICZNA

WOJSKOWA AKADEMIA TECHNICZNA WOJSKOWA AKADEMIA TECHNICZNA LABORATORIUM ANALIZA I MODELOWANIE SYSTEMÓW INFORMATYCZNYCH Stopień, imię i nazwisko prowadzącego Stopień, imię i nazwisko słuchacza Grupa szkoleniowa mgr inż. Łukasz Laszko

Bardziej szczegółowo