Geração evolucionária de heurísticas para localização de defeitos de software

dc.contributor.advisor-co1Camilo Júnior, Celso Gonçalves
dc.contributor.advisor-co1Latteshttp://lattes.cnpq.br/6776569904919279eng
dc.contributor.advisor1Leitão Júnior, Plínio de Sá
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/4480334653242457eng
dc.contributor.referee1Soares, Anderson da Silva
dc.contributor.referee2Vergilio, Silvia Regina
dc.creatorFreitas, Diogo Machado de
dc.creator.Latteshttp://lattes.cnpq.br/7696595776900598eng
dc.date.accessioned2018-10-30T13:41:38Z
dc.date.issued2018-09-24
dc.description.abstractFault Localization is one stage of the software life cycle, which demands important resources such as time and effort spent on a project. There are several initiatives towards the automation of the fault localization process and the reduction of the associated resources. Many techniques are based on heuristics that use information obtained (spectrum) from the execution of test cases, in order to measure the suspiciousness of each program element to be defective. Spectrum data generally refers to code coverage and test results (positive or negative). The present work presents two approaches based on the Genetic Programming algorithm for the problem of Fault Localization: a method to compose a new heuristic from a set of existing ones; and a method for constructing heuristics based on data from program mutation analysis. The innovative aspects of both methods refer to the joint investigation of: (i) specialization of heuristics for certain programs; (ii) application of an evolutionary approach to the generation of heuristics with non-linear equations; (iii) creation of heuristics based on the combination of traditional heuristics; (iv) use of coverage and mutation spectra extracted from the test activity; (v) analyzing and comparing the efficacy of methods that use coverage and mutation spectra for fault localization; and (vi) quality analysis of the mutation spectra as a data source for fault localization. The results have pointed to the competitiveness of both approaches in their contexts.eng
dc.description.resumoLocalização de Defeitos é uma etapa do ciclo de vida de software, que demanda recursos importantes tais como o tempo e o esforço gastos em um projeto. Existem diversas iniciativas na direção da automação do processo de localização de defeitos e da redução dos recursos associados. Muitas técnicas são baseadas heurísticas que utilizam informação obtida (espectro) a partir da execução de casos de teste, visando a medir a suspeita de cada elemento de programa para ser defeituoso. Os dados de espectro referem-se, em geral, à cobertura de código e aos resultados dos teste (positivo ou negativo). O presente trabalho apresenta duas abordagens baseadas no algoritmo Programação Genética para o problema de Localização de Defeitos: um método para compor automaticamente novas heurísticas a partir de um conjunto de heurísticas existentes; e um método para a construção de heurísticas baseadas em dados oriundos da análise de mutação de programas. Os aspectos inovadores de ambos os métodos referem-se à investigação conjunta de: (i) especialização de heurísticas para determinados programas; (ii) aplicação de abordagem evolutiva para a geração de heurísticas com equações não lineares; (iii) criação de heurísticas a partir da combinação de heurísticas tradicionais; (iv) uso de espectro de cobertura e de mutação extraídos da atividade de teste; (v) análise e comparação da eficácia de métodos que usam os espectros de cobertura e de mutação para a localização de defeitos; e (vi) análise da qualidade dos espectros de mutação como fonte de dados para a localização de defeitos. Os resultados apontaram competitividade de ambas as abordagens em seus contextos.eng
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESeng
dc.formatapplication/pdf*
dc.identifier.citationFREITAS, D. M. Geração evolucionária de heurísticas para localização de defeitos de software. 2018. 89 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Goiás, Goiânia, 2018.eng
dc.identifier.urihttp://repositorio.bc.ufg.br/tede/handle/tede/9010
dc.languageporeng
dc.publisherUniversidade Federal de Goiáseng
dc.publisher.countryBrasileng
dc.publisher.departmentInstituto de Informática - INF (RG)eng
dc.publisher.initialsUFGeng
dc.publisher.programPrograma de Pós-graduação em Ciência da Computação (INF)eng
dc.rightsAcesso Aberto
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/
dc.subjectLocalização de defeitos baseada em espectropor
dc.subjectLocalização de defeitos baseada em buscapor
dc.subjectEngenharia de software baseada em buscapor
dc.subjectProgramação genéticapor
dc.subjectMeta-heurísticas evolucionáriaspor
dc.subjectSpectrum-based fault localizationeng
dc.subjectSearch-based fault localizationeng
dc.subjectSearch-based software engineeringeng
dc.subjectGenetic programmingeng
dc.subjectEvolutionary metaheuristicseng
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOeng
dc.titleGeração evolucionária de heurísticas para localização de defeitos de softwareeng
dc.title.alternativeEvolutionary generation of heuristics for software fault localizationeng
dc.typeDissertaçãoeng

Arquivos

Pacote Original

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
Dissertação - Diogo Machado de Freitas - 2018.pdf
Tamanho:
1.41 MB
Formato:
Adobe Portable Document Format
Descrição:

Licença do Pacote

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
license.txt
Tamanho:
2.11 KB
Formato:
Item-specific license agreed upon to submission
Descrição: