Reference Coupling: A Method for Identifying Software Ecosystems of Technically Dependent Projects

Date

2015-12-22

Authors

Harrison, Francis

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Software projects are not developed in isolation. Open source software projects encourage a networked collaboration and interdependence across projects and developers. Recent research has shifted to studying software ecosystems, communities of projects that depend on each other and are developed together. However, identifying technical dependencies at the ecosystem level can be challenging. In this dissertation, we propose a new method, known as reference coupling, for detecting technical dependencies between projects. The method establishes dependencies through user-specified cross-references between projects. We use our method to identify ecosystems in GitHub hosted projects, and we identify several characteristics of the identified ecosystems. Our findings show that most ecosystems are centered around one project and are interconnected with other ecosystems. The predominant type of ecosystems are those that develop tools to support software development. We also found that the project owners’ social behavior aligns well with the technical dependencies within the ecosystem, but project contributors’ social behavior does not align with these dependencies. We conclude with a discussion on future research that is enabled by our reference coupling method.

Description

Keywords

Reference coupling, Socio-technical congruence, Software ecosystems, Logical dependencies

Citation