Affiliation:
1. Federal University of Pará, Belém, Brazil
2. University of British Columbia, Vancouver, Canada
Abstract
How software developers work and collaborate, and how we can best support them is an important topic for software engineering research. One issue for developers is a limited understanding of work that has been done and is ongoing. Modern systems allow developers to create Issues and pull requests (PRs) to track and structure work. However, developers lack a coherent view that brings together related Issues and PRs.
In this paper, we first report on a study of work practices of developers through Issues, PRs, and the links that connect them. Specifically, we mine graphs where the Issues and PRs are nodes, and references (links) between them are the edges. This graph-based approach provides a window into a set of collaborative software engineering practices that have not been previously described. Based on a qualitative analysis of 56 GitHub projects, we report on eight types of work practices alongside their respective PR/Issue topologies.
Next, inspired by our findings, we developed a tool called WorkflowsExplorer to help developers visualize and study workflow types in their own projects. We evaluated WorkflowsExplorer with 6 developers and report on findings from our interviews.
Overall, our work illustrates the value of embracing a topology-focused perspective to investigate collaborative work practices in software development.
Publisher
Association for Computing Machinery (ACM)
Reference39 articles.
1. Timothy Andrew. 2021. A Better Model for Stacked (GitHub) Pull Requests. https://timothya.com/blog/git-stack/
2. Emergence of Scaling in Random Networks
3. The impact of cross-distribution bug duplicates, empirical study on Debian and Ubuntu
4. Kathy Charmaz. 2014. Constructing grounded theory. sage.