background image

qhta@eti.pg.gda.pl

J.Kuchta@eti.pg.gda.pl

Modelowanie 

Modelowanie 

przypadków użycia

przypadków użycia

Jarosław Kuchta

Jarosław Kuchta

Dokumentacja i Jakość 

Dokumentacja i Jakość 

Oprogramowania

Oprogramowania

background image

Dokumentacja i Jako
ść Oprogramowania

2/23

Modelowanie przypadków użyci
a

Podstawowe pojęcia

Podstawowe pojęcia

Przypadek użycia

Przypadek użycia

 jest formalnym środkiem dla 

 jest formalnym środkiem dla 

przedstawienia funkcjonalności systemu 

przedstawienia funkcjonalności systemu 

informatycznego z punktu widzenia jego użytkowników.

informatycznego z punktu widzenia jego użytkowników.

Przypadek użycia reprezentuje 

Przypadek użycia reprezentuje 

możliwość

możliwość

 oferowaną 

 oferowaną 

użytkownikowi przez system

użytkownikowi przez system

Przypadek użycia jest realizowany przez 

Przypadek użycia jest realizowany przez 

interakcję

interakcję

 

 

pomiędzy systemem a jego użytkownikami.

pomiędzy systemem a jego użytkownikami.

Ten sam użytkownik może występować w różnych 

Ten sam użytkownik może występować w różnych 

rolach w różnych przypadkach użycia.

rolach w różnych przypadkach użycia.

 

 

Rolę 

Rolę 

użytkownika w interakcji z systemem reprezentuje 

użytkownika w interakcji z systemem reprezentuje 

aktor

aktor

.

.

Aktorem może być też 

Aktorem może być też 

system zewnętrzny

system zewnętrzny

, o ile 

, o ile 

korzysta z usług projektowanego systemu.

korzysta z usług projektowanego systemu.

background image

Dokumentacja i Jako
ść Oprogramowania

3/23

Modelowanie przypadków użyci
a

Przykłady

Przykłady

Aktorzy:

Aktorzy:

Klient

Klient

Sprzedawca

Sprzedawca

Magazynier

Magazynier

Przypadki użycia:

Przypadki użycia:

Złożenie zamówienia

Złożenie zamówienia

Wystawienie faktury

Wystawienie faktury

Sprawdzenie stanu towaru

Sprawdzenie stanu towaru

background image

Dokumentacja i Jako
ść Oprogramowania

4/23

Modelowanie przypadków użyci
a

Dwustopniowy proces 

Dwustopniowy proces 

definiowania przypadków 

definiowania przypadków 

użycia

użycia

1.

1.

Zespół projektowy we współpracy z 

Zespół projektowy we współpracy z 

użytkownikami opracowuje 

użytkownikami opracowuje 

tekstowy opis przypadków użycia

tekstowy opis przypadków użycia

2.

2.

Zespół projektowy na podstawie 

Zespół projektowy na podstawie 

opisu tekstowego opracowuje 

opisu tekstowego opracowuje 

diagramy przypadków użycia.

diagramy przypadków użycia.

background image

Dokumentacja i Jako
ść Oprogramowania

5/23

Modelowanie przypadków użyci
a

Rodzaje przypadków 

Rodzaje przypadków 

użycia

użycia

ogólny(

ogólny(

overview

overview

)

)

/

/

szczegółowy

szczegółowy

(detail)

(detail)

ogólny

ogólny

 przypadek użycia prezentuje ogólnie wymagania 

 przypadek użycia prezentuje ogólnie wymagania 

użytkowników co do funkcjonalności systemu

użytkowników co do funkcjonalności systemu

szczegółowy

szczegółowy

 przypadek użycia pokazuje szczegóły 

 przypadek użycia pokazuje szczegóły 

interakcji

interakcji

podstawowy(

podstawowy(

essential

essential

)/rzeczywisty

)/rzeczywisty

(real)

(real)

podstawowy

podstawowy

 przypadek użycia pokazuje tylko 

 przypadek użycia pokazuje tylko 

podstawowe rozwiązania konieczne dla zrozumienia 

podstawowe rozwiązania konieczne dla zrozumienia 

wymaganej funkcjonalności niezależnie od implementacji

wymaganej funkcjonalności niezależnie od implementacji

rzeczywisty

rzeczywisty

 przypadek użycia pokazuje konkretny ciąg 

 przypadek użycia pokazuje konkretny ciąg 

kroków potrzebnych do realizacji tej funkcjonalności 

