Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

8 Citations (Scopus)

Abstract

Incompatibility between applications developed on top of frameworks with new versions of the frameworks is a big nightmare to both developers and users of the applications. Understanding the factors that cause incompatibilities is a step to solving them. One such direction is to analyze and identify parts of the reusable code of the framework that are prone to change. In this study we carried out an empirical investigation on 11 Eclipse SDK releases (1.0 to 3.7) and 288 Eclipse third-party plug-ins (ETPs) with two main goals: First, to determine the relationship between the age of Eclipse non-APIs (internal implementations) used by an ETP and the compatibility of the ETP. We found that third-party plug-in that use only old non-APIs have a high chance of compatibility success in new SDK releases compared to those that use at least one newly introduced non-API. Second, our goal was to build and test a predictive model for the compatibility of an ETP, supported in a given SDK release in a newer SDK release. Our findings produced 23 statistically significant prediction models having high values of the strength of the relationship between the predictors and the prediction (logistic regression R2 of up to 0.810). In addition, the results from model testing indicate high values of up to 100% of precision and recall and up to 98% of accuracy of the predictions. Finally, despite the fact that SDK releases with API breaking changes, i.e., 1.0, 2.0 and 3.0, have got nothing to do with non-APIs, our findings reveal that non-APIs introduced in these releases have a significant impact on the compatibility of the ETPs that use them.
Original languageEnglish
Title of host publicationProceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy
Place of PublicationPiscataway
PublisherInstitute of Electrical and Electronics Engineers
Pages164-173
ISBN (Print)978-1-4673-2398-7
DOIs
Publication statusPublished - 2012
Eventconference; 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation; 2012-09-23; 2012-09-24 -
Duration: 23 Sep 201224 Sep 2012

Conference

Conferenceconference; 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation; 2012-09-23; 2012-09-24
Period23/09/1224/09/12
Other2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation

Fingerprint

Application programming interfaces (API)
Logistics
Testing

Cite this

Businge, J., Serebrenik, A., & Brand, van den, M. G. J. (2012). Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases. In Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy (pp. 164-173). Piscataway: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/SCAM.2012.10
Businge, J. ; Serebrenik, A. ; Brand, van den, M.G.J. / Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases. Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy. Piscataway : Institute of Electrical and Electronics Engineers, 2012. pp. 164-173
@inproceedings{5a8a1198fde6480e9a327d4836c8dd67,
title = "Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases",
abstract = "Incompatibility between applications developed on top of frameworks with new versions of the frameworks is a big nightmare to both developers and users of the applications. Understanding the factors that cause incompatibilities is a step to solving them. One such direction is to analyze and identify parts of the reusable code of the framework that are prone to change. In this study we carried out an empirical investigation on 11 Eclipse SDK releases (1.0 to 3.7) and 288 Eclipse third-party plug-ins (ETPs) with two main goals: First, to determine the relationship between the age of Eclipse non-APIs (internal implementations) used by an ETP and the compatibility of the ETP. We found that third-party plug-in that use only old non-APIs have a high chance of compatibility success in new SDK releases compared to those that use at least one newly introduced non-API. Second, our goal was to build and test a predictive model for the compatibility of an ETP, supported in a given SDK release in a newer SDK release. Our findings produced 23 statistically significant prediction models having high values of the strength of the relationship between the predictors and the prediction (logistic regression R2 of up to 0.810). In addition, the results from model testing indicate high values of up to 100{\%} of precision and recall and up to 98{\%} of accuracy of the predictions. Finally, despite the fact that SDK releases with API breaking changes, i.e., 1.0, 2.0 and 3.0, have got nothing to do with non-APIs, our findings reveal that non-APIs introduced in these releases have a significant impact on the compatibility of the ETPs that use them.",
author = "J. Businge and A. Serebrenik and {Brand, van den}, M.G.J.",
year = "2012",
doi = "10.1109/SCAM.2012.10",
language = "English",
isbn = "978-1-4673-2398-7",
pages = "164--173",
booktitle = "Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy",
publisher = "Institute of Electrical and Electronics Engineers",
address = "United States",

}

