Escolar Documentos
Profissional Documentos
Cultura Documentos
Análise
e
Modelação
de
Sistemas
Comportamento
baseado
em
mensagens
Modelação
3
Programa
ì Modelação
comportamental
ì Conceitos
de
estado,
transição
ì Máquinas
de
estado
ì Automátas
finitos
ì Máquinas
de
Moore
e
Mealy
ì Diagramas
de
transição
de
estado
em
UML
Modelação
4
Estado
ì Estado:
situação
numa
condição
invariável
durante
um
intervalo
de
tempo
t
ì Condições
invariavéis:
propriedades
sa;sfeitas
pelo
sistema
em
cada
estado
ì Está>co
ou
ì dinâmico
Modelação
5
Outros
tipos
ì Simples
ì Composto
ì Um
estado
composto
tem
estados
embebidos
que
podem
ser
sequenciais
ou
concorrentes
Modelação
6
Mais tipos…
ì Espera
(está>co)
ì O
objecto
está
simplesmente
a
espera
dum
evento
Modelação
7
O A
Modelação
8
Transições e entradas
origem
Modelação
9
Automátas
finitos
alfabeto
Modelação
10
Modelação
11
Modelação
12
Modelação
13
Modelação
14
ì O
ciclo
de
vida
completa-‐se
quando
se
chega
ao
seu
estado
final
Modelação
15
Estado
Inicial
Estado
Final
Modelação
Conceptual
Modeling
of
Informa7on
Systems
(chapter
13,
page
306)
16
ì Eventos
despoletam
transições
ì Detalhes
ì Informação:
Fornecidas
pelo
evento
ì Acções:
Despoletadas
pelo
evento
ì Guarda:
Condição
a
verificar
aquando
a
ocorrência
do
evento
Modelação
17
Transições
e
guardas
ì (…)
a
maioria
das
linguagens
de
modelação
conceptual
extendem
o
conceito
de
transição
incluíndo
guardas
[g] e
i f
Modelação
18
Modelação
19
[guarda] trigger/pós-‐condição
Pseudo-‐estados
ì Pseudo-‐estados:
Estados
abstractos
para
representar
o
início,
final,
ou
para
interconectar
outros
estados
do
diagrama.
ì
Em
UML:
Modelação
21
Pseudo-‐estados
II
ì Estado
Inicial:
Representa
o
primeiro
estado
que
ocorre
quando
se
entra
numa
máquina
de
estados.
ì Estado
Terminal/Final:
Representa
o
estado
final
de
uma
region
e
finaliza
a
execução
de
todos
os
estados
duma
dada
máquina
de
estados
ì História:
Especifica
que,
quando
se
sai
e
se
regressa
a
uma
máquina,
se
entra
no
estado
que
estava
ac;vo
na
altura
da
saída.
Modelação
22
Pseudo-‐estados
Modelação
23
Modelação
24
Modelação
25
Pseudostados (Fork/Join)
ì Join:
junta
várias
transições
sem
guarda
que
vêm
de
vários
estados
fonte
ì Fork:
separa
uma
transição
entrante
sem
guarda
em
duas
ou
mais
transições
Modelação
26
ì Ramificações
condicionadas
dinâmicas
porque
o
estado
final
só
é
conhecido
depois
que
as
operações
associadas
com
as
transições
de
entradas
são
calculadas
Modelação
27
“Statecharts”
Modelação
28
“Statecharts”
hlp://www.sparxsystems.com/uml_tool_guide/uml_dic;onary/statediagram.html
Modelação
29
StateCharts:
Exemplo
do
carro
de
aluguer
Modelação
30
StateCharts:
Exemplo
do
carro
de
aluguer
II
Detalhando
os
estados
Problema
desta
abordagem:
força
a
eliminar
a
conceptualização
de
alto
nível
do
estado
InUse
(perdendo
semântica)
Modelação
31
State
Charts:
Exemplo
do
Carro
de
Aluguer
III
Detalhando
os
estado
nos
statecharts
O
Estado
“InUse”
é
mantido,
enfatizando
o
seu
significado
i.e.
a
sua
semântica!!!
Modelação
32
Modelação
33
Estados e comportamentos
ì Comportamentos
ì entrada/…ac;on…
ì executar/…ac;on…
ì saída/…ac;on….
Modelação
34
Modelação
35
Outro exemplo
Modelação
36
1 Seleccionar uma classe e observar o ciclo de vida dos seus objectos
4 Pense no que fazem os objectos em resposta a cada evento
Modelação
37
Modelação
38
ì Exemplo:
ì Os
estados
de
um
carro
de
aluguer
seriam
respresentados
pelo
atributo
disponibilidade.
ì Os
valores
possíveis
são
os
estados
definidos
(disponível,
em
uso,
em
manutenção,
etc.)
Modelação