background image

 

 

Diagramy w UML

background image

 

 

Język UML

• UML to język służący do 

specyfikowania, 

konstruowania, obrazowania oraz 
dokumentowania składowych systemów 
oprogramowania

. Twórcami UML są: 

Gary 

Booch, Ivar Jacobson, oraz James Rumbaugh

.

• UML to język a nie metodyka 

konstruowania oprogramowania

, tzn. nie  

podaje wskazówek dotyczących sposobu 
organizacji poszczególnych faz procesu 
wytwórczego.

background image

 

 

Znaczenie diagramów

Diagram

Diagram

 – schemat przedstawiający zbiór 

bytów; jest swego rodzaju rzutem systemu

 Diagram przedstawia 

system z określonej 

perspektywy

 (z określonego punktu widzenia)

 Diagram ma najczęściej postać grafu

 Wierzchołki grafu

 – elementy

 Gałęzie grafu

 – związki

background image

 

 

Znaczenie diagramów

 Teoretycznie diagram może zawierać dowolną 

kombinację elementów i związków

 W praktyce wprowadza się pewne kombinacje 

elementów i relacji, które można umieszczać na 
diagramach określonego rodzaju

 W UML wyróżnia się dziewięć rodzajów diagramów

 Diagram klas (class diagram)
 Diagram obiektów (object diagram)
 Diagram przypadków użycia (use-case diagram)
 Diagram przebiegu (sequence diagram) 
 Diagram kooperacji (cooperation diagram)
 Diagram stanów (statechart diagram)
 Diagram czynności (activity diagram)
 Diagram komponentów (component diagram)
 Diagram wdrożenia (implementation diagram)

background image

 

 

Diagramy 

• Język UML definiuje następujący zestaw diagramów:

• Diagram przypadków użycia

 – służy do modelowania 

funkcjonalności systemu z punktu widzenia jego przyszłych 

użytkowników

• Diagram klas

 - służy do modelowania struktury danych 

przechowywanych w systemie, zawiera klasy i może zawierać 

obiekty

• Diagram obiektów

 - służy do modelowania struktury danych 

przechowywanych w systemie; zawiera wyłącznie obiekty

• Diagramy dynamiczne

 - służą do modelowania zachowań:

– Diagram stanów

– Diagram aktywności

– Diagram interakcji: diagram sekwencji oraz diagram współpracy

• Diagramy implementacyjne

:

– Diagram komponentów

– Diagram wdrożeniowy

• Diagram pakietów

 - służy do celów organizacyjnych.

• Diagramy te pozwalają opisać projektowany system z wielu 

perspektyw, razem składają się na jego szczegółowy opis.

background image

 

 

Modele a diagramy

Główny 
obszar 
działania

Modele

Diagramy UML

Podstawowe pojęcia

Struktura

Model 
obiektowy

Diagram klas
Diagram 
obiektów

Klasa, obiekt, asocjacja, 
generalizacja, zależność, 
realizacja, interfejs

Model 
przypadków 
użycia

Diagram 
przypadków 
użycia

Aktor, przypadek użycia, 
inkluzja, ekstensja, 
generalizacja

Model 
implementacji

Diagram 
komponentów
Diagram 
wdrożeniowy

Komponent, interfejs, zależność, 
realizacja
Węzeł, komponent, zależność, 
lokacja

Dynamika

Model 
dynamiczny

Diagram stanów

Diagram 
aktywności

Diagram 
interakcji

Stan, zdarzenie, przejście, akcja, 
aktywność 
Stan, aktywność, fork, join, 
romb decyzyjny
Interakcja, współpraca, 
komunikat, aktywacja

Zarządzanie

Model 
zarządzania

Diagram pakietów

Pakiet, podsystem

Rozszerzalnoś
ć

Wszystkie 
modele

Wszystkie diagramy

Stereotyp, wartość 
etykietowana, ograniczenie

background image

 

 

Modele obiektowe (UML 2.1)

Rodzaj diagramu

Przeznaczenie 

Diagram przypadków 
użycia

