Diagram maszyny stanowej id 135 Nieznany

background image

1

Diagramy maszyny stanowej
(state machines)

Dr in

ż

. Ilona Bluemke

2

Diagram maszyny stanowej



Opisuje zmiany stanów obiektu na skutek
zdarze

ń

. Do notacji u

ż

ywa si

ę

diagramów

Davida Harel'a (1987).



W

ę

zły - stany

- abstrakcja zbioru warto

ś

ci

atrybutów i poł

ą

cze

ń

obiektu



Skierowane kraw

ę

dzie

- zmiany stanów

etykietowane nazwami zdarze

ń



diagram deterministyczny

3

stany



Stan okre

ś

la reakcj

ę

obiektu na zdarzenie. Reakcja

mo

ż

e by

ć

ż

na dla ró

ż

nych stanów. Odpowiedzi

ą

na zdarzenie mo

ż

e by

ć

akcja lub zmiana stanu

obiektu.



zdarzenia reprezentuj

ą

chwile czasu, stany -

interwały czasu.



Stan obiektu zale

ż

y od sekwencji zdarze

ń

jakie

obiekt otrzymał w przeszło

ś

ci. Definiuj

ą

c stany

ignorujemy atrybuty, które nie wpływaj

ą

na

zachowanie obiektu. Ł

ą

czymy w jednym stanie

warto

ś

ci atrybutów, poł

ą

cze

ń

, które daj

ą

tak

ą

sam

ą

odpowied

ź

na zdarzenie.

4

Stany charakteryzują



nazwa stanu



sekwencja zdarze

ń

powoduj

ą

cych wej

ś

cie do

tego stanu



warunki charakteryzuj

ą

ce stan



oczekiwane zdarzenia



akcje - reakcje na zdarzenia



stany nast

ę

pne



stan pocz

ą

tkowy



stan ko

ń

cowy

5

Przykład diagramu maszyny stanowej



Np. kurs na uczelni

zgłoszony

zgłoszony

zgłoszony

zaakceptowany

zgłoszony

realizowany

zgłoszony

zakończony

6

Zachowanie klasy Seminarium podczas
rejestracji

background image

2

7

Sekcje symbolu graficznego stanu

nazwa

czynności wewnętrzne

przejścia wewnętrzne

Sekcja dekompozycji

8

Diagram maszyny stanowej



Opisuje zachowanie obiektów jednej klasy.
Wszystkie instancje klasy maj

ą

takie same

zachowanie - "dziel

ą

" diagram stanów. Ka

ż

dy obiekt

jest w swoim stanie ale jest niezale

ż

ny od innych

obiektów.



Ze zdarzeniami mog

ą

by

ć

zwi

ą

zane akcje,

zapisywane na kraw

ę

dziach diagramu stanu po

/

,

mog

ą

tak

ż

e reprezentowa

ć

wewn

ę

trzne operacje

steruj

ą

ce np. ustawienie atrybutów, generowanie

zdarze

ń

.

zdarzenie/ akcja

9

Słowa kluczowe opisujące zdarzenia



entry

identyfikuje czynno

ść

wykonywan

ą

przy wej

ś

ciu obiektu do stanu (jedn

ą

)



do identyfikuje czynno

ść

wykonywana w

sposób ci

ą

gły na obiekcie znajduj

ą

cym si

ę

w

danym stanie, mo

ż

na okre

ś

li

ć

kilka takich

czynno

ś

ci (niezale

ż

nie wykonywanych),

czynno

ś

ci te s

ą

wykonywane

po

czynno

ś

ci

entry



exit identyfikuje czynno

ść

wykonywan

ą

przy

wyj

ś

ciu ze stanu (jedn

ą

)

10

przejścia wewnętrzne

zdarzenie/operacja

okre

ś

laj

ą

czynno

ś

ci

wykonywane przez obiekt b

ę

d

ą

cy w stanie

pod wpływem

zdarzenia

Ustaw_godz

do/ wyswielt_godz

inc/ inkrementuj_godz

11

Klasyfikacja stanów



proste



zło

ż

one



stan zło

ż

ony

zawiera maszyn

ę

stanow

ą



lub

jest podzielony na obszary współbie

ż

ne

(zawiera podstany)

12

Generalizacja stanów (relacja or )

Stan zawiera maszyn

ę

