Sunteți pe pagina 1din 13

Anlise e Projeto de Sistemas OO

Diagrama de Mquina de Estados


Demonstra o comportamento de um
elemento atravs de um conjunto de
transies de estado.
Um Estado representa a situao em que
um objeto se encontra em um determinado
momento durante o perodo em que esse
participa de um processo.

Objetivos
Usado para analisar comportamento de objetos
de uma classe
Mostra os estados que os objetos podem assumir
e os eventos das transies de um estado para
outro
Exibe as aes decorrentes dos eventos
Apresentam as seqncias de estados que um
objeto assume em sua existncia em resposta a
estmulos recebidos
Complemento das descries estticas de classes

Diagrama de Mquina de Estados


Dizemos que um estado descreve o conjunto de
valores dos atributos de um objeto
Modificao do valor de um atributo muda o
estado desse objeto
A criao ou destruio de objetos muda o estado
do sistema.
Um estado descreve uma operao que o sistema
ou um objeto esta executando, portanto chamar
uma operao ou enviar um sinal vo, tambm,
mudar o estado do sistema e de alguns objetos.

Diagrama de Mquina de Estados


Recomenda-se
que s se construam
Diagramas de Grfico de Estados quando se
existir um certo grau
de complexidade
referente a Transio de Estados de um dos
objetos
envolvidos
no
processo

Caractersticas dos Objetos


Objetos de uma classe possuem um "ciclo de vida"
v
v
v
v

So gerados
Assumem posies (estados)
Do origem a outros objetos
Deixam de existir (so destrudos)

O estudo dos diferentes estados de um objeto de


uma classe e das transies entre estes estados
permite o levantamento de servios adicionais a
serem incorporados na classe

Estados
Um objeto pode passar por diversos estados dentro
de um processo.
Um estado pode demonstrar:
v
v
v
v
v

a espera pela ocorrncia de um evento


a reao a um estmulo
a execuo de alguma atividade ou
a satisfao de alguma condio.
Ex:

Estados
Segunda diviso do retngulo pode armazenar
trs clusulas:
v
v
v
v

Entry: representa as aes realizadas no momento


em que o objeto assume o Estado em questo;
Exit: identifica as aes executadas antes do objeto
mudar de Estado;
Do: ilustra as atividades executadas enquanto o
objeto se encontra em um determinado Estado.
Ex:

Estados Inicial e Final


Inicial: utilizado para representar o incio da
modelagem de estados de um objeto,
representado por um crculo preenchido.
Final: utilizado para representar o fim dos
estados modelados, representado por um
crculo preenchido envolvido por outro crculo
no preenchido.

Estados Inicial e Final

Exemplo

Transies
Uma transio representa um evento que causa
uma mudana no Estado de um objeto, gerando
um novo Estado (evento de ativao).
Transies podem possuir condies de guarda e
descries, se isto for considerado necessrio.
Arco que liga dois estados:
estado origem -> estado destino
v
v
v

Evento - Provoca a transio de estado.


Guarda - Condio que restringe a ocorrncia da
transio.
Ao - Operao decorrente da transio de estado.

Transies
Ex:

Eventos
Ocorrncia que deve ser reconhecida e gerar
uma reao pelo sistema em estudo.
A ocorrncia de um evento provoca a
transio entre estados de instncias de
alguma classe pertencente ao sistema

Guarda e Ao
A guarda uma expresso que resulta em um
valor booleano.
representada entre colchtes [expresso].
A ao representada pela invocao de uma
operao:
operacao(parametros)
precedida por uma barra inclinada ou um acento
circunflexo

Auto-Transies
Transies Internas ocorrem durante o
estado de um objeto sem modific-lo
As Auto-Transies saem do Estado Atual
do objeto, podendo executar alguma ao
quando dessa sada e retornam ao
mesmo estado.

Exemplo Auto-Transio

Exemplo de Diagrama de Estado


Pedido de Compra

Regras para modelagem


Como escolher o objeto e seu atributo para
descrever em um diagrama de estado?
v
v

Preciso conhecer melhor o comportamento deste


objeto.
Descobrir o atributo de estado

Um diagrama de estado ideal para modelar


objeto que tenha atributo que possua 2
caractersticas:
v
v

Atributo que possua poucos valores


Atributo que possua restries bem definidas nas
transies entre estes valores

Exemplo
Class ItemDeVenda
v
v

Atributos: precoDeVenda:Dinheiro
estadoDeInspecaoCorrente:EstadoDeInspecao

precoDeVenda
v
v

Um nmero grande de possveis valores


No existe restries para mudana de seus valores

estadoDeInspecaoCorrente
v
v

Um nmero pequeno de possveis valores (Recebido,


Inspecionando, Aceito e Rejeitado)
Mudanas de valor no so diretas. No passa de
Recebido para Aceito sem antes passar por
Inspecionando.

Exemplo

Pseudo-Estado de Escolha ou
Estado de Ponto de Escolha dinmico
Representa um ponto na transio de
estados de um objeto em que deve ser
tomada uma deciso, a partir da qual um
determinado estado ser ou no gerado.

Pseudo-Estado de Escolha

Exemplo

Barra Sincronizao
Utilizada quando da ocorrncias de estados
paralelos,
causados
por
transies
concorrentes.

S-ar putea să vă placă și