Everest : uma ferramenta para verificação de conformidade e geração de testes para modelos reativos
Arquivos
Data
Autores
Gomes, Camila Sonoda
Título da Revista
ISSN da Revista
Título de Volume
Editor
Resumo
Resumo: O processo de desenvolvimento de software é composto de várias etapas Uma importante etapa neste processo é o teste de software, essencial para a entrega de um produto com qualidade Nesta etapa, a aplicação de métodos formais tem se mostrado bastante promissora, em especial no desenvolvimento de sistemas reativos, caracterizados pela constante interação com o ambiente Muitos sistemas reativos são também de natureza crítica onde a precisão é um fator importante e quando não atendida pode causar danos irreparáveis O teste baseado em modelo tem sido amplamente empregado em sistemas reativos, tanto na geração de conjuntos de teste quanto na verificação de conformidade entre implementações candidatas e suas respectivas especificações, modeladas por Input/Output Labeled Transition Systems (IOLTSs) A verificação de conformidade permite detectar se o comportamento de uma implementação está de acordo com o comportamento modelado pela sua especificação Já a geração de testes tem como objetivo construir conjuntos de teste para que as falhas, definidas de acordo com um domínio específico, sejam encontradas em implementações candidatas Neste trabalho foi desenvolvida uma ferramenta de verificação de conformidade para modelos IOLTS, bem como a geração de conjuntos completos de teste para tais modelos reativos A ferramenta suporta uma noção de conformidade mais geral baseada em linguagens regulares para especificar os comportamentos desejáveis e indesejáveis de uma implementação Além de permitir uma verificação de conformidade mais geral, a ferramenta oferece também o Input Output Conformance Testing (ioco) O desenvolvimento da ferramenta compreendeu tanto o projeto conceitual dos algoritmos e das estruturas dados necessárias, quanto a análise e o projeto de desenvolvimento prático da ferramenta Estudos de caso foram descritos a fim de apresentar as funcionalidades da ferramenta Um estudo comparativo e experimentos práticos também foram contemplados no trabalho de forma a destacar algumas vantagens da ferramenta desenvolvida em relação às ferramentas similares existentes na literatura
Descrição
Palavras-chave
Computação, Software, Desenvolvimento, Sistemas reativos (Computação), Sistemas de transição rotulada de entrada e saída, Computer science, Computer software, Reactive systems (Computer science), Input/Output Labeled Transition Systems, Development