Analiza i projektowanie obiektowe

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

Download "Analiza i projektowanie obiektowe"

Transkrypt

1 Analiza i projektowanie obiektowe

2 Procesy budowy systemów informatycznych Fazy procesu budowy SI Specyfikacja wymagań o Analiza dziedziny modelowanie podstawowych pojęć i terminów Analiza systemowa modelowanie problemu Projektowanie modelowanie rozwiązania Programowanie budowa modelu działającego na komputerze Testowanie Integracja Wdrożenie Utrzymanie

3 Analiza systemowa Proje ektowanie Celem analizy jest j zbudowanie modelu składających się na dziedzinę wdrożen nia. dla pojęć Świat rzeczywisty Model Celem fazy projektowania jest zdefiniowanie pojęć niezbędnych dla implementacji budowanego systemu informatycznego. Cechy modeli: Opisowy Formalny Graficzny

4 Analiza systemowa Narzędzie pracy analityków i projektantów wspomagające opracowywania rozwiązań Wizualizacja wyników pracy dla zarządzania i komunikacji z innymi analitykami Współpraca z przyszłymi użytkownikami systemu informatycznego Podstawa do implementacji Dokumentowanie projektu Projektowanie modułowe Wirth 1971 Analiza strukturalna Constantine i Yourdon 1975 DeMarco 1978 Mellor, Ward Model związków-encji Chen 1976 Analiza obiektowa Shlaher, Mellor 1988 Coad, Yourdon 1991 Booch 1991 Rumbaugh, Blaha 1991

5 Metodyki i analizy obiektowe Świat jest modelowany jako zbiór klas i obiektów oraz związków między klasami i związków między obiektami. Diagram klas umożliwia jednoczesne modelowanie struktur danych i funkcjonalności w przeciwieństwie do klasycznej analizy funkcjonalnej diagramy: hierarchii funkcji, encji-związków, przepływów danych. Wielość modeli, notacji i metodyk obiektowych: Karty CRC Metoda Couda-Yourdona OOA/OOD Object Modeling Technique OMT Rumbaugh Object-Oriented Software Engineering OOSE lub Objectory (Object Factory) Jacobson Object-Oriented Design & Analyze OOAD Booch Język UML OMT Object Modeling Technique Rumbaugh Objectory Jacobson OODA Object Oriented Design & Analyze Booch UML Unified Modeling Language

6 Skąd się biorą klasy? Identyfikacja klas Klasy encyjne powstają w fazie analizy dziedziny i analizy systemowej. Służą do opisu dziedziny zastosowania. Przykłady klas encyjnych firma ubezpieczeniowa: Klient Ubezpieczenie Szkoda Odszkodowanie, Klasy interfejsu i komunikacyjne powstają w fazie projektowania. Służą do opisu implementacji systemu informatycznego. Przykłady klas interfejsu i komunikacji: Okno Przycisk Błąd

7 Karty CRC Class Responsibilities and Collaborators Zostały wprowadzone przez Kenta Becka i Warda Cunnighama i opisane w artykule A Laboratory for Teaching Object-Oriented Thinking przedstawionym na konferencji OOPSLA 89. Narzędzie wykorzystywane podczas burzy mózgów do identyfikowania klas. Bazując na znanych wymaganiach za pomocą kart CRC modeluje się behawioralne własności budowanego systemu informatycznego. Class name Superclasses Subclasses Responsibilities Collaborators Author

8 Karty CRC Klient Składa zamówienia Opłaca faktury Zna swoją nazwę Zna swój adres Zamówienie Faktura Zamówienie Zna numer Zna datę złożenia Zna wartość Zna pozycje Zna klienta Klient Faktura Pozycja

9 Standard języka UML Historia wersji Wersje opublikowane przez RSC i UML Partners Styczeń 1997 Wersje UML opublikowane przez OMG Wersja Data publikacji URL 1.3 Marzec Wrzesień Lipiec 2004 zobacz: ISO/IEC Marzec Lipiec Sierpień Listopad Luty ,3 Maj 2010 Wersje UML opublikowane przez ISO Numer Data Wersja URL ISO/IEC Styczeń

