Uma Revisão de Modelos e Algoritmos de Otimização para a Área de Teste de Software
Otimização, meta-heurísticas, teste de software
A área denominada de Engenharia de Software Baseada em Pesquisa (Search Based Software Engineering) vem crescendo nas últimas décadas e possui um grande número de trabalhos dedicados a ela. Esta área reúne a Engenharia de Software e a Otimização no desenvolvimento de algoritmos que otimizem os custos de atividades inerentes ao processo do desenvolvimento de software. Dentre tais atividades está o teste de software, a qual visa verificar, detectar e corrigir possíveis erros cometidos pelos programadores. Uma vez que esta atividade é responsável por até 50% do custo total do desenvolvimento, os pesquisadores buscam minimizar o custo dos testes sem comprometer a qualidade do software. Os primeiros trabalhos abordando atividades de Teste de Software como problemas de otimização surgiram na década de 70. Este trabalho tem por objetivo realizar uma revisão do estado-da-arte das técnicas e algoritmos de otimização desenvolvidos para teste de software. Este trabalho estende um trabalho anterior com a revisão de 415 artigos da área. É, também, apresentada uma classificação de tais trabalhos quanto aos tipos de métricas, algoritmos de otimização e outras características dos problemas inerentes ao teste de software.