Eclipse API usage: the good and the bad
Gespeichert in:
Verfasser / Beitragende:
[John Businge, Alexander Serebrenik, Mark van den Brand]
Ort, Verlag, Jahr:
2015
Enthalten in:
Software Quality Journal, 23/1(2015-03-01), 107-141
Format:
Artikel (online)
Online Zugang:
| LEADER | caa a22 4500 | ||
|---|---|---|---|
| 001 | 605495602 | ||
| 003 | CHVBK | ||
| 005 | 20210128100532.0 | ||
| 007 | cr unu---uuuuu | ||
| 008 | 210128e20150301xx s 000 0 eng | ||
| 024 | 7 | 0 | |a 10.1007/s11219-013-9221-3 |2 doi |
| 035 | |a (NATIONALLICENCE)springer-10.1007/s11219-013-9221-3 | ||
| 245 | 0 | 0 | |a Eclipse API usage: the good and the bad |h [Elektronische Daten] |c [John Businge, Alexander Serebrenik, Mark van den Brand] |
| 520 | 3 | |a Today, when constructing software systems, many developers build their systems on top of frameworks. Eclipse is such a framework that has been in existence for over a decade. Like many other evolving software systems, the Eclipse platform has both stable and supported interfaces ("good”) and unstable, discouraged and unsupported interfaces ("bad”). In this study, we investigate Eclipse interface usage by Eclipse third-party plug-ins (ETPs) based on whether they use bad interfaces or not. The investigations, based on empirical analysis present the following observations. First, we discovered that 44% of the 512 analyzed Eclipse third-party plug-ins depend on "bad” interfaces and that developers continue to use "bad” interfaces. Second, we have observed that plug-ins that use or extend at least one "bad” interface are comparatively larger and use more functionality from Eclipse than those that use only "good” interfaces. Third, the findings show that the ETPs use a diverse set of "bad” interfaces. Fourth, we observed that the reason why the bad interfaces are being eliminated from the ETPs' source code is, because (ETP developers believe) these non-APIs will cause incompatibilities when a version of the ETP is ported to new Eclipse SDK release. Finally, we observed that when developers eliminate problematic "bad” interfaces, they either re-implement the same functionality in their own API, find equivalent SDK good interfaces, or completely delete the entities in the ETPs' source code that use the functionality from the "bad” interfaces. | |
| 540 | |a Springer Science+Business Media New York, 2013 | ||
| 690 | 7 | |a Eclipse |2 nationallicence | |
| 690 | 7 | |a API usage |2 nationallicence | |
| 690 | 7 | |a Software evolution |2 nationallicence | |
| 700 | 1 | |a Businge |D John |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | |
| 700 | 1 | |a Serebrenik |D Alexander |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | |
| 700 | 1 | |a van den Brand |D Mark |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | |
| 773 | 0 | |t Software Quality Journal |d Springer US; http://www.springer-ny.com |g 23/1(2015-03-01), 107-141 |x 0963-9314 |q 23:1<107 |1 2015 |2 23 |o 11219 | |
| 856 | 4 | 0 | |u https://doi.org/10.1007/s11219-013-9221-3 |q text/html |z Onlinezugriff via DOI |
| 898 | |a BK010053 |b XK010053 |c XK010000 | ||
| 900 | 7 | |a Metadata rights reserved |b Springer special CC-BY-NC licence |2 nationallicence | |
| 908 | |D 1 |a research-article |2 jats | ||
| 949 | |B NATIONALLICENCE |F NATIONALLICENCE |b NL-springer | ||
| 950 | |B NATIONALLICENCE |P 856 |E 40 |u https://doi.org/10.1007/s11219-013-9221-3 |q text/html |z Onlinezugriff via DOI | ||
| 950 | |B NATIONALLICENCE |P 700 |E 1- |a Businge |D John |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | ||
| 950 | |B NATIONALLICENCE |P 700 |E 1- |a Serebrenik |D Alexander |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | ||
| 950 | |B NATIONALLICENCE |P 700 |E 1- |a van den Brand |D Mark |u Eindhoven University of Technology, Eindhoven, The Netherlands |4 aut | ||
| 950 | |B NATIONALLICENCE |P 773 |E 0- |t Software Quality Journal |d Springer US; http://www.springer-ny.com |g 23/1(2015-03-01), 107-141 |x 0963-9314 |q 23:1<107 |1 2015 |2 23 |o 11219 | ||