Maquinas de Estado

Maquinas de Estado

(Parte 1 de 4)

Máquinas de Estado

Disciplina: Verificação de Software

Professora: Patrícia Machado Aluno: Daniel Aguiar

Roteiro

● Motivação ●Máquinas de estado e Diagramas de Transição

●O modelo FREE

●Projeto de teste baseado em estado

●Escolhendo a estratégia

Motivação

●O encapsulamento de atributos e métodos é fundamental para OO

●Interações resultantes, dependências e restrições de seqüências de mensagens formam o comportamento de uma classe

●Combinação do número de seqüências de mensagens e variáveis é muito grande, sendo obstáculo na representação de estados

●Máquinas de estados provêem um modo compacto para tal representação

●São então apropriadas para design e teste de comportamentos complexos

Máquina de Estado

●É um sistema cuja saída é determinada por entradas passadas e corrente

●O efeito de entradas anteriores é representado por um estado

●É uma abstração composta por eventos (entradas), estados e ações (saídas)

●Modela sistemas seqüenciais

●Foram aplicadas para design de software a partir da década de 60

●Foram incorporadas pela UML

Diagramas de Transição de Estados

●Representação gráfica de máquinas de estado

●Nós representam estados e arcos (direcionados) representam transições

●Rótulos nos arcos representam eventos e ações

Diagramas de Transição de Estados Diagramas de Transição de Estados

Diagramas de Transição de Estados Diagramas de Transição de Estados

Diagramas de Transição de Estados

● Transições guardadas

–Condições podem ser expressas através de guardas nas transições

–Uma transição guardada não pode disparar até que:

●O sistema esteja no estado de aceitação p/ a transição ●O evento a ser avaliado pela guarda ocorra

●O predicado da guarda possua valor verdade “true”

Mealy e Moore

●São as duas principais variantes de modelos de estados

● Mealy

–Uma transição pode ter uma ação de saída e qualquer ação de saída pode ser usada em mais de uma transição

–Ações de saída não são associadas a estados, que são passivos

–Neste caso as ações de saída podem ser associadas a mais de um estado

–Representa a evolução de estados, numa seqüência

Mealy e Moore Mealy e Moore

Mealy e Moore

● Moore

–Transições não possuem uma ação de saída

–Uma ação de saída está associada a um estado, que neste caso é ativo. O estado produz a ação de saída.

–Ou seja, cada par único ação/estado é representado através de um estado

–Utilizado p/ representar estados observáveis eternamente

–Produz modelos maiores que o de mealy

Mealy e Moore Mealy e Moore

Limitações do Modelo

(Parte 1 de 4)

Comentários