10 UML - podstawowe diagramy Strukturalne Diagram klas Diagram obiektów Diagram struktury złożonej Diagram komponentów Diagram pakietów Diagram rozmieszczenia Dynamiczne Diagram przypadków użycia Diagram współdziałania Diagram stanów Diagram działania

11 Diagram klas Definicja diagramu klas Diagram klas jest graficzną prezentacją statycznej perspektywy kolekcji klas, typów danych i interfejsów oraz łączących je związków. Specyfikacja klas obejmuje elementy strukturalne i funkcjonalne, ale ich dynamika jest opisana poprzez inne diagramy. Zastosowanie diagramów klas specyfikacja wymagań analiza projekt generalizacja Definicja diagramu obiektów Diagram obiektów jest szczególnym przypadkiem diagramu klas. Diagram obiektów przedstawia obiekty i łączące je związki w konkretnym punkcie czasu.

12 Specyfikacja klasy Klasa jest abstrakcyjną reprezentacją zbioru podobnych obiektów świata rzeczywistego lub implementacji. Pojęcie klasy integruje strukturalne i behawioralne własności obiektów świata rzeczywistego. Elementy specyfikacji klasy: Nazwa służy do przypisania semantycznej informacji o klasie Cechy (properties) umożliwiają przechowywanie informacji o obiekcie: pracownik nazywa się Nowak, pracownik jest prezesem Operacje (operations) definiują funkcjonalność obiektów: pracownika można awansować, pracownika można zatrudnić imię nazwisko etat płaca zatrudnij() awansuj() przenieś() zwolnij() zmieńdane() Dopuszczalna jest również notacja niepełna:

13 Elementy specyfikacji klasy Nazwy proste i ścieżkowe Kadry:: Klasa abstrakcyjna - to klasa o niekompletnej implementacji Liczba wystąpień klasy Cylinder 8 Stereotypy umożliwiają rozszerzenie elementów języka UML o pojęcia wprowadzone przez użytkowników <<kolekcja>> Stos Stos Etykiety {wersja 5.1 napisana przez: M.Tarzana} Właściwości opisują dodatkową semantykę klas {leaf}

14 Specyfikacja klasy Dostępność cech i operacji + publiczne opisują funkcjonalność klasy (ADT) prywatne są częścią implementacji klasy # chronione - są częścią implementacji klasy dostępną w klasach pochodnych Zasięg cech i operacji obiektowe definiują własności obiektów klasowe definiują własności klas Operacje abstrakcyjne nie mają implementacji Niepełna specyfikacja klasy Typy cech i operacji <<dane personalne>> # imię # nazwisko <<dane pracownicze>> # etat - płaca... + zatrudnij() + awansuj() + przenieś() + zwolnij() + zmieńdane() + policzów() niepełna specyfikacja operacja abstrakcyjna operacja klasowa

15 Specyfikacja cech klasy Składnia [dostępność] nazwa [[liczebność]] [:typ] [=wartość początkowa] [{własności}] Predefiniowane własności cech: changeable modyfikowalne addonly dla cech wielowartościowych możliwe jedynie dodawanie nowych elementów frozen po inicjacji - niemodyfikowalne Przykłady: + imię :String - identyfikator [1] :Integer {frozen} # operacje [0..*] :Operacja {addonly} # dataoperacji [0..1] = ' '

16 Specyfikacja operacji klasy Składnia [dostępność] nazwa [(parametry)] [:typ wyniku] [{własności}] Specyfikacja parametrów [tryb] nazwa : typ [=wartość domyślna] tryby: {IN, OUT, INOUT} Predefiniowane własności operacji: isquery zapytanie, nie zmienia stanu systemu sequential operacja nie synchronizuje współbieżności wykonania guarded operacja synchronizuje współbieżność wykonania przez sekwencyjne wykonanie jej współbieżnych wywołań concurrent operacja synchronizuje współbieżność wykonania, gwarantując atomowość jej współbieżnych wywołań Przykłady: + danepersonalne() :String {isquery} + dajpodwyżkę (IN procent:integer) + policzów () :Integer

