Diagram
obiektów jest "bardziej rzeczywistym" spojrzeniem na diagram
klas. Przedstawia strukturę systemu na dowolnym poziomie abstrakcji w danej
chwili działania – jest wystąpieniem diagramu klas. Zawiera instancje zamodelowanych
wcześniej klas, związki zachodzące między nimi (asocjacje, agregacje,
kompozycje, generalizacje) oraz ograniczenia. Można rozumieć, że diagram
obiektów jest pewnego rodzaju rozszerzeniem diagramu klas. Stosuje się go w celu
ułatwienia zrozumienia diagramu klas o wysokim stopniu złożoności.
Z jednej strony, jak już wspomniano, diagram obiektów może pełnić rolę doprecyzowania istniejącego już
diagramu klas. Z drugiej strony, diagram obiektów może również poprzedzać diagram klas.
Pełni wtedy rolę opisu obrazu struktury rzeczywistych obiektów. Jest to
stosowane zazwyczaj we wczesnych czynnościach analitycznych w celu
identyfikacji podstawowych elementów dziedziny problemowej, kiedy niemożliwe
jest jeszcze zdefiniowanie klas obiektów, a analiza jest oparta np. na
bezpośredniej obserwacji.
Za pomocą
diagramu obiektów modelujemy wystąpienie diagramu klas lub statyczną część
diagramu komunikacji w ustalonym momencie działania systemu. Nie przedstawiamy
na nim przepływu komunikatów.
Obiekt
reprezentuje modelowany byt i jest podstawą podejścia obiektowego w modelowaniu
świata rzeczywistego. Każdy obiekt wywodzi się z określonej klasy, jest
identyfikowalny i posiada ściśle określone granice – mówiące co jest tym obiektem a co nim nie jest. Notacja graficzna
obiektu jest podobna do notacji klasy oprócz tego, że nazwa obiektu jest podkreślona.
Obiekt
posiada swoją tożsamość, stan i zachowanie. Tożsamość świadczy o tym, że obiekty są między
sobą rozróżnialne poprzez samo istnienie (nawet obiekty identyczne posiadające ten
sam stan są innymi obiektami). Tożsamość umożliwia więc identyfikację obiektu
bez względu na jego otoczenie, świadczy o jego unikalności. Tożsamość obiektów
jest zazwyczaj określona przez jego nazwę lub nazwę i identyfikator jego
rodzica, czyli nazwę klasy z której dziedziczy. Tożsamość nie jest zmienna w
czasie.
Obiekt może
być również nienazwany. W tym przypadku oznacza to, że obiekt jest anonimowy i
wskazuje na dowolny egzemplarz klasy, nie konkretny egzemplarz, tak jak w
przypadku obiektu nazwanego.
Stan obiektu
jest określony przez zestaw jego atrybutów i związków z innymi obiektami. Stan
obiektu może się zmieniać w czasie. Zachowanie wyrażone jest przez implementację
operacji.
Obiekt może
składać się z innych, mniejszych obiektów, z których każdy może być również
obiektem złożonym. Związki między tymi obiektami mogą opisywać ich hierarchię.
Istnieją
także obiekty temporalne (chwilowe), np. lista, bufor, stos. Obiekty te mają
ograniczony czas życia w systemie. Mogą być tworzone i usuwane w każdej chwili działania
systemu. Nie zachowują swojego stanu. Obiekty trwałe są ich przeciwnością i
zachowują stan oraz zachowanie pomiędzy kolejnymi uruchomieniami systemu. Takie obiekty
przechowywane są w bazach danych.
Asocjacja na
diagramie obiektów prezentuje związek pomiędzy dwoma lub większą liczbą
obiektów. Jest najczęściej stosowanym związkiem na tego typu diagramie.
Notacyjnie jest przedstawiana identycznie jak na diagramie klas.
Podobnie jak
w przypadku diagramu klas, szczególnym przypadkiem asocjacji między dwoma
obiektami jest agregacja. Tutaj także reprezentuje relację typu „całość – część”.
Obiekt będący w relacji „całością” zawiera swoje komponenty, czyli obiekty
będące jego „częściami”.
Podobnie jak w przypadku diagramu klas, tutaj także można
stosować w podobny sposób związki kompozycji, generalizacji oraz zależności
(patrz poprzedni wpis: Diagram klas).
Brak komentarzy:
Prześlij komentarz