Human-data interaction in the context of recommendation for developers of open-source software projects on GitHub

Abstract


Active collaboration is essential for the success of software projects throughout the development lifecycle. Unfortunately, on social coding platforms such as GitHub, it is still challenging for developers to identify potential collaborators and thus improve the quality of contributions. To this end, we implemented developer recommendation strategies, supported by a visual and interactive tool, called COOPFINDER, to connect collaborators based on a set of files of interest to them. In addition, the tool provides metadata and links different attributes that cannot be analyzed using the GitHub interface, facilitating the decision-making of collaborators.
Keywords: Open-Source Software Projects, Collaborative Software Development, Distributed Collaboration, Developer Recommendation, Interactions with Human Experiences

References

Avelino, G., Passos, L., Hora, A., and Valente, M. T. (2016). A novel approach for estimating truck factors. In Proc. of the 24th International Conference on Program Comprehension (ICPC), pages 1–10.

Constantino, K., Belém, F., and Figueiredo, E. (2023a). Dual analysis for helping developers to find collaborators based on co-changed files: An empirical study. Journal of Software: Practice and Experience (JSPE), pages 1–27.

Constantino, K. and Figueiredo, E. (2022). Coopfinder: Finding collaborators based on co–changed files. In Proc. of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), pages 1–3.

Constantino, K. and Figueiredo, E. (2023). Finding collaborations based on co-changed files. In Anais Estendidos do XVIII Simpósio Brasileiro de Sistemas Colaborativos, pages 57–66.

Constantino, K., Prates, R., and Figueiredo, E. (2023b). Recommending collaborators based on co–changed files: A controlled experiment. In Proc. of the 18th Brazilian Symposium on Collaborative Systems, pages 154–168.

Constantino, K., Prates, R., and Figueiredo, E. (2024). A user evaluation of a collaborator recommender based on co-changed files. Journal on Interactive Systems (JIS), 15(1):157–169.

Constantino, K., Souza, M., Zhou, S., Figueiredo, E., and Kästner, C. (2021). Perceptions of open-source software developers on collaborations: An interview and survey study. Journal of Software: Evolution and Process (JSEP), 33:e2393.

Constantino, K., Zhou, S., Souza, M., Figueiredo, E., and Kästner, C. (2020). Understanding collaborative software development: An interview study. In Proc. of the 15th International Conference on Global Software Engineering (ICGSE), page 55–65.

de Neira, A. B., Steinmacher, I., and Wiese, I. S. (2018). Characterizing the hyperspecialists in the context of crowdsourcing software development. Journal of the Brazilian Computer Society (JBCS), 24(1):1–16.

Ferreira, M., Valente, M. T., and Ferreira, K. (2017). A comparison of three algorithms for computing truck factors. In Proc. of the 25th International Conference on Program Comprehension (ICPC), pages 207–217.

Franco, M. F., Rodrigues, B., and Stiller, B. (2019). Mentor: The design and evaluation of a protection services recommender system. In Proc. of the 15th International Conference on Network and Service Management (CNSM), pages 1–7.

Gousios, G., Pinzger, M., and Deursen, A. v. (2014). An exploratory study of the pull-based software development model. In Proc. of the 36th International Conference on Software Engineering (ICSE), pages 345–355.

Gousios, G., Zaidman, A., Storey, M.-A., and Deursen, A. v. (2015). Work practices and challenges in pull-based development: The integrator’s perspective. In Proc. of the 37th International Conference on Software Engineering (ICSE), volume 1, pages 358–368.

Kononenko, O., Baysal, O., and Godfrey, M. W. (2016). Code review quality: How developers see it. In Proc. of the 38th International Conference on Software Engineering (ICSE), pages 1028–1038.

Minto, S. and Murphy, G. (2007). Recommending emergent teams. In Proc. of the 4th International Conference on Mining Software Repositories (MSR), pages 5–5.

Oliveira, J., Pinheiro, D., and Figueiredo, E. (2020). Jexpert: A tool for library expert identification. In Proc. of the 34th Brazilian Symposium on Software Engineering (SBES), pages 386–392.

Oliveira, J., Viggiato, M., and Figueiredo, E. (2019). How well do you know this library? mining experts from source code analysis. In Proc. of the XVIII Brazilian Symposium on Software Quality (SBQS), pages 49–58.

Pham, R., Singer, L., Liskin, O., Figueira Filho, F., and Schneider, K. (2013). Creating a shared understanding of testing culture on a social coding site. In Proc. of the 35th International Conference on Software Engineering (ICSE), pages 112–121.

Pinto, G., Steinmacher, I., and Gerosa, M. (2016). More common than you think: An in-depth study of casual contributors. In Proc. of the 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), volume 1, pages 112–123.

Rahman, M. M., Roy, C. K., Redl, J., and Collins, J. A. (2016). Correct: Code reviewer recommendation at github for vendasta technologies. In Proc. of the 31st International Conference on Automated Software Engineering (ASE), page 792–797.

Ricci, F., Rokach, L., and Shapira, B. (2011). Introduction to recommender systems handbook. In Recommender Systems Handbook, pages 1–35.

Salton, G. (1971). The smart retrieval system: Experiments in automatic information retrieval.

Salton, G. (1989). Automatic text processing: The transformation, analysis, and retrieval of. Reading: Addison-Wesley, 169.

Salton, G. and Harman, D. (2003). Information retrieval. In Encyclopedia of Computer Science.

Steinmacher, I., Pinto, G., Wiese, I. S., and Gerosa, M. A. (2018). Almost there: A study on quasi-contributors in open-source software projects. In Proc. of the 40th International Conference on Software Engineering (ICSE), pages 256–266.

Tamburri, D. A., Kruchten, P., Lago, P., and Van Vliet, H. (2015). Social debt in software engineering: Insights from industry. Journal of Internet Services and Applications (JISA), 6(1):1–17.

Yu, Y., Wang, H., Filkov, V., Devanbu, P., and Vasilescu, B. (2015). Wait for it: Determinants of pull request evaluation latency on github. In Proc. of the 12th International Conference on Mining Software Repositories (MSR), pages 367–371.
Published
2024-10-09
CONSTANTINO, Kattiana; PRATES, Raquel; FIGUEIREDO, Eduardo. Human-data interaction in the context of recommendation for developers of open-source software projects on GitHub. In: WORKSHOP ON INTERACTIONS WITH DATA EXPERIENCES (WIDE), 3. , 2024, Brasília/DF. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 65-72. DOI: https://doi.org/10.5753/wide.2024.245495.