Um estudo sobre a correlação entre acoplamentos de software entre ramos e esforços de merge

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Pereira, Cristiane da Silva Rodrigues
Orientador(a): Murta, Cristiane da Silva Rodrigues, Menezes, Gleiph Ghiotto Lima de
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal Fluminense (UFF)
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: https://www.repositorio.mar.mil.br/handle/ripcmb/845429
Resumo: O desenvolvimento de software colaborativo exige trabalho paralelo, e as alterações simultâneas precisam ser integradas posteriormente. Quando um merge falha, devido a conflitos diretos ou indiretos, o desenvolvedor deve intervir manualmente. Até o momento, os trabalhos existentes na literatura fornecem algumas evidências iniciais de que o acoplamento estrutural é uma das razões para conflitos indiretos. No entanto, os trabalhos existentes não avaliam formalmente até que ponto o acoplamento estrutural se correlaciona com o esforço de merge e não consideram outros tipos de acoplamentos, como lógico e conceitual. Neste trabalho, foram propostas métricas para quantificar os acoplamentos estrutural, lógico e conceitual entre as mudanças que ocorrem nos ramos. Em seguida, foi investigada a correlação entre as métricas de acoplamento de software e as métricas de esforço de merge (ou seja, retrabalho, trabalho desperdiçado e trabalho extra) em 12 projetos de código aberto, totalizando 6.376 merges. Observou-se uma fraca correlação entre todas as métricas de acoplamento e o esforço de trabalho extra. No entanto, alinhado à literatura, notou-se que a correlação entre o acoplamento estrutural e o esforço de trabalho extra é maior que os outros dois. Além disso, observou-se uma correlação moderada entre os acoplamentos estrutural e conceitual e os esforços de retrabalho e trabalho desperdiçado, mas foi identificada uma correlação baixa entre o acoplamento lógico e os esforços de retrabalho e trabalho desperdiçado. Finalmente, pôde-se observar uma correlação moderada entre os acoplamentos lógico e conceitual e uma fraca correlação entre os acoplamentos estrutural e lógico, bem como entre os acoplamentos estrutural e conceitual.