kroków potrzebnych do realizacji tej funkcjonalności 

(implementację)

(implementację)

background image

Dokumentacja i Jako
ść Oprogramowania

6/23

Modelowanie przypadków użyci
a

Opis przypadku użycia

Opis przypadku użycia

Informacje ogólne

Informacje ogólne

Lista aktorów (opis aktorów, relacje 

Lista aktorów (opis aktorów, relacje 

między nimi)

między nimi)

Relacje z aktorami i innymi 

Relacje z aktorami i innymi 

przypadkami użycia (diagramy 

przypadkami użycia (diagramy 

przypadków użycia)

przypadków użycia)

Scenariusz zdarzeń

Scenariusz zdarzeń

Charakterystyka opcjonalna

Charakterystyka opcjonalna

background image

Dokumentacja i Jako
ść Oprogramowania

7/23

Modelowanie przypadków użyci
a

Informacje ogólne

Informacje ogólne

Nazwa przypadku użycia

Nazwa przypadku użycia

czasownik – rzeczownik (np. Złożenie zamówienia)

czasownik – rzeczownik (np. Złożenie zamówienia)

Identyfikator

Identyfikator

identyfikator cyfrowy umożliwiający powiązanie 

identyfikator cyfrowy umożliwiający powiązanie 

funkcjonalności z przypadkiem użycia

funkcjonalności z przypadkiem użycia

Referencja do wymagania funkcjonalnego ze specyfikacji 

Referencja do wymagania funkcjonalnego ze specyfikacji 

wymagań

wymagań

umożliwia powiązanie przypadku użycia ze specyfikacją 

umożliwia powiązanie przypadku użycia ze specyfikacją 

wymagań

wymagań

Poziom ważności

Poziom ważności

umożliwia ustalenie kolejności implementacji przy podejściu 

umożliwia ustalenie kolejności implementacji przy podejściu 

ewolucyjno-iteracyjnym

ewolucyjno-iteracyjnym

Rodzaj

Rodzaj

 

 

ogólny/szczegółowy 

ogólny/szczegółowy 

podstawowy/rzeczywisty

podstawowy/rzeczywisty

background image

Dokumentacja i Jako
ść Oprogramowania

8/23

Modelowanie przypadków użyci
a

Lista aktorów

Lista aktorów

Lista aktorów wyszczególnia wszystkich 

Lista aktorów wyszczególnia wszystkich 

aktorów uczestniczących w przypadku 

aktorów uczestniczących w przypadku 

użycia.

użycia.

Każdy aktor reprezentuje rolę użytkownika 

Każdy aktor reprezentuje rolę użytkownika 

w interakcji z systemem.

w interakcji z systemem.

Aktor może też reprezentować zewnętrzny 

Aktor może też reprezentować zewnętrzny 

system współpracujący z danym systemem.

system współpracujący z danym systemem.

Jeden z aktorów jest wyróżniany. Jest to 

Jeden z aktorów jest wyróżniany. Jest to 

tzw. 

tzw. 

aktor główny

aktor główny

 

 

(

(

primary actor

primary actor

), który 

), który 

inicjuje interakcję.

inicjuje interakcję.

background image

Dokumentacja i Jako
ść Oprogramowania

9/23

Modelowanie przypadków użyci
a

Wielu aktorów w jednym 

Wielu aktorów w jednym 

przypadku użycia

przypadku użycia

Złożenie

zamówienia

Klient

Sesja gry

Gracz

2

Sprzedaw

ca

background image

Dokumentacja i Jako
ść Oprogramowania

10/23

Modelowanie przypadków użyci
a

Relacje między 

Relacje między 

aktorami

aktorami

Użytkow

nik

Klient

Administrato

r

Użytkownik reprezentuje 

uogólnioną klasę

użytkowników. Ma ogólne 

możliwości (np. logowanie)

Klient 

reprezentuje klasę 

klientów. Ma 

możliwości 

biznesowe (np. 

złożenie 

zamówienia)

Administrator 

reprezentuje użytkownika 

pełniącego funkcję 

nadzorczą. Ma możliwości 

administracyjne (np. 

zarządzanie 

użytkownikami)

background image

Dokumentacja i Jako
ść Oprogramowania

11/23

Modelowanie przypadków użyci
a

Relacje między 

Relacje między 

przypadkami użycia

przypadkami użycia

relacja zawierania (

relacja zawierania (

include

include

)

)

zachodzi wówczas, gdy jeden przypadek użycia jest 

