DIAGRAMY INTERAKCJI DIAGRAMY STEROWANIA INTERAKCJĄ Diagramy sterowania interakcją dokumentują logiczne związki między fragmentami interakcji. Podstawowe kategorie pojęciowe diagramów sterowania interakcją podano w tabeli. 1
Przykład diagramu sterowania interakcją, który zawiera przywoływanie wystąpienia interakcji ref opisujące proces rekrutacji na studia Proces rekrutacji kandydatów na studia jest wspomagany systemem informatycznym. Przedstawienie całego procesu na jednym diagramie możliwe jest przy wykorzystaniu diagramu sterowania interakcją. Na pierwszym etapie rekrutacji kandydaci za pośrednictwem przeglądarek internetowych zgłaszają swoją kandydaturę i przesyłają wymagane dokumenty. W odpowiedzi system generuje kody dostępów niezbędne do uczestnictwa w teście kompetencji. Wymienione interakcje są częścią przywołania ref o nazwie PrzyjmowanieDokumentów. Następnie w ramach przywołanej interakcji PrzeprowadzenieTestuKompetencji kandydaci logują się do systemu i uczestniczą w teście. System wyświetla kolejne pytania, a kandydaci zaznaczają odpowiedzi. Następnie, po upływie przewidzianego czasu trwania testu, system automatycznie go kończy, blokując możliwość wprowadzania czy modyfikowania odpowiedzi. Interakcje składające się na pokazaną finalizację procedury egzaminacyjnej przedstawia całościowo diagram sekwencji ZakończenieEgzaminu. 2
ZESTAWIENIE NOTACJI DIAGRAMÓW CZYNNOŚCI I DIAGRAMÓW SEKWENCJI STOSOWANYCH W DIAGRAMACH STEROWANIA INTERAKCJĄ 3
Zastosowanie wymienionych w tabeli pojęć pokazano na rysunku, który przedstawia funkcjonowanie systemu GPS. Diagram sterowania interakcją z procesami współbieżnymi i warunkowymi W momencie uruchomienia systemu informatycznego GPS automatycznie uruchamiają się skrypty weryfikujące poprawne funkcjonowanie oprogramowania. Jeśli testy nie wykazują niewłaściwego zachowania systemu, system informatyczny GPS inicjuje równoległe wykonanie dwóch przywoływanych wystąpień interakcji. Są to: Test Połączenia z Odbiornikiem oraz Test Łączności z Satelitą. Jednak w momencie wykrycia podczas autotestu nieprawidłowości przepływ ulega zakończeniu. Wykonywane równolegle wystąpienia interakcji również mogą zakończyć się błędem. W takim przypadku następuje Generowanie Specyfikacji błędów. W sytuacji poprawnego zakończenia wszystkich testów system GPS jest gotowy do Ustalania Pozycji Śledzonych Obiektów. Interakcje związane z tą funkcjonalnością są wykonywane iteracyjnie dla wszystkich śledzonych obiektów. 4
DIAGRAMY KOMUNIKACJI Reprezentują strukturalne związki pomiędzy obiektami biorącymi udział w interakcji oraz wymianą komunikatów pomiędzy nimi. Podstawowymi elementami diagramów komunikacji są: klasyfikator (np. obiekt), asocjacja, komunikat. W diagramach komunikacji kolejność wysyłania komunikatów nie wynika z ich naturalnego uporządkowania na osi czasu, tak jak w diagramach sekwencji. Konieczne jest więc wprowadzenie numeracji porządkowej. Sposoby numerowania komunikatów pokazano poniżej. Widoczne są również różne metody zapisu komunikatów. Proste numerowanie komunikatów Proste numerowanie komunikatów alternatywne zasady umieszczania komunikatów 5
Zagnieżdżenie komunikatów Diagramy komunikacji są izomorficzne względem diagramów sekwencji, tzn. jednoznacznie wzajemnie przekształcalne. Na rysunku przedstawiono przykłady izomorficznych diagramów sekwencji i komunikacji. Izomorfizm diagramów sekwencji i komunikacji 6
DIAGRAMY HARMONOGRAMOWANIA Reprezentują na osi czasu zmiany dopuszczalnych stanów, jakie może przyjmować obiekt uczestniczący w interakcji. Stosuje się je w celu sporządzenia harmonogramów interakcji obiektów względem zmian czasu trwania ich stanów. Poniżej przedstawiono dwie alternatywne metody notacji diagramów harmonogramowania dla obiektu klasy Rezerwacja. Załamanie linii stanów klasyfikatora oznacza wystąpienie zdarzenia powodującego zainicjowanie nowego stanu. Określono na nich stany obiektu Rezerwacja i czas ich trwania poprzez określenie ograniczeń czasowych w odniesieniu do stanów: potwierdzanie, sporządzanie, opłacanie. Jeśli skala czasu w sposób jednoznaczny określa długość trwania stanu, nie zaznacza się ograniczeń czasowych dla stanu wysyłanie. Diagram harmonogramowania ze zdarzeniami i ograniczeniami czasowymi HARMONIZACJA Alternatywna notacja diagramów harmonogramowania Diagramy harmonogramowania umożliwiają przedstawienie interakcji ze wszystkimi współpracującymi obiektami w danym określonym w harmonogramie czasie. Stwarza to możliwość harmonizacji współdziałania obiektów w czasie. Poniżej pokazano harmonogramowanie rejestrowania rezerwacji hotelowej w dwóch alternatywnych notacjach. 7
Źródło: Harmonizacja linii zmiany stanów dla diagramu harmonogramowania rejestrowania rezerwacji hotelowej alternatywne notacje Na początku obiekty Recepcjonista, IRezerwacja i BazaDanych są w stanach: bezczynności, wyświetlania oraz oczekiwania. W wyniku wystąpienia konkretnego zdarzenia, tj. przyjęcia zgłoszenia klienta, recepcjonista otwiera rezerwację. Posługuje się w tym celu wyświetlaną na ekranie formatką IRezerwacja. Recepcjonista wprowadza dane, których kompletność oraz poprawność formalna jest sprawdzana przez IRezerwację. Następnie realizowana jest operacja przetwarzania danych. Dokonanie rezerwacji pokoju albo pokoi jest zapisywane w BazieDanych. W ramach IRezerwacji wyświetlane jest potwierdzenie dokonania rezerwacji. Po zakończeniu realizacji transakcji poszczególne obiekty przechodzą do stanów wyjściowych. 8
Źródło: PRZESYŁANIE KOMUNIKATÓW Diagramy harmonogramowania można uzupełnić o zapis interakcji w postaci komunikatów przesyłanych między obiektami, co pokazano na kolejnym rysunku. Zostały one wprowadzone do diagramu harmonogramowania omówionego powyżej. Komunikaty na diagramach harmonogramowania 9