Uma contribuição para o teste de especificações SDL: aspectos teóricos e empíricos - Sugeta, Tatiana (2004)
Atividades sistemáticas e rigorosas no processo de desenvolvimento são fundamentais para a obtenção de produtos de software de qualidade, entre elas a utilização de técnicas formais. Apesar do rigor estabelecido pelo uso dessas técnicas nas fases iniciais de desenvolvimento, a qualidade da especificação pode não ser satisfatória. A condução de atividades de W&T Verificação, Validação e Teste, paralelamente às atividades de desenvolvimento, visa a assegurar a qualidade adequada a cada passo do processo. Este trabalho tem como objetivo contribuir para o teste de especificações SDL. SDL é uma técnica formal que surgiu da necessidade de se desenvolver uma linguagem padrão de especificação para a área de telecomunicações. Mais recentemente, SDL tem sido utilizada para a descrição de arquiteturas de software. Diversas técnicas têm sido propostas e utilizadas para garantir a qualidade de especificações SDL, como simulação e model checking; no entanto, não propiciam a análise quantitativa da atividade de validação, como por exemplo, a análise de cobertura, um dos aspectos fundamentais reconhecidos por diversos pesquisadores para avaliar a qualidade das atividades de teste e validação. Neste trabalho foram propostos critérios de teste baseados em fluxo de controle, em fluxo de dados e em mutação, além de estratégias de teste associadas para o teste dos processos de especificações SDL. Também foi definida uma família de critérios de fluxo de controle, FCCSDL, considerando o comportamento de todo o sistema, representado pela Arvore de Alcançabilidade para SDL proposta no escopo deste trabalho. Também foram definidas facilidades para a depuração de especificações SDL, com base nas informações de cobertura de teste. As ferramentas CATSDL e SmartDsDL foram desenvolvidas para apoiar as atividades de teste e depuração de especificações SDL. Com base no estudo de caso conduzido, foram fornecidas evidências da viabilidade da aplicação dos critérios de teste definidos e estabelecida uma estratégia de teste para guiar a atividade de teste de especificações SDL.