16
Diagramy stanu Daniel Stefaniak s3734

Diagramy stanu

  • Upload
    claral

  • View
    38

  • Download
    2

Embed Size (px)

DESCRIPTION

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 - PowerPoint PPT Presentation

Citation preview

Page 1: Diagramy stanu

Diagramy stanu

Daniel Stefaniak s3734

Page 2: Diagramy stanu

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

Page 3: Diagramy stanu

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

Page 4: Diagramy stanu

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

Page 5: Diagramy stanu

Zdarzenia - rodzaje

Wołanie – operacja (parametr1, parametr2)

Zmiana – when(warunek) Sygnał – nazwa_syg(a:T) Czas – after(czas)

Page 6: Diagramy stanu

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

Page 7: Diagramy stanu

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

Page 8: Diagramy stanu

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

Page 9: Diagramy stanu

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ść)

Page 10: Diagramy stanu

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

Page 11: Diagramy stanu

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]

Page 12: Diagramy stanu

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

Page 13: Diagramy stanu

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

Page 14: Diagramy stanu

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

Page 15: Diagramy stanu

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”

Page 16: Diagramy stanu

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