17 Kompletny przykład specyfikacji klasy SystemZarządzania::Transakcja # identyfikator : Integer {frozen} # operacje [*] : Operacja {addonly} # blokady [*] : Blokada {addonly} # status : Stan = aktywna {changeable} << konstruktor >> + begin(in id : Integer) << destruktor >> + commit() : Boolean + rollback() << query >> # status() : Boolean << przetwarzanie >> - lock(blokada : Blokada) {concurrent} - akcja(in a : Operacje) {concurrent}

18 Związki między obiektami W świecie rzeczywistym obiekty są połączone różnymi związkami. Kowalski jest zatrudniony w Firma X jest podwładnym jest mężem Tarzan

19 Związki między klasami Związki między klasami są abstrakcyjnym opisem związków łączących wystąpienia klas Nazwa powiązania zatrudnia Firma Kierunek czytania nazwy zatrudnia Firma Role powiązania szef podwładny Typ powiązania unarny binarny, n-arny wymaga Projekt Aparatura jest wykorzystywana dostarcza Dostawca Krotność min max Zamówienie 1 zawiera 1..* Pozycja Opcjonalność powiązania 1..* uczestniczy 0..* Projekt

20 Siła powiązania Szczególnym przypadkiem powiązania jest agregacja, która opisuje relację zawierania się obiektów. Szczególnym przypadkiem agregacji jest kompozycja. Obejmuje ona dodatkową semantykę: wyłączności i zależności obiektów składowych. Powiązanie Agregacja Kompozycja Wyłączność oznacza, że obiekt składowy może należeć do tylko jednego obiektu złożonego. Zależność oznacza, że obiekt składowy może istnieć tylko jako część obiektu złożonego. Przykład List Agregacja * 1 1 Adres Treść Kompozycja Samolot 1 należydo 2,4 Skrzydło

21 Własności powiązań dotyczy Nawigacja Zamówienie Towar * 1..* zawiera Dostępność _-bok Wielokąt Odcinek * Kwalifikacja Osoba typdokumentu posiada Dowód Tożsamości Zawężenie interfejsu 0..1 szef:ikierownik 0..* podwładny:i Klasa powiązania Firma Etat odkiedy pensja 0..* 1..* Osoba zatrudnia jest zatrudniony

22 Własności powiązań Własności: xor dwa typy powiązań są rozłączne ordered zbiór obiektów na jednym końcu powiązania jest uporządkowany frozen - powiązania między obiektami nie mogą być modyfikowane addonly - powiązania między obiektami mogą być jedynie dodawane changeable powiązania między obiektami mogą być wstawiane, modyfikowane i usuwane Własności definiowane za pomocą stereotypów i etykiet szef * * zatrudniony {podzbiór} 1 Oddział 0..1 podwładny 1 kieruje {.zatrudniony =.szef.zatrudniony } 1

23 Związki generalizacji/specjalizacji Generalizacja/specjalizacja jest szczególnym rodzajem związków między klasami. Generalizacja jest abstrakcją, która pozwala pominąć mniej istotne cechy klas. Generalizacja umożliwia wyprowadzenie wspólnych cech zbioru podobnych klas. Specjalizacja (dziedziczenie) uszczegóławia zbiór cech bardziej ogólnych klas. Klasa bardziej ogólna jest nazywana nadklasą lub klasą bazową dla podklasy lub klasy pochodnej. + imię + nazwisko + etat + płaca + nazwa_związku + składka_na_związek + samochód_służbowy + zatrudnij() + awansuj() + przenieś() + zapłać_składkę() + zmień_samochód()? Kierownik + imię + nazwisko + etat + płaca + samochód + zatrudnij() + awansuj() + przenieś() + zmień_samochód() Związkowiec + imię + nazwisko + etat + płaca + nazwa_związku + składka_na_związek + zatrudnij() + awansuj() + przenieś() + zapłać_składkę()

