A Study on Sustainability of Open Source Software Projects
一寛 山下 · Kyushu University Institutional Repository (QIR) (Kyushu University) · 2017
Open Source Software (OSS) is computer software with source code that anyone can study, change, and enhance.Since the quality of OSS systems is sufficient to use in enterprises, more and more enterprises have introduced OSS systems into their businesses.As OSS systems are becoming a type of infrastructure for enterprises, stoppage of the development and maintenance of OSS projects has a large impact on enterprise users.Therefore, the sustainability of OSS projects is important.In this dissertation, we consider sustainability from two perspectives; evolvability and stability.Evolvability is the ability to sustainably grow the project and stability is the ability to maintain the current project.We also consider the relationships between OSS projects because the resources that developers can devote to OSS projects are limited and OSS projects compete for developers and their contributions.We introduce magnet and sticky metrics from social sciences and demonstrate their applicability for understanding OSS sustainability.Magnet is a measure of attracting new developers and corresponds to evolvability.Sticky is a measure of retaining existing developers and corresponds to stability.By comparing these metrics between projects, we classify the projects into four categories (attractive, fluctuating, stagnant, and terminal) and show the transitions of categories with time.Furthermore, we focus on core developers who play important roles in OSS projects.To investigate the impact of core developers on sustainability of OSS projects, we revisit the findings of prior studies.The contributions of this dissertation are as follows.(1) We introduce the magnet and sticky metrics for understanding OSS sus-Abstract iii tainability.We apply the magnet and sticky metrics that were originally proposed in social sciences to the OSS context and show the applicability of these metrics in understanding sustainability of OSS projects.(2) We empirically evaluate the availability of the magnet and sticky metrics using a large number of GitHub projects.To show the availability of the magnet and sticky metrics based approach, we perform an empirical study with a large number of GitHub projects.We find that 53% of terminal projects (low magnet/low sticky) eventually decay into a state of less than ten developers and 55% of attractive projects (high magnet/high sticky) maintain their popularity.(3) We revisit prior findings about core developers by performing large empirical study.There are claims in literature about proportions of core developers in successful OSS projects; however, the claims are based on only a few case studies (at most 9 projects).We empirically evaluate the claims by analyzing a large number of GitHub projects.This dissertation is organized as follows.Chapter 1 gives the background of the work and an overview of this dissertation.Chapter 2 presents a survey of literature related to sustainability of OSS projects.In Chapter 3, we introduce the magnet and sticky metrics to the OSS environment and show the availability of these metrics in a small sample of GitHub projects.Chapter 4 shows the result of a large empirical study on sustainability of OSS projects using the magnet and sticky metrics.Chapter 5 presents an empirical study of the impact of the ratio of core developers on sustainability of OSS projects.In Chapter 6, we discuss results of our study and show additional results for future direction.Finally, Chapter 7 presents a summary of this dissertation.