Przypadki użycia w UML: Jak pisać skuteczne specyfikacje przypadków użycia

Wyświetlanie diagramu przypadków użycia za pomocą tylkoUML notacja nie jest wystarczająca. Każdy przypadek użycia towarzyszy mu tekst, który wyjaśnia cel przypadku użycia i funkcjonalność, która zostaje zrealizowana po wykonaniu przypadku użycia. Specyfikacje przypadków użycia tworzy się zazwyczaj iteracyjnie w trakcie faz analizy i projektowania.

  • Najpierw zapisywana jest krótka descripcja tylko tych kroków, które są wymagane dla normalnego przebiegu przypadku użycia (tj. jakie funkcjonalności oferuje przypadek użycia).
  • W miarę postępu analizy te kroki są rozwijane z większą szczegółowością.
  • Na końcu do przypadku użycia dodawane są przepływy alternatywne i wyjątkowe.
  • Każdy projekt może przyjąć standardowy szablon przypadku użycia do tworzenia specyfikacji przypadków użycia.

Przypadek użycia vs. Specyfikacja przypadku użycia

Przypadek użycia opisuje zadanie wykonywane przez aktora, które przynosi wartość biznesową. Przypadek użycia można wizualizować jako diagram przypadków użycia i/lub strukturalny format tekstowy specyfikacji:

Use Case vs. Use Case Specification

Przypadki użycia (zadania, które klient chce wykonać) mogą być:

  • Interakcja — Przypadki użycia systemu opisują, jak aktor interaguje z systemem w celu osiągnięcia określonego celu biznesowego.
  • Ręczny — Ciąg czynności wykonywanych przez aktora.
  • Zautomatyzowany — Ciąg kroków wykonywanych przez program lub skrypt.

Cechy przypadku użycia

Przypadek użycia ma:

  • Tylko jeden cel
  • Jeden punkt początkowy
  • Jeden punkt końcowy
  • Wiele ścieżek od początku do końca
    • Tj. określa zachowanie dla różnych możliwych warunków
    • Każdy warunek może wymagać określonych czynności

Characteristics of a Use Case

Na przykład — Klient płaci rachunek:

Customer Pays a Bill

Istnieje wiele ścieżek doosiągnięcia celu:

  • Telefonicznie
  • Przez pocztę
  • Osobiście
  • Przez czek
  • Gotówką, itd.

Ścieżki, którenie prowadzą do celu:

  • Karta kredytowa została odrzucona

Agilna metoda przypadków użycia

Model przypadków użycia i jego poszczególne przypadki użycia ewoluują stopniowo w czasie. Nie wszystkie przypadki użycia w modelu muszą być określone na tym samym poziomie szczegółowości.

W odpowiednim momencie i wystarczająco

Przypadki użycia mogą być pisane na różnych poziomach szczegółowości i zakresu, każdy z nich spełnia określone zadanie:

  • Podsumowanie: Ogólny opis i przegląd najwyższego poziomu funkcji systemu lub procesu biznesowego.
  • Poziom celów użytkownika: Opisy związane z zadaniamiużytkownikacelów i sposobu, w jaki oddziałują z systemem; opisy konkretnych procesów biznesowych. Przypadki użycia skupione na celach użytkownika są zazwyczaj uważane za poziom podstawowych zadań użytkownika.

Przykład: Wypłata gotówki z bankomatu to przydatne zadanie i byłoby przypadkiem użycia najwyższego poziomu, ale wpisanie kodu PIN nie byłoby na tym poziomie, ponieważ wspiera zadanie główne.

  • Podfunkcja: Opisy działań niższego poziomu, które uzupełniają części przypadku użycia głównego.

Agile Use Case Approach

Uwaga: Niektóre przypadki użycia mogą być w pełni określone na poziomie II. Przestajesz, gdy masz właśnie wystarczającą ilość szczegółów, uzyskanych w odpowiednim czasie i w odpowiedniej ilości.

