OOAD - podstawowe notacje UML

UML definiuje określone zapisy dla każdego z bloków konstrukcyjnych.

Klasa

Klasa jest reprezentowana przez prostokąt mający trzy sekcje -

  • górna sekcja zawierająca nazwę klasy
  • środkowa sekcja zawierająca atrybuty klas
  • dolna sekcja reprezentująca operacje klasy

Widoczność atrybutów i operacji można przedstawić na następujące sposoby -

  • Public- Członek publiczny jest widoczny z dowolnego miejsca w systemie. W diagramie klas jest poprzedzony symbolem „+”.

  • Private- Członek prywatny jest widoczny tylko z poziomu klasy. Nie można uzyskać do niego dostępu spoza zajęć. Członek prywatny jest poprzedzony symbolem „-”.

  • Protected- Chroniony element członkowski jest widoczny z poziomu klasy i podklas dziedziczonych z tej klasy, ale nie z zewnątrz. Jest poprzedzony symbolem „#”.

Klasa abstrakcyjna ma nazwę klasy zapisaną kursywą.

Example- Rozważmy klasę Circle wprowadzoną wcześniej. Atrybuty okręgu to współrzędna x, współrzędna y i promień. Operacje to findArea (), findCircumference () i scale (). Załóżmy, że x-Coor i Y-Coor są prywatnymi składnikami danych, radius jest chronionym składnikiem danych, a funkcje składowe są publiczne. Poniższy rysunek przedstawia schematyczną reprezentację klasy.

Obiekt

Obiekt jest reprezentowany jako prostokąt z dwiema sekcjami -

  • Górna sekcja zawiera nazwę obiektu wraz z nazwą klasy lub pakietu, którego jest instancją. Nazwa ma następujące formy -

    • object-name - nazwa klasy

    • object-name - nazwa-klasy :: nazwa-pakietu

    • class-name - w przypadku obiektów anonimowych

  • Dolna sekcja przedstawia wartości atrybutów. Przyjmuje postać nazwa-atrybutu = wartość.

  • Czasami obiekty są przedstawiane za pomocą zaokrąglonych prostokątów.

Example- Rozważmy obiekt klasy Circle o nazwie c1. Zakładamy, że środek c1 znajduje się w (2, 3), a promień c1 wynosi 5. Poniższy rysunek przedstawia obiekt.

Składnik

Komponent to fizyczna i wymienna część systemu, która jest zgodna i zapewnia realizację zestawu interfejsów. Reprezentuje fizyczne opakowanie elementów, takich jak klasy i interfejsy.

Notation - W diagramach UML komponent jest reprezentowany przez prostokąt z zakładkami, jak pokazano na poniższym rysunku.

Berło

Interfejs to zbiór metod klasy lub składnika. Określa zestaw usług, które mogą być świadczone przez klasę lub komponent.

Notation- Ogólnie interfejs jest rysowany jako okrąg wraz z jego nazwą. Interfejs jest prawie zawsze dołączony do klasy lub komponentu, który go realizuje. Poniższy rysunek przedstawia zapis interfejsu.

Pakiet

Pakiet to zorganizowana grupa elementów. Pakiet może zawierać elementy strukturalne, takie jak klasy, komponenty i inne pakiety.

Notation- Graficznie pakiet jest reprezentowany przez folder z zakładkami. Pakiet jest generalnie rysowany tylko z nazwą. Może jednak zawierać dodatkowe szczegóły dotyczące zawartości opakowania. Zobacz poniższe rysunki.

Związek

Notacje dla różnych typów relacji są następujące -

Zwykle elementy związku odgrywają określone role w związku. Nazwa roli oznacza zachowanie elementu uczestniczącego w określonym kontekście.

Example- Poniższe rysunki przedstawiają przykłady różnych relacji między klasami. Pierwsza ilustracja przedstawia powiązanie między dwiema klasami, Działem i Pracownikiem, przy czym dział może mieć wielu pracowników. Pracownik to nazwa roli. „1” obok działu i „*” obok pracownika oznaczają, że współczynnik kardynalności wynosi jeden do wielu. Druga cyfra przedstawia zależność agregacji, uniwersytet jest „całością” wielu wydziałów.