Improving traceability recovery between bug reports and manual test cases.

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: SANTOS, Lucas Raniére Juvino.
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Campina Grande
Brasil
Centro de Engenharia Elétrica e Informática - CEEI
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
UFCG
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/17062
Resumo: Durante o ciclo de vida de um software há a produção de diversos tipos de artefatos, responsáveis por documentar e organizar não apenas o software, mas também o processo de desenvolvimento. Muitos desses artefatos são co-dependentes, mas apesar da manutenção da consistência entre os artefatos ser uma tarefa importante, não é trivial. Já que são produzidos por indivíduos diferentes, em diferentes tipos de detalhes e linguagens, a automação é altamente desejável. Algumas pesquisas investigam a rastreabilidade entre bug reports e casos de teste manuais. Uma vez que casos de teste são uma forma popular de documentar requisitos em projetos ágeis, esse tipo de rastreabilidade permite, por exemplo, analisar como bug reports se relacionam com os requisitos. Uma pesquisa anterior avaliou três técnicas de Recuperação de Informação (LSI, LDA, e BM25) e um algoritmo de Deep Learning (Word Vector) usadas para recuperar links entre bug reports e casos de teste. Os resultados dessa pesquisam apontam a necessidade de melhorias. Em nossa pesquisa avaliamos um conjunto de técnicas de melhorias aplicadas em um trabalho base, que utiliza artefatos do projeto open-source Mozilla Firefox. As técnicas de melhorias são: (i) limpeza textual e de informação; (ii) correção ortográfica; (iii) aumento do peso de campos do bug report (duplicação do título e descrição); (iv) junção de matrizes de similaridade; e (v) junção de matrizes de rastreabilidade. A avaliação das técnicas de melhoria é feita através da comparação entre os resultados obtidos por elas e os resultados obtidos pelo trabalho base, em termos de precisão e cobertura. Foi observado uma leve melhoria nas taxas de precisão e cobertura nas técnicas de limpeza textual e de informação, correção ortográfica, duplicação do título, e na combinação dessas três técnicas. Em uma das estratégias da técnica de junção de matrizes de rastreabilidade, que seleciona traces recuperados por ao menos uma das técnicas de rastreabilidade, alcançou um valor de cobertura de 93%.
id UCB-2_3d87e8aa57c9d4a8b2dde479e59fc2ed
oai_identifier_str oai:localhost:riufcg/17062
network_acronym_str UCB-2
network_name_str Repositório Institucional da UCB
repository_id_str
spelling Improving traceability recovery between bug reports and manual test cases.Engenharia de softwareIngeniería de softwareSoftware engineeringArtefatos de softwareArtefactos de softwareBug reportsComputer scienceCiência da ComputaçãoDurante o ciclo de vida de um software há a produção de diversos tipos de artefatos, responsáveis por documentar e organizar não apenas o software, mas também o processo de desenvolvimento. Muitos desses artefatos são co-dependentes, mas apesar da manutenção da consistência entre os artefatos ser uma tarefa importante, não é trivial. Já que são produzidos por indivíduos diferentes, em diferentes tipos de detalhes e linguagens, a automação é altamente desejável. Algumas pesquisas investigam a rastreabilidade entre bug reports e casos de teste manuais. Uma vez que casos de teste são uma forma popular de documentar requisitos em projetos ágeis, esse tipo de rastreabilidade permite, por exemplo, analisar como bug reports se relacionam com os requisitos. Uma pesquisa anterior avaliou três técnicas de Recuperação de Informação (LSI, LDA, e BM25) e um algoritmo de Deep Learning (Word Vector) usadas para recuperar links entre bug reports e casos de teste. Os resultados dessa pesquisam apontam a necessidade de melhorias. Em nossa pesquisa avaliamos um conjunto de técnicas de melhorias aplicadas em um trabalho base, que utiliza artefatos do projeto open-source Mozilla Firefox. As técnicas de melhorias são: (i) limpeza textual e de informação; (ii) correção ortográfica; (iii) aumento do peso de campos do bug report (duplicação do título e descrição); (iv) junção de matrizes de similaridade; e (v) junção de matrizes de rastreabilidade. A avaliação das técnicas de melhoria é feita através da comparação entre os resultados obtidos por elas e os resultados obtidos pelo trabalho base, em termos de precisão e cobertura. Foi observado uma leve melhoria nas taxas de precisão e cobertura nas técnicas de limpeza textual e de informação, correção ortográfica, duplicação do título, e na combinação dessas três técnicas. Em uma das estratégias da técnica de junção de matrizes de rastreabilidade, que seleciona traces recuperados por ao menos uma das técnicas de rastreabilidade, alcançou um valor de cobertura de 93%.During the life cycle of a software there is the production of several types of artifacts, responsible for documenting and organizing not only the software, but also the development process. Many of these artifacts are codependent, but while maintaining consistency between artifacts is an important task, it is not trivial. Since they are produced by different individuals, in different types of details and languages, automation is highly desirable. Some research investigates traceability between bug reports and manual test cases. Since test cases are a popular way of documenting requirements in agile projects, this type of traceability allows, for instance, to analyze how bug reports relate to requirements. Previous research evaluated three Information Retrieval (IR) techniques (LSI, LDA, and BM25) and a Deep Learning (DL) algorithm (Word Vector) used to retrieve links between bug reports and test cases. The results of this research point to the need for improvements. In our research we evaluate a set of improvement techniques applied to a baseline work, which uses artifacts from the open-source Mozilla Firefox project. Improvement techniques are: (i) textual and information cleaning; (ii) spellchecking; (iii) increasing the weight of fields in the bug reports (duplication of title and description); (iv) merge the similarity matrices; and (v) merge the traceability matrices. The evaluation of improvement techniques is made by comparing the results obtained by them and the results obtained by the baseline work, in terms of precision and recall. There was a slight improvement in the precision and recall rates in the techniques of textual and information cleaning, spellchecking, duplication of the title, and in the combination of these three techniques. In one of the strategies of the technique of merging the traceability matrices, which selects traces recovered by at least one of the traceability techniques, it reached a coverage value of 93%.Universidade Federal de Campina GrandeBrasilCentro de Engenharia Elétrica e Informática - CEEIPÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOUFCGRAMALHO, Franklin de Souza.Ramalho, F. S.http://lattes.cnpq.br/2469816352786812MASSONI, Tiago Lima.MASSONI, T. L.http://lattes.cnpq.br/3563923906851611ALVES, Everton Leandro Galdino.BARBOSA, Luciano de Andrade.SANTOS, Lucas Raniére Juvino.2020-10-302021-01-18T18:12:07Z2021-01-182021-01-18T18:12:07Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/17062SANTOS, L. R. J. Improving traceability recovery between bug reports and manual test cases. 2020. 78 f. Dissertação (Mestrado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2020.info:eu-repo/semantics/openAccessengreponame:Repositório Institucional da UCBinstname:Universidade Católica de Brasília (UCB)instacron:UCB2021-01-19T00:01:19Zoai:localhost:riufcg/17062Repositório InstitucionalPRIhttps://repositorio.ucb.br/oai/requestsara.ribeiro@ucb.bropendoar:2021-01-19T00:01:19Repositório Institucional da UCB - Universidade Católica de Brasília (UCB)false
dc.title.none.fl_str_mv Improving traceability recovery between bug reports and manual test cases.
title Improving traceability recovery between bug reports and manual test cases.
spellingShingle Improving traceability recovery between bug reports and manual test cases.
SANTOS, Lucas Raniére Juvino.
Engenharia de software
Ingeniería de software
Software engineering
Artefatos de software
Artefactos de software
Bug reports
Computer science
Ciência da Computação
title_short Improving traceability recovery between bug reports and manual test cases.
title_full Improving traceability recovery between bug reports and manual test cases.
title_fullStr Improving traceability recovery between bug reports and manual test cases.
title_full_unstemmed Improving traceability recovery between bug reports and manual test cases.
title_sort Improving traceability recovery between bug reports and manual test cases.
author SANTOS, Lucas Raniére Juvino.
author_facet SANTOS, Lucas Raniére Juvino.
author_role author
dc.contributor.none.fl_str_mv RAMALHO, Franklin de Souza.
Ramalho, F. S.
http://lattes.cnpq.br/2469816352786812
MASSONI, Tiago Lima.
MASSONI, T. L.
http://lattes.cnpq.br/3563923906851611
ALVES, Everton Leandro Galdino.
BARBOSA, Luciano de Andrade.
dc.contributor.author.fl_str_mv SANTOS, Lucas Raniére Juvino.
dc.subject.por.fl_str_mv Engenharia de software
Ingeniería de software
Software engineering
Artefatos de software
Artefactos de software
Bug reports
Computer science
Ciência da Computação
topic Engenharia de software
Ingeniería de software
Software engineering
Artefatos de software
Artefactos de software
Bug reports
Computer science
Ciência da Computação
description Durante o ciclo de vida de um software há a produção de diversos tipos de artefatos, responsáveis por documentar e organizar não apenas o software, mas também o processo de desenvolvimento. Muitos desses artefatos são co-dependentes, mas apesar da manutenção da consistência entre os artefatos ser uma tarefa importante, não é trivial. Já que são produzidos por indivíduos diferentes, em diferentes tipos de detalhes e linguagens, a automação é altamente desejável. Algumas pesquisas investigam a rastreabilidade entre bug reports e casos de teste manuais. Uma vez que casos de teste são uma forma popular de documentar requisitos em projetos ágeis, esse tipo de rastreabilidade permite, por exemplo, analisar como bug reports se relacionam com os requisitos. Uma pesquisa anterior avaliou três técnicas de Recuperação de Informação (LSI, LDA, e BM25) e um algoritmo de Deep Learning (Word Vector) usadas para recuperar links entre bug reports e casos de teste. Os resultados dessa pesquisam apontam a necessidade de melhorias. Em nossa pesquisa avaliamos um conjunto de técnicas de melhorias aplicadas em um trabalho base, que utiliza artefatos do projeto open-source Mozilla Firefox. As técnicas de melhorias são: (i) limpeza textual e de informação; (ii) correção ortográfica; (iii) aumento do peso de campos do bug report (duplicação do título e descrição); (iv) junção de matrizes de similaridade; e (v) junção de matrizes de rastreabilidade. A avaliação das técnicas de melhoria é feita através da comparação entre os resultados obtidos por elas e os resultados obtidos pelo trabalho base, em termos de precisão e cobertura. Foi observado uma leve melhoria nas taxas de precisão e cobertura nas técnicas de limpeza textual e de informação, correção ortográfica, duplicação do título, e na combinação dessas três técnicas. Em uma das estratégias da técnica de junção de matrizes de rastreabilidade, que seleciona traces recuperados por ao menos uma das técnicas de rastreabilidade, alcançou um valor de cobertura de 93%.
publishDate 2020
dc.date.none.fl_str_mv 2020-10-30
2021-01-18T18:12:07Z
2021-01-18
2021-01-18T18:12:07Z
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 http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/17062
SANTOS, L. R. J. Improving traceability recovery between bug reports and manual test cases. 2020. 78 f. Dissertação (Mestrado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2020.
url http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/17062
identifier_str_mv SANTOS, L. R. J. Improving traceability recovery between bug reports and manual test cases. 2020. 78 f. Dissertação (Mestrado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2020.
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Campina Grande
Brasil
Centro de Engenharia Elétrica e Informática - CEEI
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
UFCG
publisher.none.fl_str_mv Universidade Federal de Campina Grande
Brasil
Centro de Engenharia Elétrica e Informática - CEEI
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
UFCG
dc.source.none.fl_str_mv reponame:Repositório Institucional da UCB
instname:Universidade Católica de Brasília (UCB)
instacron:UCB
instname_str Universidade Católica de Brasília (UCB)
instacron_str UCB
institution UCB
reponame_str Repositório Institucional da UCB
collection Repositório Institucional da UCB
repository.name.fl_str_mv Repositório Institucional da UCB - Universidade Católica de Brasília (UCB)
repository.mail.fl_str_mv sara.ribeiro@ucb.br
_version_ 1834013194061873152