Geração evolucionária de heurísticas para localização de defeitos de software
Main Author: | |
---|---|
Publication Date: | 2018 |
Format: | Master thesis |
Language: | por |
Source: | Repositório Institucional da UFG |
dARK ID: | ark:/38995/001300000x2f5 |
Download full: | http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
Summary: | Localizaçã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. |
id |
UFG-2_e07788e8dc94e24123c19899164679b5 |
---|---|
oai_identifier_str |
oai:null:tede/9010 |
network_acronym_str |
UFG-2 |
network_name_str |
Repositório Institucional da UFG |
repository_id_str |
oai:repositorio.bc.ufg.br:tede/1234 |
spelling |
Geração evolucionária de heurísticas para localização de defeitos de softwareEvolutionary generation of heuristics for software fault localizationLocalização de defeitos baseada em espectroLocalização de defeitos baseada em buscaEngenharia de software baseada em buscaProgramação genéticaMeta-heurísticas evolucionáriasSpectrum-based fault localizationSearch-based fault localizationSearch-based software engineeringGenetic programmingEvolutionary metaheuristicsCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOLocalizaçã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.Fault 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.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESUniversidade Federal de GoiásInstituto de Informática - INF (RG)BrasilUFGPrograma de Pós-graduação em Ciência da Computação (INF)Leitão Júnior, Plínio de Sáhttp://lattes.cnpq.br/4480334653242457Camilo Júnior, Celso Gonçalveshttp://lattes.cnpq.br/6776569904919279Soares, Anderson da SilvaVergilio, Silvia ReginaFreitas, Diogo Machado de2018-10-30T13:41:38Z2018-09-24info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfapplication/pdfFREITAS, 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.http://repositorio.bc.ufg.br/tede/handle/tede/9010ark:/38995/001300000x2f5porhttp://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFGinstname:Universidade Federal de Goiás (UFG)instacron:UFG2018-10-30T13:41:38Zoai:null:tede/9010Repositório InstitucionalPUBhttps://repositorio.bc.ufg.br/tedeserver/oai/requestgrt.bc@ufg.bropendoar:oai:repositorio.bc.ufg.br:tede/12342018-10-30T13:41:38Repositório Institucional da UFG - Universidade Federal de Goiás (UFG)false |
dc.title.none.fl_str_mv |
Geração evolucionária de heurísticas para localização de defeitos de software Evolutionary generation of heuristics for software fault localization |
title |
Geração evolucionária de heurísticas para localização de defeitos de software |
spellingShingle |
Geração evolucionária de heurísticas para localização de defeitos de software Freitas, Diogo Machado de Localização de defeitos baseada em espectro Localização de defeitos baseada em busca Engenharia de software baseada em busca Programação genética Meta-heurísticas evolucionárias Spectrum-based fault localization Search-based fault localization Search-based software engineering Genetic programming Evolutionary metaheuristics CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
title_short |
Geração evolucionária de heurísticas para localização de defeitos de software |
title_full |
Geração evolucionária de heurísticas para localização de defeitos de software |
title_fullStr |
Geração evolucionária de heurísticas para localização de defeitos de software |
title_full_unstemmed |
Geração evolucionária de heurísticas para localização de defeitos de software |
title_sort |
Geração evolucionária de heurísticas para localização de defeitos de software |
author |
Freitas, Diogo Machado de |
author_facet |
Freitas, Diogo Machado de |
author_role |
author |
dc.contributor.none.fl_str_mv |
Leitão Júnior, Plínio de Sá http://lattes.cnpq.br/4480334653242457 Camilo Júnior, Celso Gonçalves http://lattes.cnpq.br/6776569904919279 Soares, Anderson da Silva Vergilio, Silvia Regina |
dc.contributor.author.fl_str_mv |
Freitas, Diogo Machado de |
dc.subject.por.fl_str_mv |
Localização de defeitos baseada em espectro Localização de defeitos baseada em busca Engenharia de software baseada em busca Programação genética Meta-heurísticas evolucionárias Spectrum-based fault localization Search-based fault localization Search-based software engineering Genetic programming Evolutionary metaheuristics CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
topic |
Localização de defeitos baseada em espectro Localização de defeitos baseada em busca Engenharia de software baseada em busca Programação genética Meta-heurísticas evolucionárias Spectrum-based fault localization Search-based fault localization Search-based software engineering Genetic programming Evolutionary metaheuristics CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
description |
Localizaçã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. |
publishDate |
2018 |
dc.date.none.fl_str_mv |
2018-10-30T13:41:38Z 2018-09-24 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
FREITAS, 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. http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
dc.identifier.dark.fl_str_mv |
ark:/38995/001300000x2f5 |
identifier_str_mv |
FREITAS, 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. ark:/38995/001300000x2f5 |
url |
http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
http://creativecommons.org/licenses/by-nc-nd/4.0/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
http://creativecommons.org/licenses/by-nc-nd/4.0/ |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf application/pdf |
dc.publisher.none.fl_str_mv |
Universidade Federal de Goiás Instituto de Informática - INF (RG) Brasil UFG Programa de Pós-graduação em Ciência da Computação (INF) |
publisher.none.fl_str_mv |
Universidade Federal de Goiás Instituto de Informática - INF (RG) Brasil UFG Programa de Pós-graduação em Ciência da Computação (INF) |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFG instname:Universidade Federal de Goiás (UFG) instacron:UFG |
instname_str |
Universidade Federal de Goiás (UFG) |
instacron_str |
UFG |
institution |
UFG |
reponame_str |
Repositório Institucional da UFG |
collection |
Repositório Institucional da UFG |
repository.name.fl_str_mv |
Repositório Institucional da UFG - Universidade Federal de Goiás (UFG) |
repository.mail.fl_str_mv |
grt.bc@ufg.br |
_version_ |
1837198279636418560 |