Identyfikacja kategorii użytkowników oraz sposobów używania 
przez nich systemu

Diagram klas

Modelowanie klas obiektów i ich wzajemnych relacji

Diagram czynności 
(diagram aktywności)

Modelowanie procesów biznesowych, scenariuszy przypadków 
użycia lub algorytmów

Diagram maszyny 
stanowej

Modelowanie historii życia obiektu – jego stanów i możliwych 
przejść między stanami

Diagram komponentów

Modelowanie fizycznych składników oprogramowania, ich 
zależności i interfejsów

Diagram pakietów

Grupowanie elementów modelu w pakiety i pokazanie wzajemnych 
zależności pakietów

Diagram rozmieszczenia 
(diagram wdrożenia)

Modelowanie konfiguracji sprzętowych i programowych 
komponentów systemu

Diagram sekwencji 
(diagram przebiegu)

Modelowanie czasowej sekwencji wymiany komunikatów podczas 
współpracy obiektów, pakietów lub komponentów

Diagram komunikacji

Modelowanie przepływu komunikatów podczas współpracy 
obiektów, pakietów lub komponentów

Diagram struktury 
złożonej

Modelowanie wewnętrznej struktury złożonej klasy, komponentu 
lub przypadku użycia

Diagram przeglądu 
interakcji

Modelowanie przepływu sterowania w procesie biznesowym lub 
systemie

Diagram obiektu

Modelowanie chwilowej konfiguracji obiektów oprogramowania

Diagram czasowy

Modelowanie uzależnień czasowych

background image

 

 

Diagram przypadków użycia 

Diagram przypadków użycia

Diagram przypadków użycia

 Służy do modelowania dynamiki systemu
 Przedstawia zbiór przypadków użycia, aktorów oraz 

związki między nimi

 Jest szczególnie przydatny w obrazowaniu, 

specyfikowaniu i dokumentowaniu zachowania

 Przedstawia byty z zewnątrz (wnętrze pozostaje ukryte)

background image

 

 

Diagram przypadków użycia 

- przykład

Edycja autora

Inicjaowanie bazy

<<administracja>>

Operator

Edycja publikacji

background image

 

 

Diagram klas 

Diagram klas

Diagram klas

 Jest to najczęściej spotykany diagram w modelach obiektowych.
 Diagram przedstawia statyczną stronę projektowanego systemu.
 Na diagramie występują 

klasy, interfejsy, kooperacje i związki między nimi.

background image

 

 

Diagram klas - przykład

Author

EOF()
GetOne()
Query()
<<Get>> Recordset()
<<Get>> Name()
<<Get>> ID()
<<Get>> FName()
<<Get>> LName()
<<Get>> Phone()
<<Get>> Address()
<<Get>> City()
<<Get>> State()
<<Get>> Zip()
<<Get>> Contract()
GetNew()

<<ADO Class>>

Authors

AddNew()
BOF()
EOF()
GetAll()
MoveFirst()
MoveLast()
MoveNext()
MovePrevious()
Query()
<<Get>> Recordset()
<<Get>> Name()
<<Get>> ID()
<<Get>> FName()
<<Get>> LName()
<<Get>> Phone()
<<Get>> Address()
<<Get>> City()
<<Get>> Zip()
<<Get>> Contract()
GetNew()

<<ADO Class>>

Form1

Command1_Click()
Command2_Click()

<<Form>>

The application's form has two 
command buttons. The first button 
displays information about a specified 
author. The other button displays a 
list of all authors in the Pubs 
database. For more information about 
the form, run the application in Visual 
Basic or open the "Logical 
View/PubsSample/Show Author" 
sequence diagram.

This class represents one author in 
the database. Information about the 
author is collected from the 
database and stored as an ADO 
Recordset member called "mrs" 
(not displayed here).

The first four methods are standard 
methods defined by the template. 
The Property Get methods, starting 
with Name(), return the properties 
of an Author. There are no 
corresponding data members in the 
class, as the values of the 
properties are stored in the "mrs" 
Recordset.

This class represents all authors in the 
database. The set of authors are 
collected from the database and stored 
as an ADO Recordset member called 
"mrs" (not displayed here).