24 Przykłady związków generalizacji Klasa reprezentuje wspólne cechy poszczególnych grup pracowników. imię nazwisko etat {płaca Kierownik Związkowiec Sekretarka Definicje podklas zawierają tylko różnice w stosunku do swoich nadklas. Kręgowiec płetwy skrzela Ssak Ptak Gad Płaz Ryba Generalizacja może dotyczyć również związków zawiera Lista Element Lista dwukierunkowa zawiera Element dwukierunkowy

25 Generalizacja jako hierarchia zbiorów obiektów Semantyka generalizacji może być opisana dodatkowo przez kilka predefiniowanych własności opisujących zależności między zbiorami wystąpień klas tworzących hierarchię generalizacji. disjoint żaden obiekt nie może być wystąpieniem jednocześnie dwóch podklas overlapping obiekty mogą być wystąpieniami dwóch podklas complete każde wystąpienie nadklasy musi być jednocześnie wystąpieniem jednej z podklas incomplete mogą istnieć wystąpienia nadklas, które nie są wystąpieniami żadnej z podklas {overlapping, incomplete} Młody- Związkowiec Sekretarka {disjoint, complete} Kręgowiec Ssak Ptak Gad Płaz Ryba

26 Przykładowy diagram klas +tytuł 1 Student {persistance} +nr_indeksu {key} +nazwisko +zapisz_na(kierunek) +przenieś_na(kierunek) +zalicz(przedmiot, ocena) Wykładowca {persistance} {persistance} +nazwisko +stanowisko +płaca ma_adres_domowy +zatrudnij(stanowisko) +zwolnij() 1 1 Adres +kod_pocztowy +miasto +ulica +nr_domu +nr_mieszkania 1..* studiuje_na 1 prowadzi 1..* 0..* poprzedza Kierunek {persistance} +nazwa {key} 1..* obejmuje 1..* Przedmiot {persistance} +nazwa {key} +literatura[1..*] 0..* administracyjny {persistance} +premia

27 Metodyka konstrukcji diagramów klas Każda klas powinna być starannie wydzieloną abstrakcją pochodzącą ze słownictwa dziedziny danego problemu lub jego rozwiązania. Powinna ona obejmować elementy strukturalne i behawioralne. Klasa powinna obejmować mały i dobrze określony zbiór zobowiązań. Rozważ możliwości: podziału klas o zbyt dużej liczbie zobowiązań, scalenia klas o zbyt małej liczbie zobowiązań lub przeniesienia zobowiązań między klasami. Klasa powinna być spójna i luźno związana z innymi klasami; w tym celu przeanalizuj diagramy współpracy klas. Definicja klasy powinna wyraźnie oddzielać specyfikację od implementacji. Powiązane klasy powinny znaleźć się na jednym diagramie klas. Na danym diagramie klasa powinna mieć ujawnione jedynie te właściwości, które są potrzebne do jej zrozumienia w danym kontekście.

28 Definicja klasy musi być jednoznaczna, aby wykluczyć nieporozumienia co do jej znaczenia. W tym celu należy: - określić znaczenie klasy jako całości za pomocą tekstu umieszczonego w notatce <<semantics>> - pogrupować operacje i cechy w kategorie - określić znaczenia każdej z operacji za pomocą tekstu lub kodu źródłowego programu umieszczonego w notatce - opracować maszyny stanów dla wystąpień klasy - zdefiniować warunki początkowe i końcowe dla wszystkich operacji oraz niezmiennik klasy; w tym celu można wykorzystać język definicji więzów integralności OCL

29 Diagramy obiektów Graficzna prezentacja obiektów: obiekty anonimowe, nazwane, zbiory obiektów i obiekty bezklasowe p1:prostokąt p2:prostokąt :Prostokąt :Prostokąt :Prostokąt :Prostokąt Własności obiektów: wartości atrybutów, stan obiektu, związki między obiektami <<isinstanceof>> x : float y : float Punkt przesuń (Wektor) 4 1 Prostokąt powierzchnia() p1:punkt x = 4.5 y = 12 p3:punkt [bieżący] p4:prostokąt p2:punkt x = 2.5 y = 8

30 Diagramy współpracy Diagram współpracy jest zestawem wierzchołków i krawędzi reprezentujący związki strukturalne między obiektami wysyłającymi i odbierającymi komunikaty. Wyróżnia się pięć stereotypowych powiązań między obiektami umożliwiających przesłanie komunikatu: association przez powiązanie klas self ten sam obiekt global obiekt globalny local obiekt w zasięgu lokalnym parameter parametr wejściowy #nazwisko... +awansuj(e : Etat) +podwyżka(p:float) * 1 Firma pracuje w zatrudnia z: ZUS <<global>> prześlijskładki(suma) p : awansuj("prezes") <<association>> f : Firma

31 Diagramy współpracy Diagram współpracy umożliwia również określanie kolejności wysyłania komunikatów 2 : dodajstudenta() 1 : <<create>> 3 : zarejestruj() r : Rejestrator 3.1 : odczytajplan() {global} : Szkoła 3.2 : dodaj(s) s : Student zarejestrowany=false {self} s : Student zarejestrowany=true 3.4 : <<become>> 3.3 : dodaj(s) w1 : Wykład w2 : Wykład

32 Literatura Rozdział nr 6 (strony ): Analiza obiektowa i projektowanie obiektowe w Metody obiektowe w teorii i praktyce, Iana Grahama Standard UML Standard UML

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

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

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

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

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

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

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych Modelowanie klas i obiektów Jarosław Kuchta Podstawowe pojęcia (1) Byt, encja (entity) coś co istnieje, posiada własne cechy i wyodrębnioną tożsamość (identity); bytem może być rzecz, osoba, organizacja,

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

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

Podstawy języka UML UML

Podstawy języka UML UML Podstawy języka UML UML Plan prezentacji Wprowadzenie do modelowania Wprowadzenie do języka UML Diagram klas Diagram pakietów Diagram przypadków użycia Diagram czynności Terminologia Terminologia Aplikacja

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

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

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

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

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

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

Podstawy języka UML UML

Podstawy języka UML UML 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,

Bardziej szczegółowo

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

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2 Wyższa Szkoła Menedżerska w Legnicy Systemy informatyczne w przedsiębiorstwach Zarządzanie, ZIP, sem. 6 (JG) Modelowanie wymagań Wykład 2 Grzegorz Bazydło Cel wykładu Celem wykładu jest przekazanie wiedzy

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

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

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

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

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

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

Faza analizy (modelowania) Faza projektowania

Faza analizy (modelowania) Faza projektowania Faza analizy (modelowania) Faza projektowania Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie: co i przy jakich ograniczeniach system ma robić? Wynikiem tej analizy jest zbiór wymagań

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

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

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI KARTA PRZEDMIOTU przedmiotu Stopień studiów i forma Rodzaj przedmiotu Grupa kursów Zaawansowane techniki analizy systemowej oparte na modelowaniu warsztaty Studia podyplomowe Obowiązkowy NIE Wykład Ćwiczenia

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

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

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu Podstawy baz danych PODSTAWY BAZ DANYCH 5. Modelowanie danych 1 Etapy tworzenia systemu informatycznego Etapy tworzenia systemu informatycznego - (według CASE*Method) (CASE Computer Aided Systems Engineering ) Analiza wymagań

Bardziej szczegółowo

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty przedmiotu Stopień studiów i forma: Rodzaj przedmiotu Kod przedmiotu Grupa kursów Zaawansowane techniki analizy

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

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

UML. dr inż. Marcin Pietroo

UML. dr inż. Marcin Pietroo dr inż. Marcin Pietroo Pojęcia obiektowości obiekt klasa komunikat hermetyzacja polimorfizm dziedziczenie graficzny język wizualizacji, specyfikowania, tworzenia i dokumentowania systemów informatycznych

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

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

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład II: Analiza i projektowanie obiektowe 28 październik 2013 Plan wykładu Wstęp do modelowania Motywacja Analiza i projektowanie obiektowe Modelowanie dziedziny

Bardziej szczegółowo

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

UML cz. I. UML cz. I 1/1 UML cz. I UML cz. I 1/1 UML cz. I 2/1 UML - Unified Modeling Language ujednolicony można go współdzielić z wieloma pracownikami modelowania służy do opisu projektowanego modelu język posiada opisaną strukturę

Bardziej szczegółowo

Obiektowe bazy danych

Obiektowe bazy danych Obiektowe bazy Obiektowy model Wykład prowadzi: Tomasz Koszlajda Plan wykładu Przesłanki dla nowej generacji systemów baz Podstawowe elementy obiektowego modelu Konstruktory złożonych typów Abstrakcyjne

Bardziej szczegółowo

Diagramy czynności Na podstawie UML 2.0 Tutorial

Diagramy czynności Na podstawie UML 2.0 Tutorial 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/

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

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

Ś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

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

Informatyka I. Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki

Informatyka I. Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki Informatyka I Dziedziczenie. Nadpisanie metod. Klasy abstrakcyjne. Wskaźnik this. Metody i pola statyczne. dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Dziedziczenie klas

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

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

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

Typy klasowe (klasy) 1. Programowanie obiektowe. 2. Założenia paradygmatu obiektowego:

Typy klasowe (klasy) 1. Programowanie obiektowe. 2. Założenia paradygmatu obiektowego: Typy klasowe (klasy) 1. Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która definiuje programy za pomocą obiektów

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

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

WPROWADZENIE DO UML-a

WPROWADZENIE DO UML-a WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,

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

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

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Wprowadzenie do UML Igor Gocaliński Odrobina historii Połowa lat 70-tych i koniec 80-tych to początek analizy obiektowej Wiele opracowanych metod w połowie lat 90-tych Metoda

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

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

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

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,

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

DIAGRAM KLAS. Kamila Vestergaard. materiał dydaktyczny

DIAGRAM KLAS. Kamila Vestergaard. materiał dydaktyczny DIAGRAM KLAS Kamila Vestergaard materiał dydaktyczny DEFINICJA D I A G R A M K L A S Diagram klas pokazuje wzajemne powiązania pomiędzy klasami, które tworzą jakiś system. Zawarte są w nim informacje dotyczące

Bardziej szczegółowo

Post-relacyjne bazy danych

Post-relacyjne bazy danych Post-relacyjne bazy danych Historia języka SQL 1. Sequel-XRM 2. Sequel/2 SQL 3. ANSI SQL 1986 (ISO 1987) 4. X/Open (UNIX), SAA(IBM) 5. ANSI SQL 1989 6. ANSI/ISO SQL 92 Entry level 7. ANSI SQL 92 (SQL 2)

Bardziej szczegółowo

Modelowanie obiektowe systemów

Modelowanie obiektowe systemów Modelowanie obiektowe systemów Dr inż. Ludmiła Rekuć www.ioz.pwr.wroc.pl/pracownicy/l_rekuc Literatura Dąbrowski M.,Stasiak A.,Wolski M. Modelowanie systemów informatycznych w języku UML 2. PWN, 2009 Wrycza

Bardziej szczegółowo

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Notka biograficzna Dr inż. Mariusz Trzaska jest adiunktem w Polsko-Japońskiej Wyższej Szkole Technik Komputerowych, gdzie zajmuje się

Bardziej szczegółowo

Inżynieria oprogramowania. Jan Magott

Inżynieria oprogramowania. Jan Magott Inżynieria oprogramowania Jan Magott Literatura do języka UML G. Booch, J. Rumbaugh, I. Jacobson, UML przewodnik użytkownika, Seria Inżynieria oprogramowania, WNT, 2001, 2002. M. Fowler, UML w kropelce,

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

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

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 OBIEKTOWE Z UML

MODELOWANIE OBIEKTOWE Z UML MODELOWANIE OBIEKTOWE Z UML Maciej Patan Paradygmat obiektowy system zbiór unikatowych obiektów( społeczność obiektów ), obiekt w czasie swego cyklu życia : jest nośnikiem informacji(atrybuty=dane), może

Bardziej szczegółowo

Technologie i usługi internetowe cz. 2

Technologie i usługi internetowe cz. 2 Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,

Bardziej szczegółowo

Diagramy UML, przykład problemu kolizji

Diagramy UML, przykład problemu kolizji Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Kurs: Copyright c 2015 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Projektowanie obiektowe oprogramowania Wykład 2 - UML Wiktor Zychla 2016

Projektowanie obiektowe oprogramowania Wykład 2 - UML Wiktor Zychla 2016 Projektowanie obiektowe oprogramowania Wykład 2 - UML Wiktor Zychla 206 Spis treści Wprowadzenie... 2 2 Diagramy klas... 3 2. Hierarchia modeli... 3 2.. Diagram modelu pojęciowego... 3 2..2 Diagram modelu

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

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski BAZY DANYCH model związków encji Opracował: dr inż. Piotr Suchomski Świat rzeczywisty a baza danych Świat rzeczywisty Diagram związków encji Model świata rzeczywistego Założenia, Uproszczenia, ograniczenia

Bardziej szczegółowo

Modelowanie i analiza systemów informatycznych

Modelowanie i analiza systemów informatycznych Modelowanie i analiza systemów informatycznych MBSE/SysML Wykład 11 SYSMOD Wykorzystane materiały Budapest University of Technology and Economics, Department of Measurement and InformaJon Systems: The

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

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

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

problem w określonym kontekście siły istotę jego rozwiązania Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego

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

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016 Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal

Bardziej szczegółowo

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

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 1 UCD - User Centered Design 1) User Centered Design Projekt Skoncentrowany

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

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

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM

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

