- validastate - validação de diagrama de máquina de estados uml aretuza amin de miranda alves...
TRANSCRIPT
- 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
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
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: &
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
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
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)
Inconsistência de modelos
Consistência
Inconsistência
Inconsistência de modelos
Defeitos em um modelo UML podem afetar o resultado do software mediante o cliente.
Custo
Prazo
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
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
Análise de ferramentas de modelagem UML
Análise de ferramentas de modelagem UML
Análise de ferramentas de modelagem UML
Análise de ferramentas de modelagem UML
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.
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.
ValidaState
XMI ValidaState
Resultado da execução do ValidaState
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.
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.
ValidaState - Execução
ValidaState - Execução
ValidaState - Execução
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.
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) .
ValidaState
http://code.google.com/p/aretuza/
http://code.google.com/p/monografiavalidastate/