Uma abordagem para análise de cobertura de código em cenários de evolução

Detalhes bibliográficos
Autor(a) principal: Gomes, Fladson Thiago Oliveira
Data de Publicação: 2016
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/jspui/handle/123456789/25640
Resumo: Atualmente, a etapa de testes no processo de desenvolvimento de software tornou-se imprescindível para garantir a confiabilidade e qualidade do código em produção. As constantes evoluções na arquitetura e código de um sistema, criam sérios desafios para os desenvolvedores e testadores, uma vez que modificações podem não se comportar como o esperado. Neste contexto surge a necessidade de ferramentas e mecanismos que diminuam o impacto negativo gerado pelas constantes evoluções do sistema. Dentre as ferramentas que analisam esse impacto, poucas apresentam os fluxos de execução entre métodos que foram afetados e nenhuma apresenta como resultado se esses fluxos afetados pela evolução estão ou não cobertos pelos testes. Assim, este trabalho apresenta uma abordagem que tem como objetivo principal: (i) analisar a cobertura de código levando em consideração os fluxos de chamadas existentes no sistema que foram afetados por evoluções de código, assim como os fluxos de execução oriundos da execução dos testes; (ii) indicar quais fluxos de chamadas do sistema que possuem métodos modificados e não estão sendo cobertos pelos testes atualmente e que, portanto, poderiam ser considerados para melhorar a qualidade dos testes; e (iii) indicar se houve degradação na qualidade da suíte de testes. Um estudo empírico foi realizado em 6 sistemas e os resultados mostram que a abordagem conseguiu identificar entre 19% e 92% de fluxos de execução afetados por mudanças que não estão cobertos e ainda que 3 dos 6 sistemas tiveram uma degradação na qualidade dos testes.
id UFRN_45ddff029a252508ff34e819f70854bc
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/25640
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Gomes, Fladson Thiago OliveiraAranha, Eduardo Henrique da SilvaSilva, Carlos Eduardo daCirilo, ElderKulesza, Uira2018-07-30T22:06:38Z2018-07-30T22:06:38Z2016-03-03GOMES, Fladson Thiago Oliveira. Uma abordagem para análise de cobertura de código em cenários de evolução. 2016. 67f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.https://repositorio.ufrn.br/jspui/handle/123456789/25640porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOEvolução de softwareAnálise de impacto de mudançasAnálise de códigoCobertura de códigoFluxos de execuçãoUma abordagem para análise de cobertura de código em cenários de evoluçãoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisAtualmente, a etapa de testes no processo de desenvolvimento de software tornou-se imprescindível para garantir a confiabilidade e qualidade do código em produção. As constantes evoluções na arquitetura e código de um sistema, criam sérios desafios para os desenvolvedores e testadores, uma vez que modificações podem não se comportar como o esperado. Neste contexto surge a necessidade de ferramentas e mecanismos que diminuam o impacto negativo gerado pelas constantes evoluções do sistema. Dentre as ferramentas que analisam esse impacto, poucas apresentam os fluxos de execução entre métodos que foram afetados e nenhuma apresenta como resultado se esses fluxos afetados pela evolução estão ou não cobertos pelos testes. Assim, este trabalho apresenta uma abordagem que tem como objetivo principal: (i) analisar a cobertura de código levando em consideração os fluxos de chamadas existentes no sistema que foram afetados por evoluções de código, assim como os fluxos de execução oriundos da execução dos testes; (ii) indicar quais fluxos de chamadas do sistema que possuem métodos modificados e não estão sendo cobertos pelos testes atualmente e que, portanto, poderiam ser considerados para melhorar a qualidade dos testes; e (iii) indicar se houve degradação na qualidade da suíte de testes. Um estudo empírico foi realizado em 6 sistemas e os resultados mostram que a abordagem conseguiu identificar entre 19% e 92% de fluxos de execução afetados por mudanças que não estão cobertos e ainda que 3 dos 6 sistemas tiveram uma degradação na qualidade dos testes.PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALFladsonThiagoOliveiraGomes_DISSERT.pdfapplication/pdf2012982https://repositorio.ufrn.br/bitstream/123456789/25640/1/FladsonThiagoOliveiraGomes_DISSERT.pdf32b3a5c5873614b73f362994472d31a9MD51TEXTFladsonThiagoOliveiraGomes_DISSERT.pdf.txtFladsonThiagoOliveiraGomes_DISSERT.pdf.txtExtracted texttext/plain105442https://repositorio.ufrn.br/bitstream/123456789/25640/2/FladsonThiagoOliveiraGomes_DISSERT.pdf.txt7636c48e40c852a96f6d57411da93659MD52THUMBNAILFladsonThiagoOliveiraGomes_DISSERT.pdf.jpgFladsonThiagoOliveiraGomes_DISSERT.pdf.jpgIM Thumbnailimage/jpeg2976https://repositorio.ufrn.br/bitstream/123456789/25640/3/FladsonThiagoOliveiraGomes_DISSERT.pdf.jpg8268d3bbaafaa35db9199cfc4679291dMD53123456789/256402019-01-30 07:10:02.345oai:https://repositorio.ufrn.br:123456789/25640Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2019-01-30T10:10:02Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv Uma abordagem para análise de cobertura de código em cenários de evolução
title Uma abordagem para análise de cobertura de código em cenários de evolução
spellingShingle Uma abordagem para análise de cobertura de código em cenários de evolução
Gomes, Fladson Thiago Oliveira
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Evolução de software
Análise de impacto de mudanças
Análise de código
Cobertura de código
Fluxos de execução
title_short Uma abordagem para análise de cobertura de código em cenários de evolução
title_full Uma abordagem para análise de cobertura de código em cenários de evolução
title_fullStr Uma abordagem para análise de cobertura de código em cenários de evolução
title_full_unstemmed Uma abordagem para análise de cobertura de código em cenários de evolução
title_sort Uma abordagem para análise de cobertura de código em cenários de evolução
author Gomes, Fladson Thiago Oliveira
author_facet Gomes, Fladson Thiago Oliveira
author_role author
dc.contributor.authorID.pt_BR.fl_str_mv
dc.contributor.advisorID.pt_BR.fl_str_mv
dc.contributor.referees1.none.fl_str_mv Aranha, Eduardo Henrique da Silva
dc.contributor.referees1ID.pt_BR.fl_str_mv
dc.contributor.referees2.none.fl_str_mv Silva, Carlos Eduardo da
dc.contributor.referees2ID.pt_BR.fl_str_mv
dc.contributor.referees3.none.fl_str_mv Cirilo, Elder
dc.contributor.referees3ID.pt_BR.fl_str_mv
dc.contributor.author.fl_str_mv Gomes, Fladson Thiago Oliveira
dc.contributor.advisor1.fl_str_mv Kulesza, Uira
contributor_str_mv Kulesza, Uira
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Evolução de software
Análise de impacto de mudanças
Análise de código
Cobertura de código
Fluxos de execução
dc.subject.por.fl_str_mv Evolução de software
Análise de impacto de mudanças
Análise de código
Cobertura de código
Fluxos de execução
description Atualmente, a etapa de testes no processo de desenvolvimento de software tornou-se imprescindível para garantir a confiabilidade e qualidade do código em produção. As constantes evoluções na arquitetura e código de um sistema, criam sérios desafios para os desenvolvedores e testadores, uma vez que modificações podem não se comportar como o esperado. Neste contexto surge a necessidade de ferramentas e mecanismos que diminuam o impacto negativo gerado pelas constantes evoluções do sistema. Dentre as ferramentas que analisam esse impacto, poucas apresentam os fluxos de execução entre métodos que foram afetados e nenhuma apresenta como resultado se esses fluxos afetados pela evolução estão ou não cobertos pelos testes. Assim, este trabalho apresenta uma abordagem que tem como objetivo principal: (i) analisar a cobertura de código levando em consideração os fluxos de chamadas existentes no sistema que foram afetados por evoluções de código, assim como os fluxos de execução oriundos da execução dos testes; (ii) indicar quais fluxos de chamadas do sistema que possuem métodos modificados e não estão sendo cobertos pelos testes atualmente e que, portanto, poderiam ser considerados para melhorar a qualidade dos testes; e (iii) indicar se houve degradação na qualidade da suíte de testes. Um estudo empírico foi realizado em 6 sistemas e os resultados mostram que a abordagem conseguiu identificar entre 19% e 92% de fluxos de execução afetados por mudanças que não estão cobertos e ainda que 3 dos 6 sistemas tiveram uma degradação na qualidade dos testes.
publishDate 2016
dc.date.issued.fl_str_mv 2016-03-03
dc.date.accessioned.fl_str_mv 2018-07-30T22:06:38Z
dc.date.available.fl_str_mv 2018-07-30T22:06:38Z
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 GOMES, Fladson Thiago Oliveira. Uma abordagem para análise de cobertura de código em cenários de evolução. 2016. 67f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/jspui/handle/123456789/25640
identifier_str_mv GOMES, Fladson Thiago Oliveira. Uma abordagem para análise de cobertura de código em cenários de evolução. 2016. 67f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
url https://repositorio.ufrn.br/jspui/handle/123456789/25640
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.program.fl_str_mv PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
dc.publisher.initials.fl_str_mv UFRN
dc.publisher.country.fl_str_mv Brasil
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRN
instname:Universidade Federal do Rio Grande do Norte (UFRN)
instacron:UFRN
instname_str Universidade Federal do Rio Grande do Norte (UFRN)
instacron_str UFRN
institution UFRN
reponame_str Repositório Institucional da UFRN
collection Repositório Institucional da UFRN
bitstream.url.fl_str_mv https://repositorio.ufrn.br/bitstream/123456789/25640/1/FladsonThiagoOliveiraGomes_DISSERT.pdf
https://repositorio.ufrn.br/bitstream/123456789/25640/2/FladsonThiagoOliveiraGomes_DISSERT.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/25640/3/FladsonThiagoOliveiraGomes_DISSERT.pdf.jpg
bitstream.checksum.fl_str_mv 32b3a5c5873614b73f362994472d31a9
7636c48e40c852a96f6d57411da93659
8268d3bbaafaa35db9199cfc4679291d
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv
_version_ 1814832716556795904