stanow

ą

Luz

wstecz

Pierw.

Drugi

Trzeci

automatyczna skrzynia biegów

Do_przodu

wsteczny

Luz

L

F

wyżej

wyżej

niżej

niżej

stop

background image

3

13

Generalizacja stanów



Pozwala na opis na wysokim poziomie a nast

ę

pnie na

uszczegóławianie na coraz ni

ż

szych poziomach.



Tworzona jest struktura hierarchiczna z dziedziczeniem
wspólnego zachowania i struktury.



Stan mo

ż

e mie

ć

diagram maszyny stanowej, który

dziedziczy przej

ś

cia superstanu. Przej

ś

cie, akcja

superstanu dotyczy wszystkich jego podstanów (chyba,

ż

e zostanie przysłoni

ę

te przez przej

ś

cie w podstanie).



Wybór "L" w dowolnym podstanie "do przodu" powoduje
przej

ś

cie do stanu "luz". Wybór "F" powoduje przej

ś

cie

do stanu "pierwszy". Zdarzenie "stop" w dowolnym
podstanie "do przodu" powoduje przej

ś

cie do stanu

"pierwszy".

14

Notacja graficzna

W zło

ż

onych diagramach stanów diagramy

przej

ść

podstanów mo

ż

na rysowa

ć

na

oddzielnych diagramach.

Luz

wstecz

automatyczna skrzynia biegów

Do_przodu

wsteczny

Luz

L

F

15

Pełny diagram stanów dla klasy
Seminarium

16

Kompozycja – agregacja stanów

Pozwala na podział na cz

ęś

ci składowe z

ograniczon

ą

interakcj

ą

mi

ę

dzy nimi.



Jest równowa

ż

ne współbie

ż

no

ś

ci stanów.



Ka

ż

dy komponent wykonuje przej

ś

cia

równolegle z pozostałymi (równolegle
działaj

ą

„testowanie” i „wykonywanie zlece

ń

na slajdzie nast

ę

pnym).

17

Przykład agregacji stanów

praca

testowanie

Wykonywanie
zleceń

test

Samotest.

czeka

wykonuje

komenda

[continue]

[stop]

18

Mechanizm historii

Pozwala na

pami

ę

tanie stanu

ostatnio
odwiedzonego w
podstanie i
wej

ś

cie do niego

przy kolejnym
„wej

ś

ciu” do stanu

zło

ż

onego.

H

A

B

C

X

Y

D

In

Out

background image

4

19

Przykład maszyny stanowej z historią

Zamknięcie drzwi

Pranie

Płukanie

Suszenie

H

Czekaj

Otwarcie drzwi

20

Zadanie -1

Poni

ż

ej podano diagram zmian stanów dla pewnej

klasy. Podaj jakie czynno

ś

ci b

ę

d

ą

kolejno wykonane

przez obiekt tej klasy dla nast

ę

puj

ą

cej sekwencji

zdarze

ń

:



utworzenie obiektu,



E1,



E3,



E1,



E3.

Uzasadnij swoje rozwi

ą

zanie.

21

entry/akcja1
exit/akcja2
do/akcja3
E3/akcja6

stan1

stan2

E1/akcja4

E2/akcja5

entry/akcja7
exit/akcja8
do/akcja9
E3/akcja10

E1/akcja4


Wyszukiwarka

Podobne podstrony:
7 Diagram stanow id 44859 Nieznany (2)
Instruktaz stanowiskowy id 2176 Nieznany
maszyny robocze id 282076 Nieznany
IMW W02 analiza stanow id 21233 Nieznany
odp maszyny s1e2 id 281879 Nieznany
W14 Diagram maszyny stanów
Diagram fazowy Gibbsa id 135431 Nieznany
maszyny stalego2 id 282082 Nieznany
Diagnostyka obrazowa HCC id 135 Nieznany
calosc maszyny pomoc id 107377 Nieznany
maszyna Turinga id 281783 Nieznany
diagnostyka sem 2 calosc id 135 Nieznany
maszyny docx id 281860 Nieznany
Maszyny I zaliczenia id 282004 Nieznany
Diagram maszyny stanów
9(45) Diagram maszyny stanów
maszyny elektryczne 7 id 281886 Nieznany
Maszyny zaoczne id 282101 Nieznany

więcej podobnych podstron