Businge, J, Serebrenik, A & Brand, van den, MGJ 2012, Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases. in Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy. Institute of Electrical and Electronics Engineers, Piscataway, pp. 164-173, conference; 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation; 2012-09-23; 2012-09-24, 23/09/12. https://doi.org/10.1109/SCAM.2012.10

Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases. / Businge, J.; Serebrenik, A.; Brand, van den, M.G.J.

Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy. Piscataway : Institute of Electrical and Electronics Engineers, 2012. p. 164-173.

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

TY - GEN

T1 - Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases

AU - Businge, J.

AU - Serebrenik, A.

AU - Brand, van den, M.G.J.

PY - 2012

Y1 - 2012

N2 - Incompatibility between applications developed on top of frameworks with new versions of the frameworks is a big nightmare to both developers and users of the applications. Understanding the factors that cause incompatibilities is a step to solving them. One such direction is to analyze and identify parts of the reusable code of the framework that are prone to change. In this study we carried out an empirical investigation on 11 Eclipse SDK releases (1.0 to 3.7) and 288 Eclipse third-party plug-ins (ETPs) with two main goals: First, to determine the relationship between the age of Eclipse non-APIs (internal implementations) used by an ETP and the compatibility of the ETP. We found that third-party plug-in that use only old non-APIs have a high chance of compatibility success in new SDK releases compared to those that use at least one newly introduced non-API. Second, our goal was to build and test a predictive model for the compatibility of an ETP, supported in a given SDK release in a newer SDK release. Our findings produced 23 statistically significant prediction models having high values of the strength of the relationship between the predictors and the prediction (logistic regression R2 of up to 0.810). In addition, the results from model testing indicate high values of up to 100% of precision and recall and up to 98% of accuracy of the predictions. Finally, despite the fact that SDK releases with API breaking changes, i.e., 1.0, 2.0 and 3.0, have got nothing to do with non-APIs, our findings reveal that non-APIs introduced in these releases have a significant impact on the compatibility of the ETPs that use them.

AB - Incompatibility between applications developed on top of frameworks with new versions of the frameworks is a big nightmare to both developers and users of the applications. Understanding the factors that cause incompatibilities is a step to solving them. One such direction is to analyze and identify parts of the reusable code of the framework that are prone to change. In this study we carried out an empirical investigation on 11 Eclipse SDK releases (1.0 to 3.7) and 288 Eclipse third-party plug-ins (ETPs) with two main goals: First, to determine the relationship between the age of Eclipse non-APIs (internal implementations) used by an ETP and the compatibility of the ETP. We found that third-party plug-in that use only old non-APIs have a high chance of compatibility success in new SDK releases compared to those that use at least one newly introduced non-API. Second, our goal was to build and test a predictive model for the compatibility of an ETP, supported in a given SDK release in a newer SDK release. Our findings produced 23 statistically significant prediction models having high values of the strength of the relationship between the predictors and the prediction (logistic regression R2 of up to 0.810). In addition, the results from model testing indicate high values of up to 100% of precision and recall and up to 98% of accuracy of the predictions. Finally, despite the fact that SDK releases with API breaking changes, i.e., 1.0, 2.0 and 3.0, have got nothing to do with non-APIs, our findings reveal that non-APIs introduced in these releases have a significant impact on the compatibility of the ETPs that use them.

U2 - 10.1109/SCAM.2012.10

DO - 10.1109/SCAM.2012.10

M3 - Conference contribution

SN - 978-1-4673-2398-7

SP - 164

EP - 173

BT - Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy

PB - Institute of Electrical and Electronics Engineers

CY - Piscataway

ER -

Businge J, Serebrenik A, Brand, van den MGJ. Compatibility prediction of Eclipse third-party plug-ins in new Eclipse releases. In Proceedings of the 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), September 23-24, 2012, Riva el Garda, Italy. Piscataway: Institute of Electrical and Electronics Engineers. 2012. p. 164-173 https://doi.org/10.1109/SCAM.2012.10