Aplicação de CNN e LLM na Localização de Defeitos de Software
| dc.contributor.advisor1 | Camilo Júnior, Celso Gonçalves | |
| dc.contributor.advisor1Lattes | http://lattes.cnpq.br/6776569904919279 | |
| dc.contributor.referee1 | Camilo Junior, Celso Gonçalves | |
| dc.contributor.referee2 | Leitão Júnior , Plínio de Sá | |
| dc.contributor.referee3 | Oliveira, Sávio Salvarino Teles de | |
| dc.contributor.referee4 | Vincenzi, Auri Marcelo Rizzo | |
| dc.contributor.referee5 | Souza, Jerffeson Teixeira de | |
| dc.creator | Basílio Neto, Altino Dantas | |
| dc.creator.Lattes | http://lattes.cnpq.br/9728564907445828 | |
| dc.date.accessioned | 2025-01-23T12:30:58Z | |
| dc.date.available | 2025-01-23T12:30:58Z | |
| dc.date.issued | 2024-10-16 | |
| dc.description.abstract | The increase in the quantity or complexity of computational systems has led to a growth in the occurrence of software defects. The industry invests significant amounts in code debugging, and a considerable portion of the cost is associated with the task of locating the element responsible for the defect. Automated techniques for fault localization have been widely explored, with recent advances driven by the use of deep learning models that combine different types of information about defective source code. However, the accuracy of these techniques still has room for improvement, suggesting open challenges in the field. This work aims to formalize and investigate the most impactful aspects of fault localization techniques, proposing a framework for characterizing approaches to the problem and two solution methodologies: a) based on convolutional neural networks (CNNs) and b) based on large language models (LLMs). From experimentation involving public datasets in Java and Python, it was demonstrated that CNNs are comparable to traditional methods but were found to be inferior to other methods in the literature. The LLM-based approach, on the other hand, greatly outperformed heuristics like Ochiai and Tarantula and proved competitive with more recent literature. An experiment in a scenario free from the data leakage problem showed that LLM-based approaches can be improved by combining them with the Ochiai heuristic. | eng |
| dc.description.resumo | O aumento na quantidade ou complexidade dos sistemas computacionais leva a um crescimento na ocorrência de defeitos em software. A indústria investe altas quantias na depuração de código e parte considerável do custo está associada à tarefa de localizar o elemento responsável pelo defeito. Técnicas automatizadas para a localização de defeitos são amplamente exploradas, com avanços recentes impulsionados pelo uso de modelos de aprendizado profundo que combinam diferentes informações sobre o código-fonte defeituoso. Contudo, a acurácia dessas técnicas ainda apresenta espaço para melhorias, sugerindo a existência de questões em aberto nesse campo. Este trabalho tem como objetivo formalizar e investigar os aspectos mais impactantes para técnicas de localização de defeitos, propondo um framework de caracterização de abordagens do problema e duas metodologias de solução: a) baseada em redes neurais convolucionais (CNNs) e b) baseada em modelos de linguagem de grande porte (LLMs). A partir de uma experimentação envolvendo conjuntos de dados públicos em linguagem Java e Python, demonstrou-se que as CNNs são capazes de se comparar com métodos tradicionais, porém se mostraram inferiores a outros métodos da literatura. Já a proposta baseada em LLM superou amplamente heurísticas como Ochiai e Tarantula e se mostrou competitiva com a literatura mais recente. Uma experimentação em cenário livre do problema de vazamento de dados mostrou que as abordagens baseadas em LLM podem ser aprimoradas pela combinação com a heurística Ochiai. | |
| dc.description.sponsorship | Fundação de Amparo à Pesquisa do Estado de Goiás | |
| dc.identifier.citation | Basílio Neto, Altino Dantas. Aplicação de CNN e LLM na Localização de Defeitos de Software. Goiânia, 2024. 178 f. Tese (Doutorado em Ciência da Computação) - Instituto de Informática, Universidade Federal de Goiás, Goiânia, 2024. | |
| dc.identifier.uri | http://repositorio.bc.ufg.br/tede/handle/tede/13794 | |
| dc.language | por | |
| dc.publisher | Universidade Federal de Goiás | |
| dc.publisher.country | Brasil | |
| dc.publisher.department | Instituto de Informática - INF (RMG) | |
| dc.publisher.initials | UFG | |
| dc.publisher.program | Programa de Pós-graduação em Ciência da Computação (INF) | |
| dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 International | en |
| dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/4.0/ | |
| dc.subject | Localização de defeitos | por |
| dc.subject | Redes Neurais Artificiais | por |
| dc.subject | Redes Neurais Convolucionais | por |
| dc.subject | Modelos de Linguagem de Grande Porte | por |
| dc.subject | Fault Localization | eng |
| dc.subject | Artificial Neural Network | eng |
| dc.subject | Convolutional Neural Networks | eng |
| dc.subject | Large Language Model | eng |
| dc.subject.cnpq | CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO | |
| dc.title | Aplicação de CNN e LLM na Localização de Defeitos de Software | |
| dc.title.alternative | Application of CNN and LLM in Software Fault Localization | eng |
| dc.type | Tese |