(Ph.D. Thesis) Developer Participation in Open Source Software


Developer participation is the main drive force of software development process especially for open source software. Since the open source software is developed in a manner that developers can participate at their own convenience, it is challenging for software development teams to maintain constant developer participation. Without constant developer participation, software quality and sustainability will be at risk. This thesis performs three empirical studies and a practitioner survey in order to provide practical suggestions and a supporting tool for software development teams. Thus, the software development teams can chart a better development plan to ensure software quality and sustainability. In particular, this thesis first performs a study to investigate the impact of developer turnover on software quality. The results show that in addition to technical factors, developer turnover can be associated to software quality in some software development cycles. Then, this thesis performs two studies to investigate reviewer participation in code review process. The results show that (1) there is the lack of reviewer participation in the code review process, (2) inviting more reviewers is not effective to increase review participation, and (3) human factors play an important role in influencing the participation decision of reviewers. Finally, this thesis performs a practitioner survey to triangulate the findings. The survey results show that only the minority of practitioners are aware of the importance of human factors, and thus highlighting the need to raise awareness of the importance of human factors.

Nara Institute of Science and Technology (NAIST)