Improving traceability recovery between bug reports and manual test cases.

Detalhes bibliográficos
Autor(a) principal: SANTOS, Lucas Raniére Juvino.
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFCG
Texto Completo: 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 UFCG_3d87e8aa57c9d4a8b2dde479e59fc2ed
oai_identifier_str oai:localhost:riufcg/17062
network_acronym_str UFCG
network_name_str Biblioteca Digital de Teses e Dissertações da UFCG
repository_id_str 4851
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:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCG2021-01-19T00:01:19Zoai:localhost:riufcg/17062Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512021-01-19T00:01:19Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)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:Biblioteca Digital de Teses e Dissertações da UFCG
instname:Universidade Federal de Campina Grande (UFCG)
instacron:UFCG
instname_str Universidade Federal de Campina Grande (UFCG)
instacron_str UFCG
institution UFCG
reponame_str Biblioteca Digital de Teses e Dissertações da UFCG
collection Biblioteca Digital de Teses e Dissertações da UFCG
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)
repository.mail.fl_str_mv bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br
_version_ 1809744477755015168