Evidências Empíricas sobre a Efetividade da SmellDSL para Especificar Anomalias de Código: Um Estudo Controlado e Perspectivas Futuras

Abstract

A presença de anomalias de código em sistemas de software frequentemente indica problemas arquiteturais, potencialmente resultando em degradação. Desenvolvedores usam heurísticas (por exemplo, encontradas no SonarQube) para identificá-las, ou as especificam manualmente, usando alguma linguagem, tais como a SmellDSL, uma linguagem específica de domínio que permite aos desenvolvedores especificar anomalias de código. Atualmente, as técnicas empregadas na identificação dessas anomalias se baseiam em heurísticas (por exemplo, Jdeodorant, Jspirit, SonarQube e PMD) ou especificações (por exemplo, SmellDSL). Enquanto as técnicas baseadas em heurísticas tenham tido uma maior atenção nos últimos anos, as baseadas em especificação têm sido negligenciadas. Consequentemente, desenvolvedores acabam usando tais abordagens sem quaisquer evidências empíricas. Este estudo, portanto, reporta um experimento controlado com o intuito de analisar a eficácia da SmellDSL. No total, 35 participantes executaram 8 tarefas experimentais, representando 280 cenários de avaliação considerando a corretude da especificação, taxa de erro e esforço de especificação. Os resultados, suportados por testes estatísticos, sugerem que a SmellDSL exigiu baixo esforço para especificar anomalias (menos que 15 minutos) e ajudou na especificação correta das anomalias. Além disso, a maioria dos participantes (77%) indicou facilidade na utilização da SmellDSL para especificar anomalias. Por fim, este estudo contribuiu com evidências empíricas que exploram melhor as capacidades da SmellDSL em cenários realísticos de especificação de anomalias. Tais evidências representam um primeiro passo em uma agenda mais ambiciosa de pesquisa.

Publication
Graduation Work, Computer Science, Universidade do Vale do Rio do Sinos (Unisinos), São Leopoldo, Brazil, December
Date