W Sparx Enterprise Architect od wersji 8.0 wprowadzono możliwość opisywania scenariuszy przypadków użycia w formie ustrukturalizowanej (Structured Scenario). Wcześniej scenariusz można było tworzyć tylko w postaci sformatowanego tekstu zawierającego ewentualnie listy numerowane. Od dawna możliwe było również opracowanie scenariusza w formie Linked Document dołączonego do elementu typu Use Case.
W tym artykule chciałbym przybliżyć możliwości wykorzystania mechanizmu Structured Scenario. Ten sposób posiada wiele zalet i warto się z nimi zapoznać.
Edytor Structured Scenario
Po utworzeniu elementu typu Use Case możemy otworzyć zakładkę Scenarios. Wygląda ona następująco.
W polu Scenario wyświetlana jest nazwa scenariusza. Domyślnie jest to Basic Path, czyli inaczej przebieg podstawowy. Nazwę scenariusza można zmienić w tym miejscu.
Typy scenariuszy
Każdy scenariusz ma swój typ. Domyślnie jest to również Basic Path. Ponadto dostępne są również typy:
- Alternate - dla scenariuszy alternatywnych,
- Exception - dla sytuacji wyjątkowych.
Scenariusz alternatywny definiuje listę kroków, których sekwencyjne wykonanie również warunkuje osiągnięcie stanu opisanego przez warunki końcowe. Zaś sytuacja wyjątkowa (Exception) opisuje metody obsługi przypadku, gdy wystąpi określony warunek uniemożliwiający poprawne zakończenie przypadku użycia, czyli osiągnięcie warunków końcowych.
Możliwe jest definiowanie własnych typów scenariuszy (menu Settings -> Project Types --> General Types, zakładka Scenario) lub dodanie tłumaczenia dla istniejących w opcjach generowania dokumentacji.
Niestety z niewiadomych dla mnie względów na liście Word Substitution brak jest słowa Exception. Być może dla tego słowa Sparx zrobił wyjątek, czyli Exception.
Lista scenariuszy
Ale wróćmy do okna służącego tworzeniu scenariuszy. W dolnej części okna widoczna jest lista scenariuszy. Dla każdego z nich wskazane jest, w którym kroku się zaczynają, jaką mają nazwę, typ i ewentualnie w którym kroku zachodzi powrót (Join) do przebiegu głównego. W podanym przykładzie scenariusz Alternatywny1 rozpoczyna się w kroku 3 (podanym tu jako 3a), a wraca do scenariusza podstawowego w kroku 4.
Sytuacja wyjątkowa1 może wystąpić w kroku 4 (podanym tu jako 4a) i nie wraca do scenariusza podstawowego, co oznacza, że wywołanie przypadku użycia może się skończyć niepowodzeniem.
Sytuacja wyjątkowa1 może wystąpić w kroku 4 (podanym tu jako 4a) i nie wraca do scenariusza podstawowego, co oznacza, że wywołanie przypadku użycia może się skończyć niepowodzeniem.
Kroki scenariusza
Każdy krok scenariusza jest numerowany, gdyż istotna jest ich kolejność. Pole Action służy do opisania kroku. Pola Uses, Results oraz State służą do podania dodatkowych informacji o kroku.
- Uses - dla wskazania na przykład klas danych i/lub reguł biznesowych, które są wykorzystywane w danym kroku.
- Results - dla wskazania na przykład danych wynikowych, które zostają utworzone lub zmodyfikowane w danym kroku.
- State - dla wskazania zmiany stanu jakiejś danej wynikowej (np. instancja klasy Zamówienie może przyjmować w jednym kroku stan Utworzone, w kolejnym Zwalidowane, a w jeszcze innym Zatwierdzone.
Wykorzystanie tych pól jest opcjonalne. Z reguły proces tworzenia przypadków użycia jest iteracyjny, w którym analityk przechodzi od ogółu do szczegółu - rozpoczynając od identyfikacji przypadków użycia, poprzez tworzenie scenariusza głównego, a gdy jest potrzeba - kończąc na dokładnym opisaniu wykorzystanych danych referencyjnych.
Każdy krok opatrzony jest ikonką pokazującą, czy jest wykonywany przez użytkownika, czy przez opisywany system. Ikonki te są przypisywane naprzemiennie. Oczywiście może się zdarzyć, że kilka kroków pod rząd jest wykonywanych na przykład przez system, wówczas ikonkę tę można zmienić klikając dwukrotnie na nią.
Toolbar edytora scenariuszy
Nad listą kroków scenariusza znajduje się belka zawierająca wiele przycisków.
Pierwszy z nich służy do zapisania treści scenariusza. Drugi aktywny jest tylko w przypadku edycji scenariuszy alternatywnych lub sytuacji wyjątkowych i umożliwia szybki powrót do głównego scenariusza.
Kolejne dwa przyciski są z kolei aktywne tylko z poziomu edycji scenariusza głównego i umożliwiają utworzenie nowych scenariuszy, odpowiednio Alternate i Exception.
Okno Manage Uses Context List służy do dodawania i usuwania elementów powiązanych z krokami scenariusza.
Przyciski opatrzone strzałką w górę i w dół służą do zmiany kolejności kroków.
Następny przycisk umożliwia wybór typu i wygenerowanie (lub aktualizację istniejącego) diagramu obrazującego scenariusz.
Kolejny przycisk umożliwia automatyczne stworzenie przypadków testowych dla wszystkich scenariuszy.
Usuwanie całego scenariusza
Jeśli uznamy, że jakiś scenariusz jest zbędny (na przykład, gdy scenariusz alternatywny należy przenieść do innego przypadku użycia jako scenariusz główny), wówczas istnieje oczywiście możliwość jego usunięcia.W tym celu należy przejść do zakładki Description, zaznaczyć scenariusz na liście i nacisnąć przycisk Delete.
Importowanie scenariusza
W przypadku, gdybyśmy dysponowali już scenariuszami opracowanymi np. w MS Word nie musimy pieczołowicie przepisywać kroków scenariusza jeden po drugim.W takim przypadku możemy w dokumencie zaznaczyć i skopiować do schowka wszystkie kroki.
A następnie w edytorze scenariuszy kliknąć prawym przyciskiem myszy na liście kroków i wybrać z menu kontekstowego Create Structrue From Clipboard Text -> New Line Delimited.
W przypadku, gdy kroki miały postać listy numerowanej pozostaje jeszcze ręczne usunięcie numerów kroków z treści.
Świetnie! Takiego artykułu szukałem! Naprawdę przydatne.
OdpowiedzUsuńPozdrawiam
Krótkie, przydatne wprowadzenie, dzięki.
OdpowiedzUsuńPrzyłączam się do podziękowań, pozdrawiam. :)
OdpowiedzUsuńPozytywna praca. Dziękuję.
OdpowiedzUsuńCzy można eksportować scenariusz utworzony w EA? Np na potrzeby umieszczeni go w dokumencie Word?
OdpowiedzUsuń