Diagramy stanu
description
Transcript of Diagramy stanu
Diagramy stanu
Daniel Stefaniak s3734
Diagram Stanu -wstęp Służy do prezentowania dynamicznych
(zmiennych w czasie) aspektów systemu Pozwala także przedstawić sposób realizacji
funkcji systemu Jest uzupełnieniem diagramu klas Nie jest tworzony dla każdej klasy; tylko dla
tych, które mają wiele dobrze zdefiniowanych stanów wpływających na jej zachowanie
Może również zostać narysowany dla całego systemu
Pojęcia Zdarzenie – zjawisko zachodzące w
pewnym punkcie czasu , wpływające na system np. Wprowadzenie danych
Stan – jest to okres czasu ograniczony przez zdarzenia (atrybuty + powiązania składają się na stan)
Przejście – Zmiana stanu wskutek zdarzenia na inny stan
Akcja – czynność wykonana w momencie zajścia zdarzenia
Operacja – czynność wykonywana w trakcie gdy system jest w jakimś stanie
Zdarzenie Wydarzenie następujące w jednym punkcie czasowym i
warte analizowania z punktu widzenia celów projektowanego systemu
Samo zdarzenie nie trwa w czasie, ale fakt zaistnienia zdarzenia jest rejestrowany i trwa aż do momentu, gdy jakiś podmiot go “skonsumuje”
Wszystko, co wywołuje pewne skutki w systemie może być modelowane jako zdarzenie
Zdarzenie może posiadać atrybuty, np. zdarzenie odlot samolotu może mieć datę i godz. odlotu jako swoje atrybuty, co zapisujemy następująco: odlot samolotu (data, godz.)
Zdarzenia mogą być: uporządkowane w czasie (synchroniczne), np. odlot
samolotu z Warszawy i przylot tego samolotu do Paryża, współbieżne, np. naciśnięcie klawisza myszy i odlot samolotu
Zdarzenia - rodzaje
Wołanie – operacja (parametr1, parametr2)
Zmiana – when(warunek) Sygnał – nazwa_syg(a:T) Czas – after(czas)
Stan
Stan, w podstawowym znaczeniu, dotyczy pewnego fragmentu historii życia obiektu i można go charakteryzować na trzy uzupełniające się sposoby:
jako zbiór wartości obiektu (atrybutów i powiązań) w pewnym aspekcie podobnych (rozważane jest tu podobieństwo jakościowe)
jako okres czasu w którym obiekt oczekuje na zdarzenie
jako okres w którym obiekt przetwarza
Rodzaj stanu Opis Notacjaprosty Stan nie posiadający podstanów
złożony sekwencyjny Stan złożony z jednego lub więcej podstanów
początkowy Pseudostan służący do oznaczenia punktu startowego
końcowy Pseudostan służący do oznaczenia punktu finalnego
złożony współbieżny Stan podzielony na dwa lub więcej współbieżnych podstanów; wszystkie podstany są jednocześnie aktywne, gdy jako całość aktywny jest stan złożony
Stany - notacja
Stany – notacja cd.
węzeł Pseudostan służący do łączenia łańcucha przejść w jedno przejście
historyczny Pseudostan, którego aktywacja uaktywnia stanpoprzednio aktywny (w ramach stanu złożonego) H
odnośnikowy Pseudostan., do którego występuje odwołanie na diagramie; podmieniany przez stan wyspecyfikowany w odwołaniu
include S
pniak Pseudostan, do którego występuje odwołanie na diagramie, pniak wchodzi w skład innego stanu złożonego
S
Rodzaj stanu Opis Notacja
Stan złożony - rodzaje Sekwencyjny - złożony z jednego lub
więcej podstanów, z których tylko jeden jest aktywny, gdy aktywny jest stan złożony
Współbieżny - podzielony na co najmniej dwa współbieżne podstany, które są jednocześnie aktywne, gdy aktywny jest stan złożony (jako całość)
Przejście Przejście zewnętrzne
Przejście wewnętrzne
Samo-przejście
zdarzenie [warunek] /akcjaStan 1 Stan 2
zdarzenie [warunek] /akcja
zdarzenie [warunek] /akcja
Stan
• Przejście Automatyczne
[warunek] /akcjaStan 1 Stan 2
Przykład – zapalanie pojazdu
SpoczynekPrzekręcenie kluczyka w prawo
chceck[Silnik nie
Zaskoczył]
Przekręcenie kluczyka w lewo
Przekrecenie kluczyka w lewo
Zapłon
Wył. Włącz.Zapalanie
kluczyk max w prawo[Biegi w pozycji 0]
kluczyk do poz. Wył.
check[zaskoczyl]
Praca
Chcek[nie zaskoczyl]
Przykład – wysyłanie maila
Okno dialogowe
do/wyświetl
Podanie loginu i hasła
Hasło lub login nieprawidłowy
Użytkownik zalogowany
Wyloguj
Napisz mailado/wyświetl okno wiadomości
logowanie
Wyślij
Zadanie 1
Diagram stanu dla rozmowy przez telefon komórkowy Liczenie czasu rozmowy Wyświetlenie informacji po zakończeniu
rozmowy (widoczne 3 sekundy) Wyświetlanie ekranu powitalnego
Zadanie 1 - rozwiązanie
Wyświetlanie sieci Wrowadzanie numeru
Do: zapisz cyfry
Wcisnięcie klawisza num.
Wcisnięcie kolejnego klawisza
Zatwierdzenienumeru
Rozmowa
Do: licz czas
Enter : PołączZakonczenie rozmowy
Wyświetlanie inf.
Do: wyświetl
Enter : Rozłacz
After(3 sek)
OFF
Zadanie 2
Bankomat 3-krotne wprowadzenie złego PIN-u
podobnie jak wlożenie nieważnej karty kończy się jej zatrzymaniem
Można wielokrotnie wypłacać gotówkę/sprawdzać stan konta
Karta jest oddawana klientowi po wybraniu „Zakończ”
Zadanie 2 - rozwiązanie
GotowośćDo:Wyswietlaj Zaproszenie
Sprawdzanie KartyDo: Sprawdz Karte
Włożona Karta Wpisywanie PINDo: Wczytuj PIN
Karta OK
Wczytywanie PINDo: Wczytuj PIN
Wprowadzony PINPIN zly[liczba<3]
PIN OK
AlarmowwanieDo:połknij karte
GotowośćDo:wyświetl
polecenia
Wypłacanie GotówkiDo:Wypłaćgotówke
PolecenieWypłaty
Koniec operacji/Wysuń karte
PIN zly[liczba=3]Karta NOT OK
Sprawdzanie saldoDo:Wydrukuj
informację
PolecenieWydruku