zachodzi wówczas, gdy jeden przypadek użycia jest 

obowiązkowo

obowiązkowo

 częścią innego przypadku użycia, tzn. 

 częścią innego przypadku użycia, tzn. 

scenariusz jednego przypadku użycia wchodzi w skład 

scenariusz jednego przypadku użycia wchodzi w skład 

scenariusza innego przypadku użycia.

scenariusza innego przypadku użycia.

relacja rozszerzenia (

relacja rozszerzenia (

extend

extend

)

)

zachodzi wówczas, gdy jeden przypadek użycia 

zachodzi wówczas, gdy jeden przypadek użycia 

może być

może być

 

 

częścią innego przypadku użycia, tzn. scenariusz jednego 

częścią innego przypadku użycia, tzn. scenariusz jednego 

przypadku użycia może zostać wykonany w scenariuszu 

przypadku użycia może zostać wykonany w scenariuszu 

innego przypadku użycia w pewnych warunkach.

innego przypadku użycia w pewnych warunkach.

relacja generalizacji-specjalizacji

relacja generalizacji-specjalizacji

zachodzi wówczas, gdy jeden przypadek stanowi stanowi 

zachodzi wówczas, gdy jeden przypadek stanowi stanowi 

szczególną (wyspecjalizowaną) wersję innego przypadku 

szczególną (wyspecjalizowaną) wersję innego przypadku 

użycia, np. jeden z aktorów jest wyspecjalizowaną klasą 

użycia, np. jeden z aktorów jest wyspecjalizowaną klasą 

aktora z drugiego przypadku użycia

aktora z drugiego przypadku użycia

background image

Dokumentacja i Jako
ść Oprogramowania

12/23

Modelowanie przypadków użyci
a

Przykłady relacji między 

Przykłady relacji między 

przypadkami użycia

przypadkami użycia

Zarządzanie 

użytkownikami

Dodawanie 

użytkownika

Edycja danych

użytkownika

Usuwanie 

użytkownika

Złożenie

zamówienia

Określenie terminu

dostawy

«include»

Logowanie

użytkownika

Rejestracja nowego

użytkownika

«extend»

background image

Dokumentacja i Jako
ść Oprogramowania

13/23

Modelowanie przypadków użyci
a

Relacje między aktorami 

Relacje między aktorami 

i przypadkami użycia (1)

i przypadkami użycia (1)

User

Admin

Logowanie

User

Admin

Logowanie

Logowanie

background image

Dokumentacja i Jako
ść Oprogramowania

14/23

Modelowanie przypadków użyci
a

Relacje między aktorami 

Relacje między aktorami 

i przypadkami użycia (2)

i przypadkami użycia (2)

Zarządzanie 

użytkownikami

Dodawanie 

użytkownika

Edycja danych

użytkownika

Usuwanie 

użytkownika

Administrato

r

Dodawanie 

użytkownika

Edycja danych

użytkownika

Usuwanie 

użytkownika

Administrato

r

background image

Dokumentacja i Jako
ść Oprogramowania

15/23

Modelowanie przypadków użyci
a

Diagram przypadków 

Diagram przypadków 

użycia

użycia

Klient

Złożenie zamówienia

Sprawdzenie zamówienia

Zmiana zamówienia

Anulowanie zamówienia

Spedytor

Realizacja zamówienia

Sprzedawca

Magazynier

Sprawdzenie stanu 

w magazynie

background image

Dokumentacja i Jako
ść Oprogramowania

16/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń

Scenariusz zdarzeń

Podstawowy ciąg zdarzeń

Podstawowy ciąg zdarzeń

Aktywności zagłębione

Aktywności zagłębione

Sytuacje wyjątkowe

Sytuacje wyjątkowe

background image

Dokumentacja i Jako
ść Oprogramowania

17/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń 

Scenariusz zdarzeń 

– opis tekstowy (1)

– opis tekstowy (1)

Złożenie zamówienia:

Złożenie zamówienia:

1.

1.

Akceptacja klienta

Akceptacja klienta

2.

2.

Negocjacje pozycji

Negocjacje pozycji

3.

3.

Akceptacja zamówienia

Akceptacja zamówienia

background image

Dokumentacja i Jako
ść Oprogramowania

18/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń

Scenariusz zdarzeń

- opis tekstowy (2)

- opis tekstowy (2)

Akceptacja klienta:

Akceptacja klienta:

1.

1.

Po zgłoszeniu się klienta sprzedawca 

Po zgłoszeniu się klienta sprzedawca 

