Digging into the Eclipse Marketplace
Eclipse is an integrated development environment that can be extended with plug-ins. Thanks to Eclipse’s success, a diverse community has been established with members coming from industry, open-source projects, and others, and a marketplace with more than 1.700 different plug-ins developed. Hence, the question arises how this marketplace is composed: Who contributes plug-ins? Which plug-ins are successful? Are there common characteristics or trends? To answer these questions, extensive investigations are necessary. In this paper, we present (i) an initial approach for corresponding analyses and (ii) preliminary results. Overall, we aim to pave the way for further research addressing, for example, motivations to participate in, or the evolution of, open marketplaces.
KeywordsEclipse IDE Eclipse Marketplace Open source Empirical study
Open-source systems gained momentum in software engineering mainly because of free use, accessibility, and fast innovation speed [16, 17, 20, 21]. As a result, many companies use such systems as basis for their own products , wherefore commercial and open-source software are more and more used concurrently [1, 2, 10, 17]. A good example for this co-existence is the de facto standard Eclipse1 [6, 7, 19].
Eclipse became the dominant integrated development environment (IDE) for Java used by developers from industry, universities, and open-source communities [5, 6, 7, 9, 19, 23]. To support Eclipse and plug-in developers, the Eclipse Foundation implemented platforms to manage projects [5, 16]. These platforms are support measures and drive the evolution of the community. As a result, the amount of plug-ins is steadily increasing from 1.385 in 2007  to 1.762 at the beginning of 2017. In the context of this paper, the marketplace, in which these plug-ins are provided, will be the area of analysis.
While the Eclipse marketplace brings together diverse communities it has rarely been analyzed. However, such an analysis can help researchers to understand what motivates developers with different backgrounds (e.g., open-source and industry) to participate and collaborate. Furthermore, the findings can support to scope plug-ins and initiate cooperation. In this paper, we describe a preliminary analysis of the Eclipse marketplace and corresponding results. Overall, we aim to provide a glance on open marketplaces and initiate more detailed research.
2 Research Method
Which topics are addressed by successful plug-ins? Plug-ins and topics that accumulate more attention (i.e., more downloads) indicate practical acceptance. This analysis can help to select suitable plug-ins or to scope further development, for instance to improve existing approaches.
Who contributes to these plug-ins? Based on the previous question, we investigate who develops these plug-ins. This can help to identify leading developers and communities for specific topics, potentially indicating collaborations and new research directions.
3 Preliminary Results
RQ-1: Which topics are addressed by successful plug-ins? Developers often use several and synonymous terms to describe their plug-ins, hampering an automated categorization. Thus, we manually assessed the purpose of the 100 most downloaded plug-ins and derived 10 initial categories: Revision control, IDE extension (integrating programming languages or frameworks), code analysis, build tool, user interface, database, editor, optimization (of Eclipse), documentation, and server. As we show in Fig. 1, revision control and IDE extensions accumulate most downloads. However, we also see that there is a difference in the number of available plug-ins for these two categories.
Only 8 plug-ins address revision control but are responsible for over a quarter of all downloads. This might be explained with a small set of established approaches, similar to the situation for user interfaces. Still, this result can be distorted, for instance because communities may require identical tooling, forcing participants to use a specific system even if they prefer another one.
In contrast, IDE extensions, similar to several remaining categories (e.g., code analysis, or build tools), provide far more plug-ins (28) while accumulating fewer downloads. A potential explanation is that these plug-ins often require adaptations to specific programming languages and development processes. Hence, their overall applicability is limited to specific communities and they compete with other IDEs.
RQ-2: Who contributes to these plug-ins? To gain an impression of Eclipse’s community, we categorized the owners of plug-ins into four groups: open-source, private, industrial, and university. As we see in Fig. 1, open-source communities are leading in revision control and build tools, accumulating most plug-ins and downloads. Especially in revision control, which is used for distributed work and collaboration, they seem to benefit from their diversity . However, open-source communities do not, or rarely, contribute to some other topics in our sample.
In contrast, private and industrial owners provide plug-ins for almost all topics. Private developers seem to dominate the development of user interfaces, optimization, and server integration, which facilitate using Eclipse. However, such plug-ins provide less utility besides comfort than, for example, customized build tools or revision control. For this reason, industrial and open-source communities might be less interested in developing these. We support this argument due to the fact that industrial owners provide most plug-ins in IDE extensions, databases, and documentation. These are essential aspects of software development in companies. Finally, we remark that universities own only a single plug-in in our sample, potential reasons being that they provide innovative but immature projects.
4 Research Agenda
The results presented in this work are preliminary and further analysis on how such marketplaces are composed are necessary. More detailed investigations may help to understand, why communities do or do not provide plug-ins and what motivates them. We emphasize that this requires extensive analyses and additional empirical studies. In future work, we aim to assess the following aspects:
How to assess the success of a plug-in? In this paper, we solely focused on the number of overall downloads. This is a significant limitation and other metrics are necessary to provide a more detailed view. For instance, to consider the marketplace’s evolution, a plug-in’s downloads in recent periods, integration into Eclipse packages, or the number of its developers are interesting.
Are there common characteristics of successful plug-ins? Different communities successfully participate in the Eclipse marketplace. Hence, success may depend on the topic and also certain characteristics, for example, used licenses [13, 17, 18], necessity to pay, or maturity. For community managers and developers such information are important to design and provide their software.
How do users select plug-ins? The previous two questions may indicate, and can be validated by investigating how, users select plug-ins. Besides these points, the users’ selection also depends on their experiences and background. The results can help to understand how new techniques emerge and establish.
Why and how are plug-ins developed? An important question in the context of open-source software is the motivation of developers. In particular, it is interesting who initiates plug-ins for which reason, who contributes to these, or which connections exist. The corresponding results may provide insights into motivations to collaborate and participate in communities and open marketplaces.
5 Related Work
Several authors investigate the evolution of Eclipse or its plug-ins, focusing, for instance, on their architecture or API usage [3, 4, 14, 22]. Further works investigate the laws of software evolution  in open-source systems [8, 11]. In contrast to the systems themselves, our scope is how a potential marketplace for these evolves and is composed. Still, both approaches are complementary and can be combined, for instance to assess how a plug-ins evolution affects its popularity and status. Finally, Murphy et al.  empirically evaluate how developers use the Eclipse IDE. It seems interesting to utilize this approach to also assess how plug-ins are used.
Eclipse is one of the most prominent and widely used Java IDEs. Due to its success, a large and diverse community of plug-in developers established. They provide their plug-ins at the Eclipse marketplace, allowing other users to use them.
In this paper, we proposed to analyze the Eclipse marketplace. The preliminary results show that some topics, such as revision control or IDE extensions, are often demanded by users and that different owners participate. Finally, we described further research directions to deepen the understanding of open marketplaces and their communities.
This research is supported by DFG grant LE 3382/2-1 and Volkswagen Financial Services AG. We thank Heike Fischbach for commenting on drafts of this paper.
- 3.Businge, J.: Co-evolution of the Eclipse SDK framework and its third-party plug-ins. In: European Conference on Software Maintenance and Reengineering, CSMR, pp. 427–430. IEEE (2013). doi:10.1109/CSMR.2013.64
- 4.Businge, J., Serebrenik, A., van den Brand, M.: An empirical study of the evolution of Eclipse third-party plug-ins. In: Joint Workshop on Software Evolution and International Workshop on Principles of Software Evolution, IWPSE-EVOL, pp. 63–72. ACM (2010).doi:10.1145/1862372.1862389
- 8.Godfrey, M.W., Tu, Q.: Evolution in open source software: a case study. In: International Conference on Software Maintenance, ICSM, pp. 131–142. IEEE (2000). doi:10.1109/ICSM.2000.883030
- 10.Hars, A., Ou, S.: Working for free? Motivations for participating in open-source projects. In: Hawaii International Conference on System Sciences, HICCS, pp. 1–9. IEEE (2001). doi:10.1109/hicss.2001.927045
- 13.Manabe, Y., German, D.M., Inoue, K.: Analyzing the relationship between the license of packages and their files in free and open source software. In: Corral, L., Sillitti, A., Succi, G., Vlasenko, J., Wasserman, A.I. (eds.) OSS 2014. IAICT, vol. 427, pp. 51–60. Springer, Heidelberg (2014). doi:10.1007/978-3-642-55128-4_6 CrossRefGoogle Scholar
- 14.Mens, T., Fernández-Ramil, J., Degrandsart, S.: The evolution of Eclipse. In: International Conference on Software Maintenance, ICSM, pp. 386–395. IEEE (2008). doi:10.1109/ICSM.2008.4658087
- 16.Parreiras, F.S., Gröner, G., Schwabe, D., de Freitas Silva, F.: Towards a marketplace of open source software data. In: Hawaii International Conference on System Sciences, HICSS, pp. 3651–3660. IEEE (2015). doi:10.1109/HICSS.2015.439
- 17.Ramanathan, L., Iyer, S.K.: A qualitative study on the adoption of open source software in information technology outsourcing organizations. In: Damiani, E., Frati, F., Riehle, D., Wasserman, A.I. (eds.) OSS 2015. IAICT, vol. 451, pp. 103–113. Springer, Cham (2015). doi:10.1007/978-3-319-17837-0_10 Google Scholar
- 20.von Hippel, E.: Innovation by user communities: learning from open-source software. Sloan Manage. Rev. 42(4), 82–86 (2001)Google Scholar
- 22.Wermelinger, M., Yu, Y.: Analyzing the evolution of Eclipse plugins. In: International Working Conference on Mining Software Repositories, MSR, pp. 133–136. ACM (2008). doi:10.1145/1370750.1370783
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter’s Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter’s Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.