Estimating test execution effort based on test specifications - Henrique da Silva Aranha, Eduardo (2009)
Em mercados competitivos como, por exemplo, o de celulares, empresas de software que liberam produtos com baixa qualidade podem rapidamente perder os seus clientes. A fim de evitar esse problema, essas empresas devem garantir que a qualidade dos produtos atenda a expectativa de seus clientes. Nesse contexto, testes é uma das atividades mais utilizadas para se tentar melhorar a qualidade de um software. Além disso, o resultado da atividade de teste está sendo considerado tão importante que em muitos casos é preferível alocar equipes exclusivamente para exercer atividades de teste. Essas equipes de teste devem ser capazes de estimar o esforço exigido para exercer as suas atividades dentro do prazo ou para solicitar mais recursos ou negociar prazos quando necessário. Na prática, as consequências de se ter estimativas ruins são onerosas para a organização: redução de escopo, atraso nas entregas ou horas extras de trabalho. O impacto dessas consequências é ainda maior em se tratando de execução manual de testes. Visando uma melhor forma de estimar esforço de execução manual de casos de teste funcionais, esta pesquisa propõe e valida uma medida de tamanho de teste e de complexidade de execução baseada nas próprias especificações dos testes, bem como um método de medição para a métrica proposta. Além disso, diversos estudos de caso, survey e experimentos foram realizados para avaliar o impacto desse trabalho. Durante esses estudos, verificamos uma melhoria significativa proporcionada por nossa abordagem na precisão das estimativas de esforço de execução de testes manuais. Também identificamos fatores de custo relacionados a atividades de execução manual de testes utilizando julgamento de especialistas. O efeito desses fatores foram investigados através da execução de experimentos controlados, onde pudemos constatar que apenas alguns dos fatores identificados tiveram efeito significativo. Por fim, diversas ferramentas de suporte foram desenvolvidas durante essa pesquisa, incluindo a automação das estimativas de esforço de execução de testes a partir de especificações de testes escritas em linguagem natural