Available at: https://digitalcommons.calpoly.edu/theses/2820
Date of Award
6-2024
Degree Name
MS in Computer Science
Department/Program
Computer Science
College
College of Engineering
Advisor
Ayaan M. Kazerouni
Advisor Department
Computer Science
Advisor College
College of Engineering
Abstract
Open-source software (OSS) ecosystems, defined as environments composed of package managers and programming languages (e.g., NPM for JavaScript), are essential for software development and foster collaboration and innovation. Although their significance is acknowledged, understanding what makes OSS communities healthy and sustainable requires further exploration. This thesis quantitatively assesses the health of OSS projects and communities within the NPM, PyPI, Maven, and RubyGems ecosystems. We explore five research questions addressing project standards, community responsiveness, contribution distribution, contributor retention, and newcomer integration strategies. Our analysis shows varied documentation practices, insider engagement levels, and contribution patterns. Our findings highlight both strengths and different areas for improvement across ecosystems. For example, RubyGems excels in the adoption of project documentation and exhibits the most even distribution of contributions among all contributors, including highly active contributors. and a very responsive community, but it needs to improve contribution retention and attract newcomers to the projects. Meanwhile, NPM and Maven show a trend toward getting new contributors, characterized by a high ratio of individual contributions. They need to better adopt a code of conduct, pull request templates, and increase the number of active contributors in a project. This thesis offers insights to developers and maintainers on how to strengthen ecosystems and support vibrant communities effectively
Included in
Computer and Systems Architecture Commons, Engineering Education Commons, Other Computer Engineering Commons