Aplicação de algoritmos de agrupamento para descoberta de padrões de defeito em software JavaScript - Macedo, Charles Mendes de (2018)
As aplicações desenvolvidas com a linguagem JavaScript, vêm aumentando a cada dia, não somente aquelas na web (client-side), como também as aplicações executadas no servidor (server-side) e em dispositivos móveis (mobile). Neste contexto, a existência de ferramentas para identicação de defeitos e code smells é fundamental, para auxiliar desenvolvedores durante a evoluçãp destas aplicações. A maioria dessas ferramentas utiliza uma lista de defeitos predenidos que são descobertos a partir da observação das melhores práticas de programação e a intuição do desenvolvedor. Para melhorar essas ferramentas, a descoberta automática de defeitos e code smells é importante, pois permite identicar quais ocorrem realmente na prática e de forma frequente. Uma ferramenta que implementa uma estratégia semiautomática para descobrir padrões de defeitos através de agrupamentos das mudanças realizadas no decorrer do desenvolvimento do projeto é a ferramenta BugAID. O objetivo deste trabalho é contribuir nessa ferramenta estendendo-a com melhorias na abordagem da extração de características, as quais são usadas pelos algoritmos de clusterização. O módulo estendido encarregado da extração de características é chamado de BugAIDExtract+ +. Além disso, neste trabalho é realizada uma avaliação de vários algoritmos de clusterização na descoberta dos padrõs de defeitos em software JavaScript