wyszukuje jego dane na liście klientów.

wyszukuje jego dane na liście klientów.

2.

2.

Jeśli brak klienta na liście klientów, to 

Jeśli brak klienta na liście klientów, to 

sprzedawca wprowadza nowego klienta.

sprzedawca wprowadza nowego klienta.

3.

3.

Sprzedawca potwierdza aktualne dane 

Sprzedawca potwierdza aktualne dane 

klienta.

klienta.

4.

4.

Jeśli dane klienta nie są aktualne, to 

Jeśli dane klienta nie są aktualne, to 

sprzedawca uaktualnia dane.

sprzedawca uaktualnia dane.

background image

Dokumentacja i Jako
ść Oprogramowania

19/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń 

Scenariusz zdarzeń 

– opis tekstowy (3)

– opis tekstowy (3)

Wprowadzenie nowego klienta:

Wprowadzenie nowego klienta:

1.

1.

Sprzedawca prosi klienta o podanie danych 

Sprzedawca prosi klienta o podanie danych 

osobowych.

osobowych.

2.

2.

Klient podaje swoje dane osobowe.

Klient podaje swoje dane osobowe.

3.

3.

Sprzedawca wprowadza dane osobowe klienta do 

Sprzedawca wprowadza dane osobowe klienta do 

tabeli klientów.

tabeli klientów.

Sytuacja wyjątkowa:

Sytuacja wyjątkowa:

1.

1.

Klient odmawia podania danych osobowych.

Klient odmawia podania danych osobowych.

2.

2.

Sprzedawca ponownie prosi klienta o podanie 

Sprzedawca ponownie prosi klienta o podanie 

danych osobowych.

danych osobowych.

3.

3.

Jeśli klient ponownie odmawia podania danych 

Jeśli klient ponownie odmawia podania danych 

osobowych, to transakcja się kończy.

osobowych, to transakcja się kończy.

background image

Dokumentacja i Jako
ść Oprogramowania

20/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń 

Scenariusz zdarzeń 

– opis tekstowy (4)

– opis tekstowy (4)

Negocjacje pozycji:

Negocjacje pozycji:

Dla każdej pozycji zamówienia:

Dla każdej pozycji zamówienia:

1.

1.

Sprzedawca informuje klienta o 

Sprzedawca informuje klienta o 

oferowanym towarze.

oferowanym towarze.

2.

2.

Klient wybiera towar.

Klient wybiera towar.

3.

3.

Sprzedawca informuje klienta o cenie i 

Sprzedawca informuje klienta o cenie i 

terminie realizacji.

terminie realizacji.

4.

4.

Klient akceptuje lub odrzuca ofertę

Klient akceptuje lub odrzuca ofertę

background image

Dokumentacja i Jako
ść Oprogramowania

21/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń 

Scenariusz zdarzeń 

– opis tekstowy (5)

– opis tekstowy (5)

Oferowanie towaru:

Oferowanie towaru:

1.

1.

Sprzedawca dostosowuje listę 

Sprzedawca dostosowuje listę 

oferowanych towarów do potrzeb 

oferowanych towarów do potrzeb 

klienta.

klienta.

2.

2.

Sprzedawca prezentuje listę 

Sprzedawca prezentuje listę 

oferowanych towarów dla klienta.

oferowanych towarów dla klienta.

background image

Dokumentacja i Jako
ść Oprogramowania

22/23

Modelowanie przypadków użyci
a

Scenariusz zdarzeń 

Scenariusz zdarzeń 

- diagram sekwencji

- diagram sekwencji

klient : Klient

 : Sprzedawca

Lista klientów : 

Lista klientów

Cennik towarów 

: Cennik

Stan aktualny : 

Stan magazynu

Pozycje zamówienia

Zapytanie o cenę

Cena towaru

Zgłoszenie klienta

Wyszukanie klienta

Dane klienta

Potwierdzenie zgłoszenia

Zapytanie o stan

Stan towaru

Cena i termin realizacji

background image

Dokumentacja i Jako
ść Oprogramowania

23/23

Modelowanie przypadków użyci
a

Literatura

Literatura

A.Dennis, B.H.Wixom, D.Tegarden: 

A.Dennis, B.H.Wixom, D.Tegarden: 

Systems Analysis & Design. An 

Systems Analysis & Design. An 

Object-Oriented Approach with 

Object-Oriented Approach with 

UML

UML

, John Wiley & Sons, 2002

, John Wiley & Sons, 2002


Document Outline