The first ten methods are standard 
methods defined by the template.  The 
Property Get procedures, starting with 
Name(), operate on the current Author 
in the recordset. The Move... methods 
are needed to change current author.

Open the "Logical View/ PubsSample/ 
How to create an ADO class" diagram 
for more information.

ADO Class - single object

ADO Class - set of object

Form1

background image

 

 

Diagramy przebiegu i 

kooperacji

Diagram przebiegu

Diagram przebiegu i 

diagram kooperacji

diagram kooperacji

 

 

to rodzaje 

 

diagramów interakcji

diagramów interakcji

 Na diagramach tych przedstawia się interakcję – współdziałanie – jako zbiór obiektów 

i związków obrazujących głównie przesyłane komunikaty.

 Diagram przebiegu pokazuje kolejność przesyłania diagramów w czasie.
 Diagram kooperacji uwypukla organizację strukturalną interakcji.
 Diagramy przebiegu i kooperacji są izomorficzne.
 Na diagramach występują:

klasy, obiekty, interakcje

background image

 

 

Diagram przebiegu - 

przykład

User : User

Formatka : 

Form1

Wskazany autor 

: Author

Połączenie ADO : (::Type 

libraries::ADODB::Connection)

Zbiór ADO : (::Type 

libraries::ADODB::Recordset)

Command1_Click( )

GetOne("Last name")

Query( )

CreateObject & Open

CreateObject & Open

Close

Print author

Nazwa Autora?

"Nazwisko"

New

background image

 

 

Diagram kooperacji - 

przykład

Nowy autor : 

Author

Formatka Wprowadznia : 

Form

Baza autorów : 

Authors

1: AddNew( )

Zbiór ADO : 

Recordset

2: Insert()

3: GetNew( )

4: SetData

background image

 

 

Diagramy stanów i 

diagramy czynności

Diagram stanów

Diagram stanów

 przedstawia maszynę stanową składającą się ze stanów, przejść i zdarzeń.

Diagram czynności

Diagram czynności

 jest szczególnym przypadkiem diagramu stanów, pokazuje strumień 

kolejno wykonywanych czynności.

 Oba diagramy odnoszą się do modelowania dynamicznych aspektów systemu
 Na diagramach występują:

klasy, obiekty, interakcje, maszyny stanowe
oraz 
bloki decyzyjne, przejścia, scalenia i rozgałęzienia, tory

background image

 

 

Diagram czynności - 

przykład

Nowa publikacja

do/ Wprowdź autora

Wprowadzanie Autora

Autor 

istnieje

Nowy autor

Wyszukaj 

autora

Wprowadź 

autora

Autor 

istnieje

Nowy autor

Wyszukaj 

autora

Wprowadź 

autora

background image

 

 

Diagram stanów - przykład

Nowa Pubikacja

Nowy autor

Autor 

istnieje

Nowy autor

Autor 

istnieje

background image

 

 

Diagramy komponentów i 

diagramy wdrożenia

Diagram komponentów

Diagram komponentów

 pokazuje namacalne, tzn. fizyczne 

składniki systemu – komponenty i ich wzajemne zależności.

 Komponent realizuje (ucieleśnia) fragment modelu np. wybrane 

klasy.

 Na diagramach występują:

klasy, interfejsy, komponenty, realizacje i zależności

Diagram wdrożenia

Diagram wdrożenia

 przedstawia tzw. węzły działania – urządzenia, 

na których instaluje się komponenty.

 Oprócz węzła na diagramie może wystąpić urządzenie (ang. 

device)

 Na diagramach występują:

węzły, urządzenia, łączenia

background image

 

 

Diagram komponentów - 

przykład

Pub Baza Danych

PubsSample

<<Standard EXE>>

ADO.DLL

<<Standard DLL>>

background image

 

 

Diagram wdrożenia - 

przykład

Serwer Bazy 

danych

Przechowywanie danych
Wukonywanie kopii

Stacja 

robocza

Edycja bazy

Macierz 

dyskowa


Document Outline