Diagram klas i obiektów

23
Diagram klas i obiektów to graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków między nimi stanowi podstawę przyszłej obiektowej bazy danych

description

Diagram klas i obiektów. to graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków między nimi stanowi podstawę przyszłej obiektowej bazy danych. Obiekt. - PowerPoint PPT Presentation

Transcript of Diagram klas i obiektów

Page 1: Diagram klas i obiektów

Diagram klas i obiektów to graficzne przedstawienie statycznych,

deklaratywnych elementów dziedziny

przedmiotowej oraz związków między nimi

stanowi podstawę przyszłej obiektowej bazy

danych

Page 2: Diagram klas i obiektów

Obiekt OBIEKTEM jest każdy byt – pojęcie lub rzecz

– mający znaczenie w kontekście

rozwiązywania problemu w danej dziedzinie

przedmiotowej. Wszystko co wiadomo o

obiekcie jest reprezentowane przez wartości

atrybutów – czyli cech statycznych tego

obiektu. Zachowanie obiektu wyrażone jest

w operacjach określających usługi, które

oferuje obiekt.

Page 3: Diagram klas i obiektów

Klasa KLASA – jest uogólnieniem zbioru obiektów, które

maja takie same atrybuty, operacje, związki i znaczenie

dowolny obiekt jest instancją abstrakcyjnego pojęcia - klasy obiektu.

podstawą identyfikacji klasy stanowią grupy obiektów charakteryzujące się: identyczną strukturą danych – takimi samymi

atrybutami

identycznym zachowaniem - takimi samymi operacjami

identycznymi związkami

Identycznym znaczeniem w określonym kontekście

Page 4: Diagram klas i obiektów

Klasa cd ..

NAZWA KLASY

ZESTAW ATRYBUTÓW

ZESTAW OPERACJI

Page 5: Diagram klas i obiektów

Kombinacje klas

Klient

a)

b)

sama nazwa klasy umieszczona w jednosekcyjnym bloku oznacza, że sekcje atrybutów i

operacji zostały wyspecyfikowane, lecz nie są w sposób jawny zamieszczone w diagramie klas

Page 6: Diagram klas i obiektów

Kombinacje klas

KontraktTerminowy

ilośćKontraktów:cenaNabycia:cenaSprzedaży:Waluta:

b)

klasę przedstawia się jako blok złożony z trzech sekcji z nazwą w pierwszej sekcji i

Niewyspecyfikowanymi atrybutami i operacjami

Page 7: Diagram klas i obiektów

Kombinacje klasRezerwacje

złóżRezerwacje()anulujRezerwacje()weryfikujKlienta()

c)

jeśli liczba atrybutów lub operacji jest większa, to ich wyliczanie w odpowiednich sekcjach można

przerwać wielokropkiem, co należy rozumiećże do klasy przypisane są jeszcze inne atrybuty i

operacje – nie wymienione bezpośrednio w specyfikacji

Rezerwacje

złóżRezerwacje()anulujRezerwacje()weryfikujKlienta()…

Page 8: Diagram klas i obiektów

Rodzaje relacji SKOJARZENIE - związek między instancjami dwóch

klas. Skojarzenie dwóch klas zachodzi wtedy, gdy jedna klasa musi wiedzieć o drugiej, aby wykonywać swoje zadania. Na diagramie skojarzeniem jest linia łącząca dwie klasy.

AGREGACJA - skojarzenie, w którym jedna z klas należy do kolekcji. Agregacja jest zakończona rombem wskazującym tę część, która zawiera całość.

UOGÓLNIENIE - łącze dziedziczenia, które wskazuje, że jedna klasa jest nadrzędna w stosunku do drugiej. Uogólnienie ma trójkąt wskazujący klasę nadrzędną.

Page 9: Diagram klas i obiektów

Skojarzenie Asocjacja

binarna

n-arna (n-argumetnowa)

Menadżer Projekt

SystemDźwiękowy

Repertuar SalaKinowa

RezerwacjaMiejsc

Page 10: Diagram klas i obiektów

Skojarzenie Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących cech:

nazwa

role powiązanych klas

nawigacja

liczebność

agregacje

Page 11: Diagram klas i obiektów

Związki Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących cech:

nazwa nienazwane

nazwane z opcjonalnym zamieszczaniem znacznika wskazującego kierunek interpretacji asocjacji

scharakteryzowane poprzez role klas w asocjacji

nazwane i scharakteryzowane przez role

Pracownik Projektkierownik zlecenie

zarządza

Page 12: Diagram klas i obiektów

Związki Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących cech:

nazwa

role powiązanych klas związek binarny – powinność pełniona przez jedna

klasę obiektu wobec drugiej klasy

związek n-arny – role można przypisać każdej z powiązanych klas

Page 13: Diagram klas i obiektów

Związki Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących

cech:

nazwa

ról powiązanych klas

nawigacja

Klient Rachunek

Page 14: Diagram klas i obiektów

Związki Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących

cech:

nazwa

role powiązanych klas

nawigacji

liczebność

Page 15: Diagram klas i obiektów

Związki Asocjację można dokładnie sprecyzować

poprzez zdefiniowanie następujących cech:

nazwa

role powiązanych klas

nawigacja

liczebność

agregacja

całkowitej – kompozycja, agregacja silna, składowa

częściowej – słaba, współdzielonaW agregacji występują:- agregat – obiekt stanowiący całość- segment - cześć

Page 16: Diagram klas i obiektów

Agregacja całkowita segmenty (czyli części) będący częścią