Szczegółowe określenie przypadku użycia

Szczegółowy przypadek użycia to tekstowa reprezentacja opisująca sekwencję zdarzeń wraz z innymi istotnymi informacjami o przypadku użycia w określonym formacie. Ludzie zazwyczaj stosują standardowy szablon przypadku użycia do dokumentowania szczegółowych informacji o przypadku użycia.

Detailed Use Case Specification

Szablon przypadku użycia – przykład wypłaty gotówki z bankomatu

Jak wspomniano wcześniej, przypadki użycia mają różne style notacji (np. diagramatyczny, UML, format tekstowy). Niezależnie od użytej notacji, powinien być łatwy do zrozumienia. Możesz użyć szablonu, takiego jak ten odAlistair Cockburn, lub wybrać szablon, który najlepiej pasuje do Twojego zespołu.

Określenie przypadku użycia
Nazwa przypadku użycia: Wypłata gotówki
Uczestnicy: Klient (główny), System bankowy (pomocniczy)
Krótki opis: Zezwala każdemu klientowi banku na wypłatę gotówki z jego konta bankowego.
Priorytet: Wymagane
Status: Średnia szczegółowość
Wstępne warunki: Klient banku ma kartę do włożenia do bankomatu
Bankomat jest podłączony do sieci i działa poprawnie
Warunki końcowe:
  • Klient banku otrzymał gotówkę (i opcjonalny paragon)
  • Bank odliczył kwotę z konta klienta i zarejestrował szczegóły transakcji
Podstawowy przebieg:
  1. Klient włącza swoją kartę do bankomatu
  2. Bankomat sprawdza, czy karta jest ważną kartą bankową
  3. Bankomat prosi o wpisanie kodu PIN
  4. Klient wpisuje swój kod PIN
  5. Bankomat weryfikuje kartę bankową pod kątem kodu PIN
  6. Bankomat przedstawia opcje usługi, w tym „Wypłata”
  7. Klient wybiera „Wypłata”
  8. Bankomat przedstawia opcje kwoty
  9. Klient wybiera kwotę lub wpisuje kwotę
  10. Bankomat sprawdza, czy w maszynie jest wystarczająca ilość gotówki
  11. Bankomat sprawdza, czy klient jest poniżej limitu wypłat
  12. Bankomat sprawdza, czy na koncie klienta jest wystarczająca ilość środków
  13. Bankomat odlicza kwotę z konta klienta
  14. Bankomat zwraca kartę bankową klienta
  15. Klient pobiera swoją kartę bankową
  16. Bankomat wypłaca gotówkę klientowi
  17. Klient pobiera swoją gotówkę
Alternatywne przebiegi: 2a. Nieprawidłowa karta
2b. Karta włożona do góry nogami
5a. Zabierana karta
5b. Nieprawidłowy PIN
10a. Niewystarczająca ilość gotówki w maszynie
10b. Nieprawidłowa nominał gotówki w maszynie
11a. Wypłata przekracza limit wypłat
12a. Niewystarczające środki na koncie bankowym klienta
14a. Karta bankowa zablokowana w maszynie
15a. Klient nie pobiera karty bankowej
16a. Gotówka zablokowana w maszynie
17a. Klient nie pobiera gotówki

  • Bankomat nie może komunikować się z systemem bankowym
  • Klient nie odpowiada na monity bankomatu
Zasady biznesowe: B1: Format PIN
B2: Liczba prób wpisania PIN
B3: Opcje usługi
B4: Opcje kwoty
B5: Limity wypłat
B6: Karta musi zostać pobrana przed wypłatą gotówki
Wymagania niestandardowe: NF1: Czas potrzebny na zakończenie transakcji
NF2: Bezpieczeństwo wprowadzania PIN
NF3: Czas do pobrania karty i gotówki
NF4: Obsługa języków
NF5: Obsługa użytkowników niewidomych i częściowo niedowidzących

Leave a Reply