1 Modelowanie obiektowe - Ćw. 5. Treść zajęć: Dokumentacja przypadków użycia tworzenie scenariuszy. Diagramy przypadków użycia przedstawiają bardzo ogólny obraz systemu, nie pozwalają jednak na przedstawienie wielu istotnych informacji. Dlatego każdy przypadek użycia powinien być uzupełniony o stosowną dokumentację, charakteryzującą scenariusze tego przypadku użycia. Ma to bardzo istotne znaczenie podczas modelowania systemów rozbudowanych. DOKUMENTACJA PRZYPADKÓW UŻYCIA Scenariusz stanowi określony ciąg akcji dokumentujący zachowanie. Dla danego przypadku użycia zawsze należy wyróżnić scenariusz główny. Ponadto dokumentacja może zawierać scenariusze alternatywne. W praktycznych zastosowaniach występują często sytuacje zdeterminowane, charakteryzujące się niewystępowaniem alternatyw. W takich przypadkach tworzy się wyłącznie scenariusz główny. W tab. 1 przedstawiono szablon dokumentacji przypadku użycia. Tab. 1 Szablon dokumentacji przypadku użycia Pełna nazwa przypadku użycia: Numer: Twórca Aktorzy: Krótki opis: Warunki wstępne: Warunki końcowe: Główny przepływ zdarzeń: Alternatywne przepływy zdarzeń i rozszerzenia: Specjalne wymagania: Notatki i kwestie: Nazwa Numer identyfikacyjny PU Kto opracował (imię, nazwisko)? Jacy aktorzy związani są z tym PU? Czego dotyczy PU? Jakie warunki konieczne muszą być spełnione, aby zainicjować PU? Czym kończy się realizacja PU? Wypunktowana lista przepływów zdarzeń zachodzących podczas realizacji PU. Wypunktowana lista alternatywnych przepływów zdarzeń PU i rozszerzeń PU. Dodatkowe wymagania niefunkcjonalne, które mogą być istotne przykładowo podczas projektowania lub kodowania. Komentarze dotyczące PU.
2 Uwaga: istnieją także inne niż tabela sposoby dokumentowania każdego przypadku użycia poprzez np. niesformalizowany tekst, formalny tekst strukturalny, pseudokod. Każdy ze sposobów dokumentacji może też uwzględniać różną liczbę detali. Przykład 1 : Pełna nazwa przypadku użycia: Anuluj rezerwacje Numer: 5 Twórca Anna Krotoszyńska - Projektant Aktorzy: Recepcjonista, Kierownik recepcji Krótki opis: Anulowanie istniejącej rezerwacji pokoju lub apartamentu. Warunki wstępne: Co najmniej jeden pokój lub apartament hotelowy musi być zarezerwowany. Warunki końcowe: System odnotowuje pokój i/lub apartament jako dostępny. Główny przepływ zdarzeń: 1. Recepcjonista weryfikuje rezerwację klienta, uruchamiając funkcję Rezerwacje. 2. System wyświetla okno z informacjami o rezerwacjach (pokoje i apartamenty hotelowe) danego klienta. 3. Pracownik recepcji zaznacza rezerwacje do anulowania i uruchamia funkcję Anuluj rezerwacje. 4. System wyświetla komunikat Czy anulować zaznaczone rezerwacje?. 5. Pracownik recepcji potwierdza operację anulowania zaznaczonych rezerwacji. 6. System potwierdza wykonanie operacji komunikatem Anulowano wybrane rezerwacje i odświeża ekran monitora. Alternatywne przepływy zdarzeń 2a. System wyświetla Brak rezerwacji dla danego i rozszerzenia: klienta. 5a. Jeśli podczas rezerwacji podany został adres e- mail, pracownik może dodatkowo wysłać pocztą elektroniczną potwierdzenie anulowania rezerwacji. Specjalne wymagania: 1. Wysoka niezawodność systemu. 2. Czas przetwarzania operacji anulowania rezerwacji nie może przekroczyć 5 sekund. Notatki i kwestie: Brak. 1 Przykład opracowany na podstawie: Wrycza S., Marcinkowski B., Wyrzykowski K., Język UML 2.0 w modelowaniu systemów informatycznych, Wyd. Helion, Gliwice 2005 (str. 54)
3 Uwaga: Konsekwentne dokumentowanie poszczególnych przypadków użycia pomaga w odnajdywaniu nieścisłości i przeoczeń powstałych podczas tworzenia wstępnej wersji diagramu przypadków użycia. Zadanie 1: Utwórz w programie Word plik o nazwie Scenariusz PU. Przekopiuj do niego tabelę Szablon dokumentacji przypadku użycia (dodaj obramowania). Na podstawie poniższego opisu pracy operatora CPR przy wykorzystaniu systemu teleinformatycznego, uzupełnij tabelę scenariuszem przypadku użycia Przyjmij zgłoszenie telefoniczne. Zwróć uwagę na występowanie alternatywnych przebiegów zdarzeń i rozszerzeń. Opis pracy operatora CPR 2 : Operator numerów alarmowych po usłyszeniu sygnału i podjęciu połączenia przedstawia się operator nr w czym mogę pomóc?. Jeśli osoba dzwoniąca nie podejmuje rozmowy, operator numerów alarmowych po co najmniej dwukrotnej nieudanej próbie nawiązania rozmowy rozłącza połączenie. Operator prowadząc z osobą dzwoniącą rozmowę w sposób spokojny i zdecydowany zadaje pytania uzyskując w ten sposób informacje, w szczególności: - miejsce zdarzenia - rodzaj zdarzenia 2 Opracowane na podstawie: http://epbf.pl/pub/straz/wp-content/uploads/2015/11/wytyczne-do-obslugizgloszen-alarmowych-kierowanych-do-numeru-112-w-pilota%c5%bcu-integracji-si-cpr-z-swds%c5%82u%c5%bcb2.pdf
4 - czy są osoby poszkodowane (a jeśli tak ile ich jest) - dane osoby zgłaszającej. Operator nie rozłączając się wypełnia oraz zapisuje formatkę w systemie teleinformatycznym CPR. Zawiera ona w szczególności: - lokalizację osoby dzwoniącej/lokalizację miejsca zdarzenia - kategoria i podkategoria zdarzenia - opis zdarzenia - dyspozytornia służby (jednej lub kilku), do której należy przesłać formatkę, wraz ze wskazaniem służby wiodącej, - dane osoby zgłaszającej. Operator numerów alarmowych po uzupełnieniu w systemie niezbędnych danych, potwierdza osobie zgłaszającej przyjęcie zgłoszenia alarmowego. Po tym potwierdzeniu kończy rozmowę. Wypełnioną formatkę operator przesyła do SWD (Systemu Wspomagania Dowodzenia). Następnie operator wykonuje kolejno połączenia telefoniczne do dyspozytorów wybranych w formatce (np. Policja, PSP, ratownictwo medyczne) zaczynając od dyspozytora służby wiodącej (potwierdzając dostarczenie formatki na podstawie numeru zdarzenia). Po zakończeniu wszystkich powyższych działań operator wraca do dyżuru przy telefonie alarmowym. W przypadku zgłoszeń kierowanych przez dzieci (np. zasłabnięcie rodzica) lub osób przejawiających skłonności samobójcze, operator po wypełnieniu formatki nie rozłącza się i stara się podtrzymać rozmowę do czasu przybycia na miejsce zdarzenia właściwych podmiotów (w tym czasie inny operator numerów alarmowych wykonuje połączenia telefoniczne do dyspozytorów wybranych w formatce). W przypadku, gdy zachodzi konieczność przekazania trwającego połączenia do dyspozytora danej służby, w szczególności dyspozytora PRM, operator CPR informuje osobę dzwoniącą o przełączeniu rozmowy słowami: proszę się nie rozłączać, łączę z Policją/strażą pożarną/ratownictwem medycznym. Wypełnioną wcześniej formatkę natychmiast wysyła do dyspozytora służby, do której przekierowano rozmowę. W przypadku zdarzenia masowego lub zagrożenia mienia i środowiska o znacznych rozmiarach lub zagrożenia terrorystycznego, operator po przyjęciu i przekazaniu zgłoszenia musi niezwłocznie powiadomić WCZK. Po otrzymaniu zgłoszenia nie będącego zgłoszeniem alarmowym, ale wymagającym interwencji, operator przekazuje dzwoniącemu numer właściwej służby
5 interwencyjnej (jeśli taki jest dostępny). Zdarzenie takie jest także odnotowane i zapisane w formatce. W przypadku, gdy okaże się, że zgłoszenie nie jest zgłoszeniem alarmowym, informuje by nie dzwonić na telefony alarmowe w sytuacjach tego niewymagających. Następnie kończy połączenie słowami: połączenie nie wymaga interwencji i zostanie zakończone oraz oznacza formatkę jako fałszywą. Zadanie 2: Utwórz w programie EA diagram przypadków użycia banku internetowego. Dodaj aktora Klient oraz przypadki użycia: Wykonaj przelew krajowy, Wydrukuj potwierdzenie wybranej transakcji oraz Zaloguj do systemu. W odpowiednim miejscu użyj związku między przypadkami użycia typu <<include>>. Zapisz diagram jako obraz JPEG i wklej do dokumentu WORD o nazwie Diagram PU banku internetowego. Sporządź w tym dokumencie scenariusze przypadków użycia z diagramu. Zadanie 3*: Utwórz w programie EA biznesowy diagram przypadków użycia dowolnej instytucji (np. Wydziału Nauk technicznych). Dodaj co najmniej dwóch aktorów biznesowych oraz trzy biznesowe przypadki użycia. Zapisz diagram jako obraz JPEG i wklej do dokumentu WORD o nazwie Diagram PU [nazwa instytucji]. Sporządź w tym dokumencie scenariusze zdefiniowanych przypadków użycia. Ćwiczenia opracowane przez mgr Ewelinę Jachimczyk (WNT, UWM Olsztyn) na podstawie: Wrycza S., Marcinkowski B., Wyrzykowski K., Język UML 2.0 w modelowaniu systemów informatycznych, Wyd. Helion, Gliwice 2005