- ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves...

26
- ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006

Transcript of - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves...

Page 1: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

- ValidaState -Validação de Diagrama de Máquina de Estados UML

Aretuza Amin de Miranda Alves

Orientador: Alan Kelon Oliveira de Moraes

Novembro / 2006

Page 2: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Itens

* Apresentação do papel do Diagrama de Máquina de Estados no contexto da UML e o reflexo da inconsistência deste diagrama em um projeto de desenvolvimento de software

* Apresentação de análise de ferramentas de modelagem de software descrevendo as elaborações de Diagramas de Máquina de Estados

* Apresentação do ValidaState no contexto da validação de um Diagrama de Máquina de Estados

Page 3: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Engenharia de Software

Requisitos de SoftwareProjeto (Design) de Software

Construção de SoftwareTeste de SoftwareManutenção de SoftwareGerência de Configuração de SoftwareGerência de Engenharia de SoftwareProcessos de Engenharia de SoftwareFerramentas e Métodos de Engenharia de SoftwareQualidade de Software

Page 4: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Projeto (Design) de Software

“Mais vale uma imagem do que mil palavras”

Amizade:

[Do lat. vulg. *amicitate.]S. f. 1. Sentimento fiel de afeição, simpatia, estima ou ternura entre pessoas que geralmente não são ligadas por laços de família ou por atração sexual: 2 2. Estima, simpatia ou camaradagem entre grupos ou entidades: 2 3. Pessoa amiga; amigo: 2 4. Vinculação de caráter exclusivamente social; relações: 2 [M. us. no pl.] 5. Mancebia, concubinato; amasio. 6. Entendimento, fraternidade: 2 7. Benevolência, bondade: 2 8. Dedicação de certos animais ao homem: 2 9. Bras. Pop. F. de tratamento: meu amigo, meu chapa; nossa-amizade: &

Amizade colorida. Bras.

1. Relacionamento íntimo, amoroso, sem compromisso social: &

Page 5: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Projeto (Design) de Software

Modelos de representação visual do sistema: UML

* Início : 1994 (Booch, Rumbaugh e Jacobson)* Propósito: possibilitar a comunicação entre as pessoas, documentar o sistema e testar* Versão atual: 2.0

Diagramas UML

* Propósito: apresentar de forma gráfica o funcionamento do sistema

Page 6: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Diagramas UML

Diagrama de Caso de UsoDiagrama de ClassesDiagrama de ObjetosDiagrama de Estrutura CompostaDiagrama de SequênciaDiagrama de Comunicação

Diagrama de Máquina de EstadoDiagrama de AtividadesDiagrama de Integração GeralDiagrama de ComponentesDiagrama de ImplantaçãoDiagrama de Pacotes

Page 7: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Contribuição ao Open Source

Diagramas –> facilidade de desenvolvimento distribuído

Projeto Apache – pouca documentação e inexistência de modelos visuais para descrever o software. Apenas 12 pessoas no core team(a existência da modelagem do sistema –> poderia facilitar o ingresso de novos integrantes levando a uma maior contribuição no desenvolvimento do servidor Apache)

Page 8: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Inconsistência de modelos

Consistência

Inconsistência

Page 9: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Inconsistência de modelos

Defeitos em um modelo UML podem afetar o resultado do software mediante o cliente.

Custo

Prazo

Page 10: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Diagrama de Máquina de Estado

* Apresenta o comportamento de um elemento (objeto) através de um conjunto de transições de estado.

* É composto obrigatoriamente por elementos formadores:

Estado InicialEstado FinalEstado(s) Transições entre os estados

Page 11: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Análise de ferramentas de modelagem UML

* ArgoUML* Gentleware Poseidon for UML * Omondo EclipseUML * IBM Rational Software Modeler * IBM Rational Software Architect* Borland Together Architect * Borland Together Designer * Magicdraw

Page 12: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Análise de ferramentas de modelagem UML

Page 13: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Análise de ferramentas de modelagem UML

Page 14: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Análise de ferramentas de modelagem UML

Page 15: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Análise de ferramentas de modelagem UML

Page 16: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState - Proposta

A proposta deste trabalho é o desenvolvimento de um aplicativo que realize a validação de um Diagrama de Máquina de Estados, visando um melhor aproveitamento do tempo de análise e projeto do sistema.

Page 17: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState

Será utilizado como fonte da análise da validação do Diagrama de Máquina de Estados um arquivo XMI (XML Metadata Interchange), que é um padrão para codificação de metadados de ferramentas orientadas a objetos.

Page 18: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState

XMI ValidaState

Resultado da execução do ValidaState

Page 19: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState

São características consideradas válidas pelo ValidaState:

* Deve existir um estado inicial

* Deve existir ao menos um estado final

* Deve existir ao menos um estado

* Devem existir transições entre os estados

considerando-se as particularidades de cada

estado.

Page 20: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState

Especificações técnicas:

* Aplicativo desenvolvido na linguagem Java,

portanto multiplataforma na versão 1.5.0 ou

superior.

* Interface atual através da linha de comando.

* Ferramenta utilizada para a geração dos

arquivos XMI:

ArgoUML versão 0.20.

Page 21: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState - Execução

Page 22: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState - Execução

Page 23: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

ValidaState - Execução

Page 24: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Conclusão

Há indícios de que haja uma maior consistência nos dados componentes dos Diagramas de Máquina de Estados submetidos ao ValidaState, o que pode ter como resultado o ganho de produtividade e integridade dos dados validados e encaminhados para desenvolvimento.

Page 25: - ValidaState - Validação de Diagrama de Máquina de Estados UML Aretuza Amin de Miranda Alves Orientador: Alan Kelon Oliveira de Moraes Novembro / 2006.

Trabalhos futuros

* Unificação do ValidaState para os arquivos XMI gerados por outras ferramentas de modelagem.

* Expansão da validação dos Diagramas de Máquina de

Estados.

* Utilização da OCL (Object Constraint Language) .