Wyjątek czy alternatywa?

W trakcie przedstawiania abonenckiego modelu biznesowego wskazałem w części wykonywanej po stronie systemu dwie sytuacje, które kończyły proces z efektem innym niż oczekiwany przez użytkownika. Efektem oczekiwanym przez użytkownika było „Udostępnienie dokumentu”. Zamiast mogło się pojawić zdarzenie „Brak dostępu” lub zdarzenie „Brak opłaty”.
Potem trafiłem na artykuł o rozróżnianiu ścieżek alternatywnych i wyjątków, zamieszczony na stronie ModernAnalyst.com – „Document Decisions Separately and Explicitly – A Proposed Use Case Scenario Best Practice”. Artykuł wskazywał 2 pojęcia:

  • Alternate paths (options) are the result of an actor’s choice.”
  • Exception paths (errors) are the result of the system’s choice.”

Pierwsze z nicj wskazuje na alternatywne działania użytkownika, a drugie na działania systemu w wyniku napotkanych problemów (wyjątków). Rozróżnienie takie jest jak najbardziej logiczne, ponieważ użytkownik często ma wiele opcji do wyboru. Każda z nich może zakończyć się poprawnie lub zostać przerwana. Przerwanie może być wynikiem błędu użytkownika, brakiem wykonania pewnych działań poza systemem lub po prostu natrafieniem przez system na wyjątek. Wyjątki mogą być różne. Przykładem dla tych drugich są wskazane powyżej sytuacje, w których system wykonując zaplanowane sprawdzenia trafia na wyjątek, co nie pozwala na prawidłowe zakończenie procesu, czyli przejście tzw. ścieżki głównej (przejście procesu bez wyjątków, do „Udostępnienia dokumentów”). Więcej o wyjątkach we wpisie „Obsługa wyjątków w wymaganiach

Co może być przykładem alternatywnego działania użytkownika?

Na powyższym diagramie (przykład w BPMN) zaprezentowano dwie ścieżki obsługi przez użytkownika sytuacji, gdy otrzyma komunikat o braku dokonania opłaty. Pierwsza z nich pozwala na prawidłowe dokończenie procesu – uzyskanie dostępu do poszukiwanego dokumentu. Druga z kolei, powoduje, że użytkownik przestaje korzystać z usług serwisu. Dzięki przedstawieniu różnych opcji użytkownika, obok tych standardowych, otrzymujemy pełniejszy obraz procesów, które mogą wystąpić w danym modelu biznesowym. W przedstawianym przekładzie mogą to być: „Rejestracja”, „Wyszukiwanie zasobów”, „Rezygnacja”, lub „Opłacenie”.

Reklama

9 uwag do wpisu “Wyjątek czy alternatywa?

  1. […] Mogę sobie wyobrazić, że podczas tego kroku, pracownik sklepu przechodzi przez magazyn z elektroniczną listą produktów, znajduje je po kolei i umieszcza w środku transportu. Po przejściu kilkunastu pozycji zamówienia, nie odnajduje kolejnego produktu w odpowiedniej ilości. Oznacza to, kompletuje resztę. Na tej podstawie proces idzie dla zebranych produktów dalej, a dla brakujących jest obsługa sytuacji nietypowej/wyjątkowej. […]

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s