Codice-Unio: uma abordagem integrada de métodos para detecção e inserção de padrões de projeto em código-fonte usando agentes

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Pacher, Thyago Henrique lattes
Orientador(a): Matos, Simone Nasser lattes
Banca de defesa: Alves, Gleifer Vaz lattes, Souza, Simone do Rocio Senger de lattes, Matos, Simone Nasser lattes
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Tecnológica Federal do Paraná
Ponta Grossa
Programa de Pós-Graduação: Programa de Pós-Graduação em Ciência da Computação
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: http://repositorio.utfpr.edu.br/jspui/handle/1/5229
Resumo: O processo de refatoração garante uma qualidade maior no código-fonte aumentando a sua manutenibilidade, confiabilidade e flexibilidade. De acordo com a literatura cerca de 70% do custo do software é para manutenção e isto pode ser diminuído usando técnicas que permitem aumentar a qualidade do código-fonte tal como a refatoração baseada em padrões de projetos. Constatou-se por meio de um mapeamento sistemático que os trabalhos na literatura de detecção e inserção de padrões de projeto não são realizados de forma autônoma. Este trabalho criou a abordagem Codice-Unio para detectar pontos de inserção e aplicar padrões de projeto com agentes usando a arquitetura de Belief-Desire-Intention (BDI). A abordagem contempla em um mesmo ambiente três métodos da literatura capazes de detectar e aplicar padrões de projeto em código-fonte escrito em linguagem Java. A fim de comparar o processo de refatoração antes e depois da aplicação do padrão de projeto foi contemplado na abordagem a avaliação de métricas relacionadas aos atributos de qualidade tais como manutenibilidade, reusabilidade e confiabilidade. A Codice-Unio foi implementada em um framework para agentes que suporta a arquitetura BDI e usou ferramentas específicas para leitura de código e avaliação dos atributos de qualidade. A abordagem foi avaliada com cenários de testes providos pelos métodos da literatura e posteriormente por projetos open-source encontrados na web via GitHub. Como resultado, a Codice-Unio é capaz de identificar e aplicar padrões de projeto em classes candidatas automaticamente em cerca de aproximadamente 97% dos projetos que foram submetidos ao experimento.