Use este identificador para citar ou linkar para este item:
https://repositorio.ufpe.br/handle/123456789/48130
Compartilhe esta página
Título: | A vida privada dos conflitos de merge: replicação e análise qualitativa |
Autor(es): | ALVES, MATHEUS LUIZ BORBA |
Palavras-chave: | conflitos de integração; desenvolvimento colaborativo de software; git |
Data do documento: | 20-Out-2022 |
Abstract: | Para a grande maioria dos projetos de software o sucesso está atrelado ao desenvolvimento colaborativo. Dito isso, conflitos de integração podem surgir quando um desenvolvedor decide integrar suas modificações com outros desenvolvedores em um repositório remoto. Conflitos podem acarretar na diminuição da produtividade, diminuição de qualidade de código e inserção de bugs em ambientes de produção. Graças a estudos realizados previamente, a frequência de comandos de integração e conflitos já foram analisados. Porém, na maioria das análises, o foco tende a ser apenas em códigos disponibilizados em repositórios públicos. Cenários de integração de código podem ser perdidos no histórico remoto dos repositórios devido à existência de comandos como o git rebase, que reescreve o histórico de commits do Git. Portanto, esses estudos podem estar analisando apenas uma parte dos conflitos reais e casos de integração de código. Através da análise de repositórios locais, podemos acessar cenários de integração de código que não seria possível caso o foco fosse apenas nos repositórios públicos do GitHub. O objetivo deste estudo é trazer mais visibilidade para a importância da análise local de repositórios para fins de investigar diversos cenários de integração de código e suas relações com a ocorrência de conflitos. Examinamos um total de 35 arquivos de git reflog de 16 projetos diferentes pertencentes a duas organizações, no total foram coletados logs de 17 desenvolvedores. Foram conduzidas 8 entrevistas semi-estruturadas, 4 colaboradores de cada organização, com objetivo de entender mais a fundo a relação entre o uso dos comandos de integração, o fluxo de trabalho e diretrizes de cada projeto estabelecidos pelas empresas e a ocorrência de conflitos. Foi detectado que o uso de comandos que ofuscam a integração de código são mais utilizados por desenvolvedores, próximo ou acima dos 3 anos de experiência. Além de conseguir apontar quais características dos projetos podem influenciar na ocorrência de conflitos, como por exemplo: o uso de testes automatizados. Vimos também que a demora para revisão de código está relacionada a ocorrência de conflitos, mais chances do código ter sido alterado, assim é de extrema importância que o processo de integração de código seja feito de forma rápida e efetiva. O planejamento prévio das tarefas que serão realizadas, a preocupação com a estrutura e tamanho dos PRs e o uso de testes automatizados ajudam a diminuir a ocorrência de conflitos pois agilizam o processo de revisão de código e integração de mudanças. |
URI: | https://repositorio.ufpe.br/handle/123456789/48130 |
Aparece nas coleções: | (TCC) - Ciência da Computação |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
TCC Matheus Luiz Borba Alves da Silva.pdf | 687,9 kB | Adobe PDF | ![]() Visualizar/Abrir |
Este arquivo é protegido por direitos autorais |
Este item está licenciada sob uma Licença Creative Commons