Samenvatting
Today, when constructing a new software system, many developers build their systems on top of frameworks. Eclipse is such a framework that has been in existence for over a decade and has so far released 11 major releases. Like many other evolving software systems, the Eclipse platform has both stable and supported APIs ("good") and unstable, discouraged and unsupported non-APIs ("bad"). However, despite being discouraged by Eclipse, on our experience, the usage of "bad" APIs is relatively common in practice. In this paper, we study to what extent developers depend on "bad" non-APIs. We also study whether developers continue to use "bad" APIs, and what are the differences between the third-party plug-ins that use non-APIs and those that do not. Furthermore, we also study the commonly use "bad" APIs.
To answer these questions, we have conducted an empirical investigation based on a total of 512 Eclipse third-party plug-ins, altogether having a total of 1,873 versions. We discovered that 44% of the 512 analyzed Eclipse third-party plug-ins depends on "bad" non-APIs and that developers continue to use "bad" non-APIs. The empirical study also shows that plug-ins that use or extend at least one "bad" non-API are comparatively larger and use more functionality from Eclipse than those that use only "good" APIs. Furthermore, the findings show that the third-party plug-ins use a diverse set of "bad" APIs.
Keywords: Eclipse; Third-party plug-ins; APIs; non-APIs.
Originele taal-2 | Engels |
---|---|
Titel | Proceedings of the Sixth International Workshop on Software Quality and Maintainability (SQM 2012, Szeged, Hungary, March 27, 2012; satellite event of CSMR 2012) |
Redacteuren | Y. Kanellopoulos, Y. Yu |
Pagina's | 1-9 |
Status | Gepubliceerd - 2012 |
Evenement | conference; Sixth International Workshop on Software Quality and Maintainability (SQM 2012); 2012-03-27; 2012-03-27 - Duur: 27 mrt. 2012 → 27 mrt. 2012 |
Congres
Congres | conference; Sixth International Workshop on Software Quality and Maintainability (SQM 2012); 2012-03-27; 2012-03-27 |
---|---|
Periode | 27/03/12 → 27/03/12 |
Ander | Sixth International Workshop on Software Quality and Maintainability (SQM 2012) |