Geração evolucionária de heurísticas para localização de defeitos de software
Autor(a) principal: | |
---|---|
Data de Publicação: | 2018 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFG |
Texto Completo: | http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
Resumo: | 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. |
id |
UFG-2_7a2e8460637b152b41b0955f7c4556d3 |
---|---|
oai_identifier_str |
oai:repositorio.bc.ufg.br:tede/9010 |
network_acronym_str |
UFG-2 |
network_name_str |
Repositório Institucional da UFG |
repository_id_str |
|
spelling |
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 Reginahttp://lattes.cnpq.br/7696595776900598Freitas, Diogo Machado de2018-10-30T13:41:38Z2018-09-24FREITAS, 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/9010Fault 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.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.Submitted by Franciele Moreira (francielemoreyra@gmail.com) on 2018-10-30T13:30:59Z No. of bitstreams: 2 Dissertação - Diogo Machado de Freitas - 2018.pdf: 1477764 bytes, checksum: 73759c5ece96bf48ffd4d698f14026b9 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)Approved for entry into archive by Luciana Ferreira (lucgeral@gmail.com) on 2018-10-30T13:41:38Z (GMT) No. of bitstreams: 2 Dissertação - Diogo Machado de Freitas - 2018.pdf: 1477764 bytes, checksum: 73759c5ece96bf48ffd4d698f14026b9 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5)Made available in DSpace on 2018-10-30T13:41:38Z (GMT). No. of bitstreams: 2 Dissertação - Diogo Machado de Freitas - 2018.pdf: 1477764 bytes, checksum: 73759c5ece96bf48ffd4d698f14026b9 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Previous issue date: 2018-09-24Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESapplication/pdfporUniversidade Federal de GoiásPrograma de Pós-graduação em Ciência da Computação (INF)UFGBrasilInstituto de Informática - INF (RG)http://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessLocalizaçã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 COMPUTACAOGeração evolucionária de heurísticas para localização de defeitos de softwareEvolutionary generation of heuristics for software fault localizationinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis-3303550325223384799600600600600-771226673463364476836717112058112045092075167498588264571reponame:Repositório Institucional da UFGinstname:Universidade Federal de Goiás (UFG)instacron:UFGLICENSElicense.txtlicense.txttext/plain; charset=utf-82165http://repositorio.bc.ufg.br/tede/bitstreams/c2f8c958-7fc4-4e60-b35c-8510ec8fa1c9/downloadbd3efa91386c1718a7f26a329fdcb468MD51CC-LICENSElicense_urllicense_urltext/plain; charset=utf-849http://repositorio.bc.ufg.br/tede/bitstreams/975c2a33-7879-4a04-90dc-d0121ca886f0/download4afdbb8c545fd630ea7db775da747b2fMD52license_textlicense_texttext/html; charset=utf-80http://repositorio.bc.ufg.br/tede/bitstreams/9aba8b29-bd43-40b4-9a76-6d8ac4bb88f4/downloadd41d8cd98f00b204e9800998ecf8427eMD53license_rdflicense_rdfapplication/rdf+xml; charset=utf-80http://repositorio.bc.ufg.br/tede/bitstreams/1c05cc4c-d041-4dd1-9e89-aa31b86b87c0/downloadd41d8cd98f00b204e9800998ecf8427eMD54ORIGINALDissertação - Diogo Machado de Freitas - 2018.pdfDissertação - Diogo Machado de Freitas - 2018.pdfapplication/pdf1477764http://repositorio.bc.ufg.br/tede/bitstreams/9887f8df-3757-45c2-91af-9e52e0244d12/download73759c5ece96bf48ffd4d698f14026b9MD55tede/90102018-10-30 10:41:38.292http://creativecommons.org/licenses/by-nc-nd/4.0/Acesso Abertoopen.accessoai:repositorio.bc.ufg.br:tede/9010http://repositorio.bc.ufg.br/tedeRepositório InstitucionalPUBhttp://repositorio.bc.ufg.br/oai/requesttasesdissertacoes.bc@ufg.bropendoar:2018-10-30T13:41:38Repositório Institucional da UFG - Universidade Federal de Goiás (UFG)falseTk9UQTogQ09MT1FVRSBBUVVJIEEgU1VBIFBSw5NQUklBIExJQ0VOw4dBCkVzdGEgbGljZW7Dp2EgZGUgZXhlbXBsbyDDqSBmb3JuZWNpZGEgYXBlbmFzIHBhcmEgZmlucyBpbmZvcm1hdGl2b3MuCgpMSUNFTsOHQSBERSBESVNUUklCVUnDh8ODTyBOw4NPLUVYQ0xVU0lWQQoKQ29tIGEgYXByZXNlbnRhw6fDo28gZGVzdGEgbGljZW7Dp2EsIHZvY8OqIChvIGF1dG9yIChlcykgb3UgbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBkZSBhdXRvcikgY29uY2VkZSDDoCBVbml2ZXJzaWRhZGUgClhYWCAoU2lnbGEgZGEgVW5pdmVyc2lkYWRlKSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUgcmVwcm9kdXppciwgIHRyYWR1emlyIChjb25mb3JtZSBkZWZpbmlkbyBhYmFpeG8pLCBlL291IApkaXN0cmlidWlyIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyAoaW5jbHVpbmRvIG8gcmVzdW1vKSBwb3IgdG9kbyBvIG11bmRvIG5vIGZvcm1hdG8gaW1wcmVzc28gZSBlbGV0csO0bmljbyBlIAplbSBxdWFscXVlciBtZWlvLCBpbmNsdWluZG8gb3MgZm9ybWF0b3Mgw6F1ZGlvIG91IHbDrWRlby4KClZvY8OqIGNvbmNvcmRhIHF1ZSBhIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBwb2RlLCBzZW0gYWx0ZXJhciBvIGNvbnRlw7pkbywgdHJhbnNwb3IgYSBzdWEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvIApwYXJhIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0byBwYXJhIGZpbnMgZGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIHRhbWLDqW0gY29uY29yZGEgcXVlIGEgU2lnbGEgZGUgVW5pdmVyc2lkYWRlIHBvZGUgbWFudGVyIG1haXMgZGUgdW1hIGPDs3BpYSBhIHN1YSB0ZXNlIG91IApkaXNzZXJ0YcOnw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIGRlY2xhcmEgcXVlIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyDDqSBvcmlnaW5hbCBlIHF1ZSB2b2PDqiB0ZW0gbyBwb2RlciBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyAKbmVzdGEgbGljZW7Dp2EuIFZvY8OqIHRhbWLDqW0gZGVjbGFyYSBxdWUgbyBkZXDDs3NpdG8gZGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBuw6NvLCBxdWUgc2VqYSBkZSBzZXUgCmNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiAKZGVjbGFyYSBxdWUgb2J0ZXZlIGEgcGVybWlzc8OjbyBpcnJlc3RyaXRhIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBwYXJhIGNvbmNlZGVyIMOgIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSAKb3MgZGlyZWl0b3MgYXByZXNlbnRhZG9zIG5lc3RhIGxpY2Vuw6dhLCBlIHF1ZSBlc3NlIG1hdGVyaWFsIGRlIHByb3ByaWVkYWRlIGRlIHRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIAppZGVudGlmaWNhZG8gZSByZWNvbmhlY2lkbyBubyB0ZXh0byBvdSBubyBjb250ZcO6ZG8gZGEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvIG9yYSBkZXBvc2l0YWRhLgoKQ0FTTyBBIFRFU0UgT1UgRElTU0VSVEHDh8ODTyBPUkEgREVQT1NJVEFEQSBURU5IQSBTSURPIFJFU1VMVEFETyBERSBVTSBQQVRST0PDjU5JTyBPVSAKQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PIFFVRSBOw4NPIFNFSkEgQSBTSUdMQSBERSAKVU5JVkVSU0lEQURFLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyAKVEFNQsOJTSBBUyBERU1BSVMgT0JSSUdBw4fDlUVTIEVYSUdJREFTIFBPUiBDT05UUkFUTyBPVSBBQ09SRE8uCgpBIFNpZ2xhIGRlIFVuaXZlcnNpZGFkZSBzZSBjb21wcm9tZXRlIGEgaWRlbnRpZmljYXIgY2xhcmFtZW50ZSBvIHNldSBub21lIChzKSBvdSBvKHMpIG5vbWUocykgZG8ocykgCmRldGVudG9yKGVzKSBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgZGEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvLCBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIGFsw6ltIGRhcXVlbGFzIApjb25jZWRpZGFzIHBvciBlc3RhIGxpY2Vuw6dhLgo= |
dc.title.eng.fl_str_mv |
Geração evolucionária de heurísticas para localização de defeitos de software |
dc.title.alternative.eng.fl_str_mv |
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.advisor1.fl_str_mv |
Leitão Júnior, Plínio de Sá |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/4480334653242457 |
dc.contributor.advisor-co1.fl_str_mv |
Camilo Júnior, Celso Gonçalves |
dc.contributor.advisor-co1Lattes.fl_str_mv |
http://lattes.cnpq.br/6776569904919279 |
dc.contributor.referee1.fl_str_mv |
Soares, Anderson da Silva |
dc.contributor.referee2.fl_str_mv |
Vergilio, Silvia Regina |
dc.contributor.authorLattes.fl_str_mv |
http://lattes.cnpq.br/7696595776900598 |
dc.contributor.author.fl_str_mv |
Freitas, Diogo Machado de |
contributor_str_mv |
Leitão Júnior, Plínio de Sá Camilo Júnior, Celso Gonçalves Soares, Anderson da Silva Vergilio, Silvia Regina |
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 |
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 |
dc.subject.eng.fl_str_mv |
Spectrum-based fault localization Search-based fault localization Search-based software engineering Genetic programming Evolutionary metaheuristics |
dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
description |
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. |
publishDate |
2018 |
dc.date.accessioned.fl_str_mv |
2018-10-30T13:41:38Z |
dc.date.issued.fl_str_mv |
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.citation.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. |
dc.identifier.uri.fl_str_mv |
http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
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. |
url |
http://repositorio.bc.ufg.br/tede/handle/tede/9010 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.program.fl_str_mv |
-3303550325223384799 |
dc.relation.confidence.fl_str_mv |
600 600 600 600 |
dc.relation.department.fl_str_mv |
-7712266734633644768 |
dc.relation.cnpq.fl_str_mv |
3671711205811204509 |
dc.relation.sponsorship.fl_str_mv |
2075167498588264571 |
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 |
dc.publisher.none.fl_str_mv |
Universidade Federal de Goiás |
dc.publisher.program.fl_str_mv |
Programa de Pós-graduação em Ciência da Computação (INF) |
dc.publisher.initials.fl_str_mv |
UFG |
dc.publisher.country.fl_str_mv |
Brasil |
dc.publisher.department.fl_str_mv |
Instituto de Informática - INF (RG) |
publisher.none.fl_str_mv |
Universidade Federal de Goiás |
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 |
bitstream.url.fl_str_mv |
http://repositorio.bc.ufg.br/tede/bitstreams/c2f8c958-7fc4-4e60-b35c-8510ec8fa1c9/download http://repositorio.bc.ufg.br/tede/bitstreams/975c2a33-7879-4a04-90dc-d0121ca886f0/download http://repositorio.bc.ufg.br/tede/bitstreams/9aba8b29-bd43-40b4-9a76-6d8ac4bb88f4/download http://repositorio.bc.ufg.br/tede/bitstreams/1c05cc4c-d041-4dd1-9e89-aa31b86b87c0/download http://repositorio.bc.ufg.br/tede/bitstreams/9887f8df-3757-45c2-91af-9e52e0244d12/download |
bitstream.checksum.fl_str_mv |
bd3efa91386c1718a7f26a329fdcb468 4afdbb8c545fd630ea7db775da747b2f d41d8cd98f00b204e9800998ecf8427e d41d8cd98f00b204e9800998ecf8427e 73759c5ece96bf48ffd4d698f14026b9 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFG - Universidade Federal de Goiás (UFG) |
repository.mail.fl_str_mv |
tasesdissertacoes.bc@ufg.br |
_version_ |
1798044421050073088 |