Fuzzy Software Analyzer (FSA): Uma Nova Abordagem para Interpretação de Repositórios de Versionamento de Código-fonte

Banca de DEFESA: JOÃO ALBERTO CASTELO BRANCO OLIVEIRA

Uma banca de DEFESA de MESTRADO foi cadastrada pelo programa.

DISCENTE : JOÃO ALBERTO CASTELO BRANCO OLIVEIRA

DATA : 31/10/2019

HORA: 09:00

LOCAL: IME - Sala 14

TÍTULO:

Fuzzy Software Analyzer (FSA): Uma nova abordagem para interpretação de repositórios de versionamento de código-fonte



PALAVRAS-CHAVES:

Aprendizado de Máquina, Mineração de Software, Sistemas Fuzzy



PÁGINAS: 112

RESUMO:

O uso de métricas de software é uma importante etapa no processo de desenvolvimento de códigos, permitindo gerenciar projetos com maior qualidade por meio da quantificação de diferentes características que podem impactar, por exemplo, no custo do projeto e no planejamento das atividades necessárias em cada fase de execução. De maneira geral, essas métricas podem ser divididas em diretas e indiretas. Medidas diretas, amplamente utilizadas no desenvolvimento e na manutenção do software são essencialmente extraídas dos códigos-fonte como, por exemplo, o número de linhas escritas e o total de erros coletados em um determinado instante de tempo. As medidas indiretas, por outro lado, são obtidas a partir de uma interpretação do projeto, podendo incluir métricas diretas, a fim de avaliar a qualidade e a funcionalidade do software desenvolvido. Essas medidas foram desenvolvidas para serem aplicadas de maneira geral sobre diferentes projetos de software. Entretanto, a interpretação dessas métricas depende da experiência do gerente responsável pelo projeto (especialista de domínio) e deve considerar características específicas que estão relacionadas à equipe de desenvolvedores. Neste projeto de mestrado, utilizou-se técnicas de extração de características e padrões temporais em repositórios de versionamento de código-fonte visando: i) auxiliar o especialista na interpretação das \textit{releases}, principalmente ao trabalhar com grandes volumes de códigos-fonte; ii) a partir da interpretação das \textit{releases}, o especialista poderá melhorar a qualidade do código-fonte e do software em si; iii) monitorar a evolução do software à medida que novas \textit{releases} são submetidas aos repositórios. Para alcançar esses objetivos, uma nova abordagem foi desenvolvida, chamada \textit{Fuzzy Software Analyzer} (FSA), a qual permite organizar automaticamente \textit{releases} em repositórios de versionamento de código-fonte e, consequentemente, auxiliar especialistas de engenharia de software em interpretações de código-fonte mesmo sem grandes conhecimentos prévios do software produzido. A abordagem proposta foi validada ao analisar o repositório \textit{Linux Test Project}, comprovando sua utilidade e aplicabilidade em grandes repositórios de versionamento de código-fonte.



MEMBROS DA BANCA:

Presidente - 2130353 - RICARDO ARAUJO RIOS

Interno - 2115505 - TATIANE NOGUEIRA RIOS

Interno - 1710389 - CLAUDIO NOGUEIRA SANT ANNA

Externo ao Programa - 2199115 - CRISTIANO HORA DE OLIVEIRA FONTES

Data da Defesa: 
31/10/2019 - 09:00
Tipo de Defesa: 
Defesa de Mestrado