ABSTRACT
When newcomers join a software project, they need to be properly trained to understand the technical and organizational aspects of the project. Inadequate training could likely lead to project delay or failure.
In this paper we propose an approach, named Yoda (Young and newcOmer Developer Assistant) aimed at identifying and recommending mentors in software projects by mining data from mailing lists and versioning systems. Candidate mentors are identified among experienced developers who actively interact with newcomers. Then, when a newcomer joins the project, Yoda recommends her a mentor that, among the available ones, has already discussed topics relevant for the newcomer.
Yoda has been evaluated on software repositories of five open source projects. We have also surveyed some developers of these projects to understand whether mentoring was actually performed in their projects, and asked them to evaluate the mentoring relations Yoda identified. Results indicate that top committers are not always the most appropriate mentors, and show the potential usefulness of Yoda as a recommendation system to aid project managers in supporting newcomers joining a software project.
- G. Antoniol, G. Canfora, G. Casazza, A. De Lucia, and E. Merlo. Recovering traceability links between code and documentation. IEEE Transactions on Software Engineering, 28(10):970--983, 2002. Google ScholarDigital Library
- J. Anvik and G. C. Murphy. Reducing the effort of bug report triage: Recommenders for development-oriented decisions. ACM Trans. Softw. Eng. Methodol., 20(3):10, 2011. Google ScholarDigital Library
- J. Aranda and G. Venolia. The secret life of bugs: Going past the errors and omissions in software repositories. In 31st International Conference on Software Engineering, ICSE 2009, May 16-24, 2009, Vancouver, Canada, Proceedings, pages 298--308, 2009. Google ScholarDigital Library
- A. Bacchelli, M. Lanza, and R. Robbes. Linking e-mails and source code artifacts. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE 2010, Cape Town, South Africa, 1-8 May 2010, pages 375--384. ACM, 2010. Google ScholarDigital Library
- R. Baeza-Yates and B. Ribeiro-Neto. Modern Information Retrieval. Addison-Wesley, 1999. Google ScholarDigital Library
- C. Bird, A. Gourley, P. T. Devanbu, M. Gertz, and A. Swaminathan. Mining email social networks. In Proceedings of the 2006 International Workshop on Mining Software Repositories, MSR 2006, Shanghai, China, May 22-23, 2006, pages 137--143, 2006. Google ScholarDigital Library
- C. Bird, A. Gourley, P. T. Devanbu, A. Swaminathan, and G. Hsu. Open borders? immigration in open source projects. In Fourth International Workshop on Mining Software Repositories, MSR 2007, Minneapolis, MN, USA, May 19-20, 2007, Proceedings, page 6. IEEE Computer Society, 2007. Google ScholarDigital Library
- C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. T. Devanbu. Don't touch my code!: examining the effects of ownership on software quality. In SIGSOFT/FSE'11 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering and 13rd European Software Engineering Conference, Szeged, Hungary, September 5-9, 2011, pages 4--14. ACM, 2011. Google ScholarDigital Library
- G. Canfora and L. Cerulo. Supporting change request assignment in open source development. In Proceedings of the 2006 ACM Symposium on Applied Computing (SAC), Dijon, France, April 23-27, 2006, pages 1767--1772. ACM, 2006. Google ScholarDigital Library
- G. Canfora, L. Cerulo, M. Cimitile, and M. Di Penta. Social interactions around cross-system bug fixings: the case of FreeBSD and OpenBSD. In Proceedings of the 8th International Working Conference on Mining Software Repositories, MSR 2011 (Co-located with ICSE), Waikiki, Honolulu, HI, USA, May 21-28, 2011, Proceedings, pages 143--152, 2011. Google ScholarDigital Library
- M. Cataldo, J. D. Herbsleb, and K. M. Carley. Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity. In Proceedings of the Second International Symposium on Empirical Software Engineering and Measurement, ESEM 2008, October 9-10, 2008, Kaiserslautern, Germany, pages 2--11. ACM, 2008. Google ScholarDigital Library
- M. Cataldo, P. Wagstrom, J. D. Herbsleb, and K. M. Carley. Identification of coordination requirements: implications for the design of collaboration and awareness tools. In Proceedings of the 2006 ACM Conference on Computer Supported Cooperative Work, CSCW 2006, Banff, Alberta, Canada, November 4-8, 2006, pages 353--362, 2006. Google ScholarDigital Library
- D. Cubranic, G. C. Murphy, J. Singer, and K. S. Booth. Hipikat: A project memory for software development. IEEE Trans. Software Eng., 31(6):446--465, 2005. Google ScholarDigital Library
- B. Dagenais, H. Ossher, R. K. E. Bellamy, M. P. Robillard, and J. de Vries. Moving into a new software project landscape. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE 2010, Cape Town, South Africa, 1-8 May 2010, pages 275--284. ACM, 2010. Google ScholarDigital Library
- I. Fronza, A. Sillitti, and G. Succi. An interpretation of the results of the analysis of pair programming during novices integration in a team. In Proceedings of the Third International Symposium on Empirical Software Engineering and Measurement, ESEM 2009, October 15-16, 2009, Lake Buena Vista, Florida, USA, pages 225--235, 2009. Google ScholarDigital Library
- M. F. Porter. An algorithm for suffix stripping. Program, 14(3):130--137, 1980.Google ScholarCross Ref
- G. Robles, J. M. González-Barahona, and I. Herraiz. Evolution of the core team of developers in libre software projects. In Proceedings of the 6th International Working Conference on Mining Software Repositories, MSR 2009, Vancouver, BC, Canada, May 16-17, 2009, pages 167--170. IEEE, 2009. Google ScholarDigital Library
- V. S. Sinha, S. Mani, and S. Sinha. Entering the circle of trust: developer initiation as committers in open-source projects. In Proceedings of the 8th International Working Conference on Mining Software Repositories, MSR 2011, Waikiki, Honolulu, HI, USA, May 21-28, 2011, Proceedings, pages 133--142. IEEE, 2011. Google ScholarDigital Library
- A. Tamrawi, T. T. Nguyen, J. M. Al-Kofahi, and T. N. Nguyen. Fuzzy set and cache-based approach for bug triaging. In SIGSOFT/FSE'11 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering and 13rd European Software Engineering Conference, Szeged, Hungary, September 5-9, 2011, pages 365--375. ACM, 2011. Google ScholarDigital Library
- C. Wang, J. Han, Y. Jia, J. Tang, D. Zhang, Y. Yu, and J. Guo. Mining advisor-advisee relationships from research publication networks. In Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Washington, DC, USA, July 25--28, 2010, pages 203--212, 2010. Google ScholarDigital Library
- M. Zhou and A. Mockus. Growth of newcomer competence: challenges of globalization. In Proceedings of the Workshop on Future of Software Engineering Research, FoSER 2010, at the 18th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2010, Santa Fe, NM, USA, November 7-11, 2010, pages 443--448, 2010. Google ScholarDigital Library
- M. Zhou and A. Mockus. Does the initial environment impact the future of developers. In Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu, HI, USA, May 21-28, 2011, pages 271--280. ACM, 2011. Google ScholarDigital Library
Index Terms
- Who is going to mentor newcomers in open source projects?
Recommendations
Social Barriers Faced by Newcomers Placing Their First Contribution in Open Source Software Projects
CSCW '15: Proceedings of the 18th ACM Conference on Computer Supported Cooperative Work & Social ComputingNewcomers' seamless onboarding is important for online communities that depend upon leveraging the contribution of outsiders. Previous studies investigated aspects of the joining process and motivation in open collaboration communities, but few have ...
Students' Engagement in Open Source Projects: An Analysis of Google Summer of Code
SBES '17: Proceedings of the XXXI Brazilian Symposium on Software EngineeringSeveral open source software (OSS) communities promote and participate in initiatives such as summers of code to foster contributions and attract new developers. However, little is known about how successful these initiatives are. As a case study, we ...
Teaching open source: involving students in free and open source software (FOSS) project communities (abstract only)
SIGCSE '12: Proceedings of the 43rd ACM technical symposium on Computer Science EducationInvolving students from a wide range of backgrounds in Free and Open Source Software (FOSS) project communities gets them a hands-on, portfolio-building experience in the creation of a real-world project while simultaneously building their institution's ...
Comments