An analysis of the structure of the Eclipse ecosystem

Master's defense by David Schor, DIKU

It takes place: 16/8/2012 kl 9:00 i Mødelokale 24-5-62, Njalsgade 128

Abstract

"The software industry is making the move from product lines to software ecoystems[1]. And as that move is made it is important to be able to man- age your software ecosystem and have metrics in place that can help them watch and judge the development of a software ecosystem. The metrics can also serve as warning signs if the software ecosystem moves in an unwanted direction.

In this thesis we give a short definition of a biological ecosystem and then describe some network-ecological metrics used to give characteristics about food networks in biology. We then choose a definition of what a software ecosystem is and describe different ways of approaching and understand- ing a software ecosystem. We discuss the relevance of exploring biological analogies upon a software ecosystem and we choose some network-ecological metrics and discuss how they can be used in a software ecosystem context. We describe the Eclipse Plugin ecosystem and the Eclipse Foundation and explain why we have chosen this ecosystem as a base for our analysis. We then describe the development and architecture of our analytic tool, that is used in our analysis to apply the metrics taken from biological ecosystems and food networks.

We perform an analysis of the Eclipse Plugin ecosystem in which we find that both in-degree and keystone index follow a power law distribution, and we argue that this could indicate that the Eclipse Plugin ecosystem has pref- erential attachment. We introduce in-keystone index and out-keystone index and argue why they can be considered an interesting supplement to in-degree, out-degree and keystone index. We perform a comparative analysis between Eclipse releases and find that the network-ecological metrics give interesting insights about the state and development of the code base. We also compare our results with the results of Hansen and Manikas[6] and find that though the Eclipse Plugin ecosystem is much smaller, the keystone index follows a power law distribution in all three software ecosystems. We finally conclude the thesis by stating our contributions and findings and the extend to which we believe to have addressed the problem definition."

Supervisor: Klaus Marius Hansen, DIKU

Censor: Czeslaw Kazimierczak, CSC