Finding collaborations based on co-changed files

Detalhes bibliográficos
Autor(a) principal: Kattiana Fernandes Constantino
Data de Publicação: 2022
Tipo de documento: Tese
Idioma: eng
Título da fonte: Repositório Institucional da UFMG
Texto Completo: http://hdl.handle.net/1843/63962
https://orcid.org/0000-0003-4511-7504
Resumo: Desenvolvedores devem colaborar entre si em todos os estágios do ciclo de vida do software para criar sistemas bem-sucedidos. No entanto, em grandes projetos com centenas de desenvolvedores, como os projetos de código aberto, pode ser muito complexo encontrar desenvolvedores com a mesma afinidade e, assim, obter boas colaborações e novos insights. Além disso, nesse contexto de projetos, pode haver desperdício de recursos e esforços, o que desencoraja a permanência de muitos desenvolvedores. Portanto, esta tese de doutorado propõe uma investigação sobre o desenvolvimento colaborativo baseadas em interesses similares de código. Foram realizados cinco estudos empíricos, nos quais: (1) investigamos como as colaborações acontecem em desenvolvimento de projetos de código aberto. Algumas das principais conclusões do estudo da entrevista incluem que a colaboração transcende a codificação e inclui tarefas de documentação e de gerenciamento; (2) investigamos quão abertos os desenvolvedores estão para colaborarem uns para com os outros. Algumas análises do estudo de pesquisa revelaram que a maioria dos participantes (85%) prefere trabalhar em colaboração com a equipe principal e 30% prefere trabalhar em tarefas independentes; (3) propomos duas estratégias de recomendação de desenvolvedores e um protótipo para suportá-las; (4) avaliamos as duas estratégias de recomendação de desenvolvedores, sob o ponto de vista de quem recebe a recomendação; as taxas de aceitação para eles foram superiores a 65%. Quando juntamos as estratégias, a taxa de aceitação foi de 81%. Finalmente, (5) também avaliamos o suporte ferramental com usuários e não usuários do GitHub. Baseado nos resultados obtidos nesta tese de doutorado, é possível que os desenvolvedores e mantenedores possam adquirir o conhecimento para fomentar as colaborações no projeto e consequentemente, evitar o esvaziamento do mesmo.
id UFMG_54e05c275f91268e2b3d8f6f869e97fe
oai_identifier_str oai:repositorio.ufmg.br:1843/63962
network_acronym_str UFMG
network_name_str Repositório Institucional da UFMG
repository_id_str
spelling Eduardo Magno Lages Figueiredohttp://lattes.cnpq.br/1265706528850746Raquel Oliveira PratesMarco Túlio de Oliveira ValenteIgor Fábio SteinmacherMarcelo de Almeida Maiahttp://lattes.cnpq.br/3081878651653793Kattiana Fernandes Constantino2024-02-15T03:03:30Z2024-02-15T03:03:30Z2022-07-15http://hdl.handle.net/1843/63962https://orcid.org/0000-0003-4511-7504Desenvolvedores devem colaborar entre si em todos os estágios do ciclo de vida do software para criar sistemas bem-sucedidos. No entanto, em grandes projetos com centenas de desenvolvedores, como os projetos de código aberto, pode ser muito complexo encontrar desenvolvedores com a mesma afinidade e, assim, obter boas colaborações e novos insights. Além disso, nesse contexto de projetos, pode haver desperdício de recursos e esforços, o que desencoraja a permanência de muitos desenvolvedores. Portanto, esta tese de doutorado propõe uma investigação sobre o desenvolvimento colaborativo baseadas em interesses similares de código. Foram realizados cinco estudos empíricos, nos quais: (1) investigamos como as colaborações acontecem em desenvolvimento de projetos de código aberto. Algumas das principais conclusões do estudo da entrevista incluem que a colaboração transcende a codificação e inclui tarefas de documentação e de gerenciamento; (2) investigamos quão abertos os desenvolvedores estão para colaborarem uns para com os outros. Algumas análises do estudo de pesquisa revelaram que a maioria dos participantes (85%) prefere trabalhar em colaboração com a equipe principal e 30% prefere trabalhar em tarefas independentes; (3) propomos duas estratégias de recomendação de desenvolvedores e um protótipo para suportá-las; (4) avaliamos as duas estratégias de recomendação de desenvolvedores, sob o ponto de vista de quem recebe a recomendação; as taxas de aceitação para eles foram superiores a 65%. Quando juntamos as estratégias, a taxa de aceitação foi de 81%. Finalmente, (5) também avaliamos o suporte ferramental com usuários e não usuários do GitHub. Baseado nos resultados obtidos nesta tese de doutorado, é possível que os desenvolvedores e mantenedores possam adquirir o conhecimento para fomentar as colaborações no projeto e consequentemente, evitar o esvaziamento do mesmo.Software developers must collaborate at all stages of the software life-cycle to create successful software systems. However, for large projects with hundreds of dynamic developers, such as several successful open source projects, it can be very complex to find developers with the same affinity and thus gain suitable collaborations and new insights. Besides, in this project context, resources and efforts may be wasted, discouraging many developers from staying. Therefore, this doctoral thesis proposes an investigation of collaborative development based on similar code interests and tool-supported strategies to help developers find suitable collaborators. We performed five empirical studies: (1) we investigated how collaborations happen in open-source software development projects through an interview study. Some main findings from the interview study include that collaboration transcends coding and includes documentation and management tasks; (2) we designed and performed a survey study to investigate how open developers are to collaborate with others. Some analysis from the survey study revealed that most participants (85%) prefer to work collaboratively with the core team members and 30% prefer to work in independent tasks; (3) we provided two strategies based on co-changed files and a prototype tool, named CoopFinder, that support them; (4) we evaluated these two strategies to motivate collaborations based on changes of similar code of point of view of who receives the developer recommendations. As a result, the acceptance rates for them were greater than 65%. The joint strategy presented the best acceptance rate (81%); and, (5) we also evaluated these strategies and their supporting tool with GitHub users and non-GitHub users. About 86% of the participants answered that they could use or recommend this tool. Based on the results obtained in this doctoral thesis, it is possible that developers and maintainers can acquire the knowledge to foster collaborations in the project and, consequently, avoid emptying it.CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível SuperiorengUniversidade Federal de Minas GeraisPrograma de Pós-Graduação em Ciência da ComputaçãoUFMGBrasilICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃOhttp://creativecommons.org/licenses/by-nc-nd/3.0/pt/info:eu-repo/semantics/openAccessComputação – TesesEngenharia de software – TesesSistemas abertos (Computadores) – TesesSoftware – Desenvolvimento – Sistemas colaborativos - TesesOpen-source software projectsCollaborative software developmentDistributed collaborationDeveloper recommendationFinding collaborations based on co-changed filesLocalizando colaborações com base em alteração de arquivosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMGORIGINALFindingCollaborating_TeseDeDoutorado_versaoFinal_ppgccufmg.pdfFindingCollaborating_TeseDeDoutorado_versaoFinal_ppgccufmg.pdfapplication/pdf2739282https://repositorio.ufmg.br/bitstream/1843/63962/4/FindingCollaborating_TeseDeDoutorado_versaoFinal_ppgccufmg.pdf7898e7ea1afaa370fb2fa247661b53d0MD54CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufmg.br/bitstream/1843/63962/5/license_rdfcfd6801dba008cb6adbd9838b81582abMD55LICENSElicense.txtlicense.txttext/plain; charset=utf-82118https://repositorio.ufmg.br/bitstream/1843/63962/6/license.txtcda590c95a0b51b4d15f60c9642ca272MD561843/639622024-02-15 00:03:31.102oai:repositorio.ufmg.br:1843/63962TElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEgRE8gUkVQT1NJVMOTUklPIElOU1RJVFVDSU9OQUwgREEgVUZNRwoKQ29tIGEgYXByZXNlbnRhw6fDo28gZGVzdGEgbGljZW7Dp2EsIHZvY8OqIChvIGF1dG9yIChlcykgb3UgbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBkZSBhdXRvcikgY29uY2VkZSBhbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIChSSS1VRk1HKSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZSBpcnJldm9nw6F2ZWwgZGUgcmVwcm9kdXppciBlL291IGRpc3RyaWJ1aXIgYSBzdWEgcHVibGljYcOnw6NvIChpbmNsdWluZG8gbyByZXN1bW8pIHBvciB0b2RvIG8gbXVuZG8gbm8gZm9ybWF0byBpbXByZXNzbyBlIGVsZXRyw7RuaWNvIGUgZW0gcXVhbHF1ZXIgbWVpbywgaW5jbHVpbmRvIG9zIGZvcm1hdG9zIMOhdWRpbyBvdSB2w61kZW8uCgpWb2PDqiBkZWNsYXJhIHF1ZSBjb25oZWNlIGEgcG9sw610aWNhIGRlIGNvcHlyaWdodCBkYSBlZGl0b3JhIGRvIHNldSBkb2N1bWVudG8gZSBxdWUgY29uaGVjZSBlIGFjZWl0YSBhcyBEaXJldHJpemVzIGRvIFJJLVVGTUcuCgpWb2PDqiBjb25jb3JkYSBxdWUgbyBSZXBvc2l0w7NyaW8gSW5zdGl0dWNpb25hbCBkYSBVRk1HIHBvZGUsIHNlbSBhbHRlcmFyIG8gY29udGXDumRvLCB0cmFuc3BvciBhIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGTUcgcG9kZSBtYW50ZXIgbWFpcyBkZSB1bWEgY8OzcGlhIGRlIHN1YSBwdWJsaWNhw6fDo28gcGFyYSBmaW5zIGRlIHNlZ3VyYW7Dp2EsIGJhY2stdXAgZSBwcmVzZXJ2YcOnw6NvLgoKVm9jw6ogZGVjbGFyYSBxdWUgYSBzdWEgcHVibGljYcOnw6NvIMOpIG9yaWdpbmFsIGUgcXVlIHZvY8OqIHRlbSBvIHBvZGVyIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIG5lc3RhIGxpY2Vuw6dhLiBWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIG8gZGVww7NzaXRvIGRlIHN1YSBwdWJsaWNhw6fDo28gbsOjbywgcXVlIHNlamEgZGUgc2V1IGNvbmhlY2ltZW50bywgaW5mcmluZ2UgZGlyZWl0b3MgYXV0b3JhaXMgZGUgbmluZ3XDqW0uCgpDYXNvIGEgc3VhIHB1YmxpY2HDp8OjbyBjb250ZW5oYSBtYXRlcmlhbCBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgYSB0aXR1bGFyaWRhZGUgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2PDqiBkZWNsYXJhIHF1ZSBvYnRldmUgYSBwZXJtaXNzw6NvIGlycmVzdHJpdGEgZG8gZGV0ZW50b3IgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIHBhcmEgY29uY2VkZXIgYW8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgbmVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3Ugbm8gY29udGXDumRvIGRhIHB1YmxpY2HDp8OjbyBvcmEgZGVwb3NpdGFkYS4KCkNBU08gQSBQVUJMSUNBw4fDg08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9Dw41OSU8gT1UgQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PLCBWT0PDiiBERUNMQVJBIFFVRSBSRVNQRUlUT1UgVE9ET1MgRSBRVUFJU1FVRVIgRElSRUlUT1MgREUgUkVWSVPDg08gQ09NTyBUQU1Cw4lNIEFTIERFTUFJUyBPQlJJR0HDh8OVRVMgRVhJR0lEQVMgUE9SIENPTlRSQVRPIE9VIEFDT1JETy4KCk8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgZGEgVUZNRyBzZSBjb21wcm9tZXRlIGEgaWRlbnRpZmljYXIgY2xhcmFtZW50ZSBvIHNldSBub21lKHMpIG91IG8ocykgbm9tZXMocykgZG8ocykgZGV0ZW50b3IoZXMpIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkYSBwdWJsaWNhw6fDo28sIGUgbsOjbyBmYXLDoSBxdWFscXVlciBhbHRlcmHDp8OjbywgYWzDqW0gZGFxdWVsYXMgY29uY2VkaWRhcyBwb3IgZXN0YSBsaWNlbsOnYS4KRepositório de PublicaçõesPUBhttps://repositorio.ufmg.br/oaiopendoar:2024-02-15T03:03:31Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false
dc.title.pt_BR.fl_str_mv Finding collaborations based on co-changed files
dc.title.alternative.pt_BR.fl_str_mv Localizando colaborações com base em alteração de arquivos
title Finding collaborations based on co-changed files
spellingShingle Finding collaborations based on co-changed files
Kattiana Fernandes Constantino
Open-source software projects
Collaborative software development
Distributed collaboration
Developer recommendation
Computação – Teses
Engenharia de software – Teses
Sistemas abertos (Computadores) – Teses
Software – Desenvolvimento – Sistemas colaborativos - Teses
title_short Finding collaborations based on co-changed files
title_full Finding collaborations based on co-changed files
title_fullStr Finding collaborations based on co-changed files
title_full_unstemmed Finding collaborations based on co-changed files
title_sort Finding collaborations based on co-changed files
author Kattiana Fernandes Constantino
author_facet Kattiana Fernandes Constantino
author_role author
dc.contributor.advisor1.fl_str_mv Eduardo Magno Lages Figueiredo
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/1265706528850746
dc.contributor.referee1.fl_str_mv Raquel Oliveira Prates
dc.contributor.referee2.fl_str_mv Marco Túlio de Oliveira Valente
dc.contributor.referee3.fl_str_mv Igor Fábio Steinmacher
dc.contributor.referee4.fl_str_mv Marcelo de Almeida Maia
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/3081878651653793
dc.contributor.author.fl_str_mv Kattiana Fernandes Constantino
contributor_str_mv Eduardo Magno Lages Figueiredo
Raquel Oliveira Prates
Marco Túlio de Oliveira Valente
Igor Fábio Steinmacher
Marcelo de Almeida Maia
dc.subject.por.fl_str_mv Open-source software projects
Collaborative software development
Distributed collaboration
Developer recommendation
topic Open-source software projects
Collaborative software development
Distributed collaboration
Developer recommendation
Computação – Teses
Engenharia de software – Teses
Sistemas abertos (Computadores) – Teses
Software – Desenvolvimento – Sistemas colaborativos - Teses
dc.subject.other.pt_BR.fl_str_mv Computação – Teses
Engenharia de software – Teses
Sistemas abertos (Computadores) – Teses
Software – Desenvolvimento – Sistemas colaborativos - Teses
description Desenvolvedores devem colaborar entre si em todos os estágios do ciclo de vida do software para criar sistemas bem-sucedidos. No entanto, em grandes projetos com centenas de desenvolvedores, como os projetos de código aberto, pode ser muito complexo encontrar desenvolvedores com a mesma afinidade e, assim, obter boas colaborações e novos insights. Além disso, nesse contexto de projetos, pode haver desperdício de recursos e esforços, o que desencoraja a permanência de muitos desenvolvedores. Portanto, esta tese de doutorado propõe uma investigação sobre o desenvolvimento colaborativo baseadas em interesses similares de código. Foram realizados cinco estudos empíricos, nos quais: (1) investigamos como as colaborações acontecem em desenvolvimento de projetos de código aberto. Algumas das principais conclusões do estudo da entrevista incluem que a colaboração transcende a codificação e inclui tarefas de documentação e de gerenciamento; (2) investigamos quão abertos os desenvolvedores estão para colaborarem uns para com os outros. Algumas análises do estudo de pesquisa revelaram que a maioria dos participantes (85%) prefere trabalhar em colaboração com a equipe principal e 30% prefere trabalhar em tarefas independentes; (3) propomos duas estratégias de recomendação de desenvolvedores e um protótipo para suportá-las; (4) avaliamos as duas estratégias de recomendação de desenvolvedores, sob o ponto de vista de quem recebe a recomendação; as taxas de aceitação para eles foram superiores a 65%. Quando juntamos as estratégias, a taxa de aceitação foi de 81%. Finalmente, (5) também avaliamos o suporte ferramental com usuários e não usuários do GitHub. Baseado nos resultados obtidos nesta tese de doutorado, é possível que os desenvolvedores e mantenedores possam adquirir o conhecimento para fomentar as colaborações no projeto e consequentemente, evitar o esvaziamento do mesmo.
publishDate 2022
dc.date.issued.fl_str_mv 2022-07-15
dc.date.accessioned.fl_str_mv 2024-02-15T03:03:30Z
dc.date.available.fl_str_mv 2024-02-15T03:03:30Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1843/63962
dc.identifier.orcid.pt_BR.fl_str_mv https://orcid.org/0000-0003-4511-7504
url http://hdl.handle.net/1843/63962
https://orcid.org/0000-0003-4511-7504
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/pt/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/pt/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação
dc.publisher.initials.fl_str_mv UFMG
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
publisher.none.fl_str_mv Universidade Federal de Minas Gerais
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFMG
instname:Universidade Federal de Minas Gerais (UFMG)
instacron:UFMG
instname_str Universidade Federal de Minas Gerais (UFMG)
instacron_str UFMG
institution UFMG
reponame_str Repositório Institucional da UFMG
collection Repositório Institucional da UFMG
bitstream.url.fl_str_mv https://repositorio.ufmg.br/bitstream/1843/63962/4/FindingCollaborating_TeseDeDoutorado_versaoFinal_ppgccufmg.pdf
https://repositorio.ufmg.br/bitstream/1843/63962/5/license_rdf
https://repositorio.ufmg.br/bitstream/1843/63962/6/license.txt
bitstream.checksum.fl_str_mv 7898e7ea1afaa370fb2fa247661b53d0
cfd6801dba008cb6adbd9838b81582ab
cda590c95a0b51b4d15f60c9642ca272
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)
repository.mail.fl_str_mv
_version_ 1803589495720771584