Diagramy stanów i diagramy aktywności

Download Report

Transcript Diagramy stanów i diagramy aktywności

Jarosław Kuchta
Dokumentacja i Jakość Oprogramowania
Diagramy stanów i
diagramy aktywności
[email protected]
[email protected]
Pojęcia podstawowe (1/3)


behawioryzm – ogół zachowania obiektów,
reakcje obiektów na zdarzenia.
stan – sytuacja w czasie życia obiektu, w którym
spełniony jest pewien warunek, wykonywana jest
pewna aktywność lub obiekt czeka na pewne
zdarzenie.
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
2
Pojęcia podstawowe (2/3)


akcja – wykonanie operacji w niepodzielnym na
danym poziomie abstrakcji momencie czasu.
aktywność – wykonywanie operacji przez
obiekt w czasie, gdy znajduje się on w
określonym stanie. Zakończenie aktywności jest
wyznaczane przez zdarzenie zewnętrzne
względem danej aktywności lub wewnętrzne.
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
3
Pojęcia podstawowe (3/3)


przejście stanów – zmiana stanu wywołana
określonym zdarzeniem, uzależniona od
warunku strzegącego, powiązana z wykonywaną
podczas przejścia akcją.
maszyna stanów – abstrakcyjna maszyna
reprezentowana przez zbiór stanów, przez które
obiekt przechodzi w czasie, powiązanych
przejściami stanów. Prezentowana przez diagram
przejść stanów.
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
4
Elementy diagramu stanów
sygnatura przejścia (zdarzenie)
przejście stanów
Włącz
●
stan
początkowy
Wyłączone
Włączone
Zamknij
stan
Wyłącz
◉
stan
końcowy
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
5
Opis przejścia
sygnatura zdarzenia [warunek strzegący]
/ wyrażenie akcji
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
6
Rodzaje zdarzeń




Zdarzenie wywołania
Zdarzenie sygnałowe
Zdarzenie zmiany
Zdarzenie czasowe
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
7
Zdarzenie wywołania

Zdarzenie polegające na wywołaniu operacji
nazwa operacji (lista parametrów)
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
8
Zdarzenie sygnałowe
«signal»
Mouse
pos: Point
«signal»
«signal»
«signal»
«signal»
MouseDown
MouseUp
MouseMove
MouseRoll
btn: Button
Dokumentacja i Jakość
Oprogramowania
btn: Button
Diagramy stanów i diagramy aktywności
dist: Point
9
Zdarzenie zmiany

oznacza wystąpienie sytuacji, w której warunek
zostaje spełniony
when wyrażenie logiczne
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
10
Zdarzenie czasowe


upłynięcie określonego czasu od określonego
innego zdarzenia (najczęściej momentu wejścia
w dany stan):
after wyrażenie czasowe
wystąpienie określonego czasu:
when wyrażenie czasowe
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
11
Wyrażenie strzegące

wyrażenie logiczne, w którym występują:
parametry zdarzenia wyzwalającego
 atrybuty i powiązania obiektu – właściciela maszyny
stanów
 może występować test stanu (in nazwa stanu)


wyrażenie strzegące jest sprawdzane po
wystąpieniu zdarzenia, a przed „odpaleniem”
(firing) przejścia
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
12
Wyrażenie akcji



Ciąg operacji oddzielonych średnikami
Operacje są wykonywane sekwencyjnie.
Rozpoczęcie następnej po zakończeniu
poprzedniej.
Mogą występować parametry zdarzenia.
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
13
Przykład przejścia
MouseDown (btn, loc) [loc in Window]
/ object := Window.FindObject (loc); object.Select ()
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
14
Akcje wejściowe i wyjściowe



Transakcja
entry/ połącz z bazą danych
exit/ rozłącz z bazą danych
do/ przekazuj dane
stan/ podaj stan
Dokumentacja i Jakość
Oprogramowania


entry/ akcja wejściowa
exit/ akcja wyjściowa
do/ aktywność
include/ wewnętrzna maszyna
stanów
zdarzenie/ akcja wewnętrzna
Diagramy stanów i diagramy aktywności
15
Stany złożone


podstany rozłączne (sekwencyjne)
podstany równoległe
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
16
Podstany rozłączne
Wybieranie numeru
Numer kierunkowy
●
Oczekiwanie
Cyfra (n)
[n=0]
entry / Włącz sygnał centrali
exit / Wyłącz sygnał centrali
Błąd
entry / Włącz sygnał błędu
exit / Wyłącz sygnał błędu
◉
Numer kompletny
Cyfra (n) [n≠0]
Numer lokalny
entry / Akceptuj Cyfrę (n)
do / Sprawdź numer
Cyfra (n)/ Akceptuj Cyfrę (n)
Numer błędny
Błąd
entry / Akceptuj Cyfrę (n)
do / Sprawdź numer
Cyfra (n)/ Akceptuj Cyfrę (n)
Błąd
Numer zdalny
entry / Akceptuj Cyfrę (n)
do / Sprawdź numer
Cyfra (n)/ Akceptuj Cyfrę (n)
Numer kompletny
Numer kompletny
◉
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
17
Stany równoległe
Diagnostyka
Diagnostyka w toku
●
●
Diagnostyka
Układu1
Fail
●
Diagnostyka
Układu3
Fail
Dokumentacja i Jakość
Oprogramowania
Pass
◉
Diagnostyka Pass
Układu2
Fail
Pass
◉
Diagnostyka Pass
Układu4
Passed
Failed
Fail
Diagramy stanów i diagramy aktywności
18
Synchronizacja stanów
równoległych
Stan A1
Stan A2
Inicjalizacja
Finalizacja
Stan B1
Stan B2
belka synchronizacji
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
19
Diagramy aktywności

Specjalna postać diagramu stanów, w którym:
stany reprezentują wykonanie akcji lub
podaktywności
 przejścia stanów są wyzwalane przez zakończenie
akcji lub podaktywności

Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
20
Przykład diagramu aktywności
[operacja = Podaj saldo]
●
Wprowadzanie
PIN’u
Wybór
operacji
Podanie
salda
[operacja = Wypłać]
[operacja = Zakończ]
◉
Wprowadzenie
kwoty
Sprawdzenie
salda
Czy saldo wystarczające?
[nie]
[tak]
Odliczanie kwoty
Drukowanie
potwierdzenia
Odbiór kwoty
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
21
Literatura


Booch G, Rumbaugh J, Jacobson I: UML.
Przewodnik użytkownika, WNT, Warszawa 2002
Dennis A., Haley Wixom B., Tegarden D.: System
Analysis & Design. An Object-Oriented Approach
with UML, John Wiley & Sons, Inc., USA 2001
Dokumentacja i Jakość
Oprogramowania
Diagramy stanów i diagramy aktywności
22