agregatów nie mogą samodzielnie i niezależnie

funkcjonować. Usunięcie agregatu powoduje

automatyczna likwidację wszystkich

segmentów będących jego częściami

PolisaUbezpieczeniowa

Składka

1

1..*

Page 17: Diagram klas i obiektów

Agregacja częściowa usunięcie obiektu będącego agregatem nie

powoduje likwidacji obiektów będących jego

częściami, czyli obiekty współdzielone mogą

funkcjonować samodzielnie niezależnie od

agragatuRepretuar

SeansFilmowy

1

1..*

Page 18: Diagram klas i obiektów

* 1

PozycjaZamówieniailośćcena

czyZrealizowanaProdukt

* 1

1

*

ZamówieniedataZłożeniaczyZapłaconesumaDoZapłatyrealizuj()zamknij()

Klientadres

wiarygodność()

złożył

dotyczy

składa się z Firmanazwa

Indywidualnynazwisko

Rys. przedstawia przykładowy diagram klas w UML. Asocjacja złożył ustala, że każde zamówienie jest składane przez dokładnie jednego klienta, zaś klient może złożyć dowolną liczbę zamówień. Istotnym elementem diagramów klas w UML jest zapis związków dziedziczenia: na rysunku klasy Firma i Indywidualny dziedziczą wszystkie własności klasy Klient.

Page 19: Diagram klas i obiektów

Rodzaje diagramów klas poziom konceptualny – zawiera

podstawowe elementy cechujące się

przystępnością nazewnictwa. Jest

zrozumiały dla użytkownika

poziom implementacyjny –

wzbogacony o elementy opisu

niezbędne do prawidłowej

specyfikacji modelu.

Page 20: Diagram klas i obiektów

WidocznośćPoziom Symbol Charakterystyka

Publiczny + Obiekty wszystkich klas w systemie

maja dostęp do atrybutu lub

operacji

Prywatny - Tylko obiekty tej klasy mają dostęp

do atrybutu lub operacji

Chroniony # Wyłącznie obiekty klas

dziedziczonych z danej klasy mają

dostęp do atrybutu lub operacji

Pakietowy ~ Tylko składowe pakiety, do którego

dana klasa należy, mają dostęp do

atrybutu lub operacji

Page 21: Diagram klas i obiektów

SYSTEM POCZTY ELEKTRONICZNEJ

DOKONAJ REJSTRACJI

ZALOGUJ

LICYTUJ

ZARZADZAJ POTRFELEM LICYTACJI

WYSTAW ARTYKUŁ NA AUKCJĘ

DOKONAJ TRANSAKCJI

PRZEŚLIJ POTWIERDZENIE REJESTRACJI

WYSZUKAJ ARTYKUŁ

UCZESTNIK

KUPUJĄCY

SPRZEDAJĄCY

OBSERWATOR

PRACOWNIK AUKCJI

SERWIS TRANSACJI

-Koniec1 *

-Koniec2

*

-Koniec3

*

-Koniec4

*

-Koniec5

*

-Koniec6

*

-Koniec7

* -Koniec8

*

-Koniec9

*

-Koniec10

*

«extends»

«extends»

«uses»

«extends»

-Koniec11

*

-Koniec12

*

«extends»

-Koniec13

*

-Koniec14

*

-Koniec15

*

-Koniec16

*

-Koniec17

*

-Koniec18

*

AUKCJA INTERNETOWA

Page 22: Diagram klas i obiektów

Diagram obiektówPiotr : Kupujący

1500 : Kwota 1420 : Kwota

Jolanta : Kupujący

Philips170S4 : Licytacja

Konrad : Sprzedający

PrzekazPocztowy : Płatność

TransakcjaOnline:Płatność

MonitoryLCD : Katalog

9234 : Artykuł

Page 23: Diagram klas i obiektów

Diagram klas

+utwórzLicytację()+zamknijLicytację()+usuńLicytację()+modyfikujLicytację()+przypiszKupujacego()

+idLicytacji-czasTrwaniaAukcji-czasRozpoczęcia-cenaMinimalna-cenaWywoławcza-cenaKupTeraz-opisTransportu+stanAukcji-kwotaNajwyzsza-dataZamknięcia

Licytacja

Kupujący

-generujKodSprzedazy()+zarejstrujKodSprzedazy()+drukujKorespondencje()

+ocena+KodSprzedazy

Sprzedający

+zaloguj()+dodaj()+usuń()+modyfikuj()+wyślijMail()+zarejstrujLoginHasło()

+idUczestnika+nick-haslo+imię+nazwisko+nazwa+firma+adres+email+telefon+dataRejestracji

Uczestnik

+utwórzKontoKwoty()+usuńKontoKwoty()+OdświezKwoty()+KupTeraz()+walidujKwotę()

-idKwoty-KontoKwoty

Kwota

+dodajArtukuł()+usuńArtykuł()+modyfikujArtykuł()+wyszukaj()

+idArtykułu+nazwa+opis+zdjęcie+liczbaSztuk+kraj+lokalizacja-dataRejestracji

Artykuł

+dodajKategorie()+usuńKategorie()+modyfikujKategorie()

+idKategorii+nazwa+opis

Katalog

+dodajPłatność()+usuńPłatność()+modyfikujPłatność()

+idPłatności+nazwa +opis

Płatność

+dodajOpinie()

+idOpinii-opis

Opinia

1

1..*

1

0..*

0..*

0..*

1

0..*

1..*

0..*

1

1..*