Supporting newcomers in software development projects

Supporting newcomers in software development projects
复制标题

支持软件开发项目的新人

DOI:
10.1109/icsm.2015.7332519
复制
发表时间:
2015
期刊:
2015 IEEE International Conference on Software Maintenance and Evolution (ICSME)
影响因子:
--
通讯作者:
Sebastiano Panichella
Sebastiano Panichella
中科院分区:
--
文献类型:
--
作者:
Sebastiano Panichella

文献摘要

被引文献

相似文献

最近OSS(开源软件)社区的快速扩展促进了对开源项目如何发展以及社区如何交互的研究。一些研究表明,新开发人员的流入对OSS项目的寿命和成功起着重要的作用。除此之外,他们还发现,由于加入项目时遇到的社会技术障碍,很大比例的新成员倾向于离开项目。但是,这种研究工作尚未在支持保留和培训项目新成员方面产生具体结果。在这篇论文中,我们研究了新手加入软件项目时出现的问题,以及可能的解决方案来支持他们。具体地说,我们研究了(i)新来者在开发活动中的行为以及他们如何与其他开发人员交互,目的是(ii)在开发团队集成期间开发支持他们的工具和/或技术。因此,在各种推荐人中,我们定义了(i)一个能够在培训阶段向新人推荐合适导师的工具;然后,为了在程序理解过程中支持新手,我们定义了另外两个推荐工具:一个(ii)生成高质量源代码摘要的工具,另一个(iii)能够提供特定源代码元素描述的工具。对于未来的工作,我们计划改进建议的推荐器,并集成其他类型的推荐器,以更好地支持OSS项目中的新人。
The recent and fast expansion of OSS (Open-source software) communities has fostered research on how open source projects evolve and how their communities interact. Several research studies show that the inflow of new developers plays an important role in the longevity and the success of OSS projects. Beside that they also discovered that an high percentage of newcomers tend to leave the project because of the socio-technical barriers they meet when they join the project. However, such research effort did not generate yet concrete results in support retention and training of project newcomers. In this thesis dissertation we investigated problems arising when newcomers join software projects, and possible solutions to support them. Specifically, we studied (i) how newcomers behave during development activities and how they interact with others developers with the aim at (ii) developing tools and/or techniques for supporting them during the integration in the development team. Thus, among the various recommenders, we defined (i) a tool able to suggest appropriate mentors to newcomers during the training stage; then, with the aim at supporting newcomers during program comprehension we defined other two recommenders: A tool that (ii) generates high quality source code summaries and another tool able to (iii) provide descriptions of specific source code elements. For future work, we plan to improve the proposed recommenders and to integrate other kind of recommenders to better support newcomers in OSS projects.