Abstract | Software projects are not developed in isolation.
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 paper, 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 GitHubhosted
projects, and we identify several characteristics of the
identified ecosystems. We find 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 behaviour aligns well with the technical
dependencies within the ecosystem, but project contributors’
social behaviour does not align with these dependencies. We
conclude with a discussion on future research that is enabled
by our reference coupling method.
|