How Stable are Eclipse Application Framework Internal Interfaces?
dc.contributor.author | Businge, John | |
dc.contributor.author | Kawuma, Simon | |
dc.contributor.author | Openja, Moses | |
dc.contributor.author | Bainomugisha, Engineer | |
dc.contributor.author | Serebrenik, Alexander | |
dc.date.accessioned | 2023-01-26T20:19:28Z | |
dc.date.available | 2023-01-26T20:19:28Z | |
dc.date.issued | 2019 | |
dc.description.abstract | Eclipse framework provides two interfaces: stable interfaces (APIs) and unstable interfaces (non-APIs). Despite the non-APIs being discouraged and unsupported, their usage is not uncommon. Previous studies showed that applications using relatively old non-APIs are more likely to be compatible with new releases compared to the ones that used newly introduced non-APIs; that the growth rate of non-APIs is nearly twice as much as that of APIs; and that the promotion of non-API to APIs happens at a slow pace since API providers have no assistance to identify public interface candidates. Motivated by these findings, our main aim was to empirically investigate the entire population (2,380K) of non-APIs to find the non-APIs that remain stable for a long period of time. We employ cross-project clone detection to identify whether non- APIs introduced in a given Eclipse release remain stable over successive releases. We provide a dataset of 327K stable non- API methods that can be used by both Eclipse interface providers as possible candidates of promotion. Instead of promoting non- APIs which are too fine-grained, we summarized the non-API methods groups in given classes that are stable together and present class-level non-APIs that possible candidates promotion. We have shown that it is possible to predict the stability of a non-API in subsequent Eclipse releases with a precision of 56%, a recall of 96% and an AUC of 92% and an Fmeasure of 81%. We have also shown that the metrics of length of a method and number of method parameters in a non- API method are very good predictors for the stability of the non-API in successive Eclipse releases. The results provided can help the API providers to estimate a priori how much work could be involved in performing the promotion. | en_US |
dc.identifier.citation | Businge, J., Kawuma, S., Openja, M., Bainomugisha, E., & Serebrenik, A. (2019, February). How stable are eclipse application framework internal interfaces?. In 2019 IEEE 26th international conference on software analysis, evolution and reengineering (SANER) (pp. 117-127). IEEE. | en_US |
dc.identifier.uri | https://ieeexplore.ieee.org/abstract/document/8668018/ | |
dc.identifier.uri | https://nru.uncst.go.ug/handle/123456789/7294 | |
dc.language.iso | en | en_US |
dc.publisher | IEEE | en_US |
dc.subject | Eclipse | en_US |
dc.subject | Framework | en_US |
dc.subject | Internal Interfaces | en_US |
dc.subject | Internal Interfaces Promotion | en_US |
dc.subject | Internal Interfaces Stability | en_US |
dc.subject | Software Evolution | en_US |
dc.title | How Stable are Eclipse Application Framework Internal Interfaces? | en_US |
dc.type | Article | en_US |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- How Stable are Eclipse Application Framework.pdf
- Size:
- 1.02 MB
- Format:
- Adobe Portable Document Format
- Description:
- Article
License bundle
1 - 1 of 1
No Thumbnail Available
- Name:
- license.txt
- Size:
- 1.71 KB
- Format:
- Item-specific license agreed upon to submission
- Description: