background image

Model przypadków użycia

background image

Model przypadków użycia

• Graficzną reprezentacją modelu jest diagram 

przypadków użycia (use case diagram), którego 
podstawowymi elementami są ikony aktorów, 
owale reprezentujące przypadki użycia oraz linie 
przedstawiające zachodzące między nimi relacje. 
Istnienie relacji łączącej aktora z przypadkiem 
użycia wskazuje na zaangażowanie tego aktora 
w realizację danego przypadku.  

background image

uc Use Case View

System ubezpieczeń

Klient

Likw idator

System bankow y

zaw arcie 

ubezpieczenia

w ypłata 

odszkodow ań

likw idacj a szkody

Diagram przypadków użycia firmy ubezpieczeniowej

Aktora inicjującego wykonanie przypadku użycia można wyróżnić 
dodatkową strzałką umieszczoną na końcu linii relacji.

Aktorzy diagramu PU modelują zewnętrzne obiekty 
współpracujące z budowanym systemem.

background image

Diagram przypadków użycia

• Diagram przypadków użycia (ang. Use Case 

Diagram) jest diagramem, który przedstawia 
funkcjonalność systemu wraz z jego otoczeniem

• Diagramy przypadków użycia pozwalają na 

graficzne zaprezentowanie własności systemu tak, 
jak są one widziane po stronie użytkownika

• Diagramy przypadków użycia służą do 

zobrazowania usług, jakie są widoczne z zewnątrz 
systemu

background image

Diagramy przypadków użycia

• specyfikują wymagania stawiane systemowi,
• obrazują zachowanie systemu,
• modelują otoczenie systemu,
• nie definiują sposobu implementacji systemu,
• opisują jedynie najważniejsze aspekty 

zachowania systemu,

• nie są przesadnie szczegółowe,
• są platformą do komunikacji analityka z klientem.

background image

Diagram przypadków użycia

Kluczowymi elementami są:
• aktorzy (actor)
• przypadki użycia (use case)
• związki (association)

Dodatkowo diagram może zwierać:
• notatki (note)
• ograniczenia (constraints)
• pakiety (packages)

background image

Aktor

• Aktor (ang. actor) jest funkcją, jaką pełni 

użytkownik  w stosunku do systemu oraz przypadków 

użycia.

• Aktor reprezentuje spójny zbiór ról, które są 

odgrywane przez użytkowników przypadku użycia  w 
czasie interakcji z tym przypadkiem
.

• Aktorem może być człowiek, urządzenie, inny 

system lub czas.

• Aktor nie musi być fizycznym obiektem. Istotne by 

pełnił określoną funkcję wobec systemu i przypadku 

użycia, którego używa.

background image

Aktor

Aktorzy mogą występować w zależności uogólnienie 
(generalization)
. Potomek dziedziczy całe zachowanie     
i znacznie po przodku.
Klient indywidualny i klient instytucjonalny są 
szczególnym
rodzajem

klienta.

background image

Przypadek użycia

Przypadek użycia opisuje, co system robi, lecz 
nie określa, jak to robi.

Sprawdź 

stan konta

background image

Przypadek użycia

Przypadek użycia to opis zbioru akcji 
wykonywanych przez system w celu 
dostarczenia aktorowi wyniku.
W UML przypadek użycia jest przedstawiony 
w postaci elipsy z nazwą po środku.

Sprawdź 

stan konta

Klient banku

background image

Przypadek użycia

Elementy żyjące wewnątrz systemu (przypadki 
użycia) są odpowiedzialne za wykonanie działań, 
których elementy zewnętrzne (aktorzy) oczekują 
od systemu.

Nazwa przypadku użycia musi być czynnością.

background image

Przypadek użycia

Budując model należy pamiętać o oddzieleniu 
pojęć – tego, co dotyczy pracy systemu, od tego, 
co dotyczy jego realizacji. 
Informacyjna zawartość DPU jest dość uboga     
i nie opisuje wystarczająco dokładnie sposobu 
używania systemu przez użytkowników. Dlatego 
podstawowym środkiem dokumentowania 
modelu jest tekstowy zapis scenariuszy, 
opisujących krok po kroku sposób wykonania 
wszystkich przypadków użycia.

background image

Związki

Związki w diagramach przypadków użycia:
• powiązania 

(tylko między 

aktorem a przypadkiem użycia)

• uogólnienia

• zawierania – include

• rozszerzenia - extend

background image

Związki

Związek zawierania stosuje się w celu uniknięcia 
wielokrotnego opisywania tego samego ciągu 
zdarzeń.

Przyjmij towar...  zawsze zawiera 

Czytaj kod...

<< include >>

background image

uc Use Case View

przeanalizuj  ryzyko

określ w artość

w yceń kontrakt

«include»

«include»

Do relacji zawierania dochodzi wtedy, gdy kilka przypadków użycia ma 
wspólną sekwencję podobnych kroków, której nie warto ciągle 
kopiować z jednego przypadku do drugiego. Przykładowo „przeanalizuj 
ryzyko” i „wyceń kontrakt” wymagają, aby określić wartość kontraktu. 
Opisanie określenia wartości kontraktu wymaga sporo pracy, stąd 
należy utworzyć oddzielny przypadek użycia „określ wartość 
kontraktu” i odwołać się do niego z innych PU. 

Zawieranie 

background image

Uogólnienie 

uc zw iązek uogolnienia

zarej estruj  

transakcj e

limit przekroczony

Uogólnienia używa się wówczas, gdy dany przypadek użycia jest podobny do 
innego, ale jest nieco obszerniejszy. Jest to jeszcze jeden ze sposobów 
uchwycenia scenariuszy alternatywnych. W przykładzie podstawowym PU 
jest „zarejestruj transakcję”. Jest to pomyślany przypadek użycia systemu,     
w sytuacji gdy wszystko się powiodło. Coś mogło jednak przeszkodzić 
pomyślnej rejestracji transakcji, np. przekroczenie limitu, który biuro 
maklerskie ustaliło dla konkretnego kontrahenta. W takiej sytuacji nie 
wykonuje się typowych kroków związanych z tym PU, lecz alternatywny 
przypadek użycia. Specjalistyczny PU może przesłonić dowolną część 
podstawowego PU, ale zawsze powinien dotyczyć osiągnięcia tego samego 
celu użytkownika co podstawowy PU.

background image

Relacja rozszerzenia

Jest ta relacja podobna do uogólnienia, jednak bardziej formalna. 
Rozszerzenie PU może wzbogacić go o dodatkowe zachowania, ale w takiej 
sytuacji podstawowy PU musi określić pewne punkty rozszerzenia,               
a rozszerzający PU może dodać nowe zachowania tylko w tych punktach. 
Przypadek użycia może mieć wiele punktów rozszerzeń, a rozszerzający PU 
może rozszerzać podstawowy PU w kilku z tych punktów.

PU pożycz książkę można podzielić na zwykły PU, w którym użytkownik 
może pożyczyć książkę, i wyjątkowy PU, w którym użytkownik nie może jej 
pożyczyć, ponieważ wypożyczył już maksymalną dopuszczalną liczbę 
książek.

uc zw iazek extend

pozycz ksiazke

odmow a pozyczki

«extend»

background image

Związki

Związek rozszerzenia służy do modelowania 
fragmentów przypadku użycia postrzeganych 
przez użytkownika jako opcjonalne zachowanie 
systemu
.

Ekspresowa...

opcjonalnie rozszerza Przesyłkę...
<< extend >>

background image

Bazowy PU

Rozszerzający PU

extend

Wykonaj 
ćwiczenie

Wysłuchaj 
wykładu

extend

Związek rozszerzania (ang. Extend) wskazuje, że dany 
przypadek użycia opcjonalnie rozszerza funkcjonalność 
bazowego przypadku użycia. Funkcjonalność bazowego 
przypadku użycia jest rozszerzana o inny przypadek użycia po 
spełnieniu określonego warunku.

Związek rozszerzania

Warunek: {standard 
nauczania wymaga ćwiczeń}

background image

Student

Użytkownik

Związek zawierania i rozszerzania

Sprawdź 
ocenę

Zobacz zaległości 
finansowe

Wyświetl 
wszystkie oceny

extend

include

background image

Przykład

od Analysis View

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