Wprowadzenie do UML, przykład użycia kolizja

Wprowadzenie do UML, przykład użycia kolizja Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2012 Bogdan Kreczmer Niniejszy dokument

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

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

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

Projektowanie systemów informatycznych. wykład 6

Projektowanie systemów informatycznych. wykład 6 Projektowanie systemów informatycznych wykład 6 Iteracyjno-przyrostowy proces projektowania systemów Metodyka (ang. methodology) tworzenia systemów informatycznych (TSI) stanowi spójny, logicznie uporządkowany

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

Strukturalne metodyki projektowania systemûw informatycznych

Strukturalne metodyki projektowania systemûw informatycznych Strukturalne metodyki projektowania systemûw informatycznych Kalendarium 1976 ó Chen P. (Entity Relationship Model ñ ERD ) 1978 ó DeMarco T. 1979 ó Yourdon E., Constantine L. 1983 ó Jackson M. 1989 ñ Yourdon

Bardziej szczegółowo

Obiektowe bazy danych

Obiektowe bazy danych Obiektowe bazy danych Obiektowy model danych Wykład prowadzi: Tomasz Koszlajda Obiektowe bazy danych Obiektowy model danych Tematyka obiektowych baz danych obejmuje trzy jednostki wykładowe. Pierwszy wykład

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

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych Diagramy związków encji ERD Ćwiczenia w modelowaniu danych dr Lidia Stępień wykład 5 ERD ang. Entity-Relationship Diagram Diagram związków encji Proces konstruowania projektu systemu bazy danych. Abstrakcyjna

Bardziej szczegółowo

Mechanizm dziedziczenia

Mechanizm dziedziczenia Mechanizm dziedziczenia Programowanie obiektowe jako realizacja koncepcji ponownego wykorzystania kodu Jak przebiega proces dziedziczenia? Weryfikacja formalna poprawności dziedziczenia Realizacja dziedziczenia

Bardziej szczegółowo

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

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami. UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami

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

Analiza i projektowanie aplikacji Java

Analiza i projektowanie aplikacji Java Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie

Bardziej szczegółowo

Projektowanie Systemów Informatycznych Wstęp do Metod Obiektowych podejście procesowe

Projektowanie Systemów Informatycznych Wstęp do Metod Obiektowych podejście procesowe Projektowanie Systemów Informatycznych Wstęp do Metod Obiektowych podejście procesowe dr inż. Janusz Jabłoński e-mail j.jablonski@wmie.uz.zgora.pl Narzędzia implementacji a metodyki projektowania SI Koncepcja

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