Pull requests integration process optimization: an empirical study

Pull-based Development (PbD) is widely used in collaborative development to integrate changes into a project codebase. In this model, contributions are notified through Pull Request (PR) submissions. Project administrators are responsible for reviewing and integrating PRs. In the integration process...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Olmedo, Agustín, Arévalo, Gabriela, Cassol, Ignacio, Perez, Quentin, Urtado, Christelle, Vauttier, Sylvain
Formato: Objeto de conferencia
Lenguaje:Inglés
Publicado: 2024
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/177031
Aporte de:
id I19-R120-10915-177031
record_format dspace
spelling I19-R120-10915-1770312025-02-28T20:06:38Z http://sedici.unlp.edu.ar/handle/10915/177031 Pull requests integration process optimization: an empirical study Olmedo, Agustín Arévalo, Gabriela Cassol, Ignacio Perez, Quentin Urtado, Christelle Vauttier, Sylvain 2024-08 2024 2025-02-28T12:06:21Z en Ciencias Informáticas collaborative software development distributed version control system pull-based development pull request integration process efficiency software merging merge conflicts Pull-based Development (PbD) is widely used in collaborative development to integrate changes into a project codebase. In this model, contributions are notified through Pull Request (PR) submissions. Project administrators are responsible for reviewing and integrating PRs. In the integration process, conflicts occur when PRs are concurrently opened on a given target branch and propose different modifications for a same code part. In a previous work, we proposed an approach, called IP Optimizer, to improve the Integration Process Efficiency (IPE) by prioritizing PRs. In this work, we conduct an empirical study on 260 open-source projects hosted by GitHub that use PRs intensively in order to quantify the frequency of conflicts in software projects and analyze how much the integration process can be improved. Our results indicate that regarding the frequency of conflicts in software projects, half of the projects have a moderate and high number of pairwise conflicts and half have a low number of pairwise conflicts or none. Futhermore, on average 18.82% of the time windows have conflicts. On the other hand, regarding how much the integration process can be improved, IP Optimizer improves the IPE in 94.16% of the time windows and the average improvement percentage is 146.15%. In addition, it improves the number of conflict resolutions in 67.16% of the time windows and the average improvement percentage is 134.28%. Sociedad Argentina de Informática e Investigación Operativa Objeto de conferencia Objeto de conferencia http://creativecommons.org/licenses/by-nc-sa/4.0/ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) application/pdf 85-85
institution Universidad Nacional de La Plata
institution_str I-19
repository_str R-120
collection SEDICI (UNLP)
language Inglés
topic Ciencias Informáticas
collaborative software development
distributed version control system
pull-based development
pull request
integration process efficiency
software merging
merge conflicts
spellingShingle Ciencias Informáticas
collaborative software development
distributed version control system
pull-based development
pull request
integration process efficiency
software merging
merge conflicts
Olmedo, Agustín
Arévalo, Gabriela
Cassol, Ignacio
Perez, Quentin
Urtado, Christelle
Vauttier, Sylvain
Pull requests integration process optimization: an empirical study
topic_facet Ciencias Informáticas
collaborative software development
distributed version control system
pull-based development
pull request
integration process efficiency
software merging
merge conflicts
description Pull-based Development (PbD) is widely used in collaborative development to integrate changes into a project codebase. In this model, contributions are notified through Pull Request (PR) submissions. Project administrators are responsible for reviewing and integrating PRs. In the integration process, conflicts occur when PRs are concurrently opened on a given target branch and propose different modifications for a same code part. In a previous work, we proposed an approach, called IP Optimizer, to improve the Integration Process Efficiency (IPE) by prioritizing PRs. In this work, we conduct an empirical study on 260 open-source projects hosted by GitHub that use PRs intensively in order to quantify the frequency of conflicts in software projects and analyze how much the integration process can be improved. Our results indicate that regarding the frequency of conflicts in software projects, half of the projects have a moderate and high number of pairwise conflicts and half have a low number of pairwise conflicts or none. Futhermore, on average 18.82% of the time windows have conflicts. On the other hand, regarding how much the integration process can be improved, IP Optimizer improves the IPE in 94.16% of the time windows and the average improvement percentage is 146.15%. In addition, it improves the number of conflict resolutions in 67.16% of the time windows and the average improvement percentage is 134.28%.
format Objeto de conferencia
Objeto de conferencia
author Olmedo, Agustín
Arévalo, Gabriela
Cassol, Ignacio
Perez, Quentin
Urtado, Christelle
Vauttier, Sylvain
author_facet Olmedo, Agustín
Arévalo, Gabriela
Cassol, Ignacio
Perez, Quentin
Urtado, Christelle
Vauttier, Sylvain
author_sort Olmedo, Agustín
title Pull requests integration process optimization: an empirical study
title_short Pull requests integration process optimization: an empirical study
title_full Pull requests integration process optimization: an empirical study
title_fullStr Pull requests integration process optimization: an empirical study
title_full_unstemmed Pull requests integration process optimization: an empirical study
title_sort pull requests integration process optimization: an empirical study
publishDate 2024
url http://sedici.unlp.edu.ar/handle/10915/177031
work_keys_str_mv AT olmedoagustin pullrequestsintegrationprocessoptimizationanempiricalstudy
AT arevalogabriela pullrequestsintegrationprocessoptimizationanempiricalstudy
AT cassolignacio pullrequestsintegrationprocessoptimizationanempiricalstudy
AT perezquentin pullrequestsintegrationprocessoptimizationanempiricalstudy
AT urtadochristelle pullrequestsintegrationprocessoptimizationanempiricalstudy
AT vauttiersylvain pullrequestsintegrationprocessoptimizationanempiricalstudy
_version_ 1847925316538859520