••••••••••••••••••••••••••   ••••••••••••••••••••••••••   ••••••••••••••••••••••••••   

Moduł rezerwacji

rezerw acj a

rezerw acj a 
czasopisma

rezerw acj a ksiązki

czytelnik

w yszukanie

pow iadomienie

«include»

«extend»

Uogólnienie

Zawieranie

Rozszerzenie

background image

Diagram przypadków użycia

Dobre rady przy budowaniu diagramu:
• nazwij diagram zgodnie z przeznaczeniem
• tak rozmieść przypadku użycia i aktorów żeby 

zminimalizować liczbę przecinających się 

związków

• poukładaj przypadki użycia blisko siebie, które 

są podobne pojęciowo

• korzystaj z notatek
• nie musisz przedstawiać wszystkich 

przypadków użycia na jednym diagramie

background image

Diagram przypadków użycia

• Przypadki użycia służą do modelowania 

oczekiwanego zachowania systemu 

(bez 

zgłębiania sposobu implementacji systemu)

.

• Dobrze zbudowane przypadki użycia 

reprezentują jedynie najważniejsze aspekty 
zachowania systemu 

(nie są przesadnie szczególne 

ani zbyt ogólne)

.

background image

Diagram przypadków użycia

Siec telefonii komorkowej

Uzytkownik

Zainicjuj
polaczenie

Zaakceptuj
polaczenie

Uzyj programu
wybierajacego

Zainicjuj
telekonferencje

Zaakceptuj
dodatkowe
polaczenie

<< extend >>

<< extend >>

Telefon komorkowy

background image

Diagram przypadków użycia

background image

uc Use Case View

System maklerski

Kierow nik sali

System księgow y

ustal limity

przeanalizuj  ryzyko

w yceń kontrakt

zarej estruj  

transakcj e

limit przekroczony

zaktualizuj  rachunki

określ w artość

Sprzedaw ca

Makler

«include»

«include»

Niektóre przypadki użycia dla systemu maklerskiego

background image

uc Use Case View

Zarządzaj ący zbiorami

Wypożyczaj ący

System biblioteki 

głów nej

w prow adź now y 

egzemplarz

dodaj  istniej ący 

egzemplarz

w yszukaj  książkę

rej estruj  rezerw acj ę

rej estruj  rezerw acj ę 

zdalnie

w ypozycz ksiazke

«include»

«include»

«extend»

background image

uc obsługa realizacj i szkoleń

System obsługi szkoleń

Koordynator szkoleń

(from Aktorzy)

Trener

(from Aktorzy)

(from Obsługa realizacji szkoleń)

Rej estruj  

Trenera

(from Obsługa realizacji szkoleń)

Przej rzyj  moj e 

szkolenia

(from Obsługa realizacji szkoleń)

Przypisz zasoby 

do szkolenia

(from Obsługa realizacji szkoleń)

Oceń 

zrealizow ane 

szkolenie

(from Obsługa realizacji szkoleń)

Przypisz Trenera 

do szkolenia

Wprow adź 

dane 

uczestnika

(from Obsługa realizacji szkoleń)

Przej rzyj  listę 

uczestników  

przypisanych do 

szkolenia

Prezentuj  

informacj ę o 

szkoleniu

Prezentuj  

informacj e o 

szkoleniu 

zrealizow anym

Prezentuj  

informacj e o 

szkoleniu 

otw artym

Przypisz 

uczestnika do 

szkolenia

Abstrakcyjny przypadek 
użycia. Nie jest 
implementowany w 
systemie niemniej 
jednak jego istnienie 
można zaznaczyć w 
modelu

«include»

«extend»

«include»

«extend»

«include»

«include»

«include»

background image

uc Use Case View

System wspierający pracę kancelarii prawniczej

Praw nik

Szef kancelarii

anuluj  spraw ę

rej estruj  spraw ę

rej estruj  rozpraw ę

przydziel praw nika 

do spraw y

Podsystem czasu

usuń spraw ę

podaj  listę spraw  

zakończonych 

sukcesem

spraw dź czy 

praw nik j est w olny

odsuń praw nika od 

spraw y

«extend»

«include»

background image

Ćwiczenie