An Empirical Study of Bugs in Eclipse Stable Internal Interfaces.
The Eclipse framework is a popular and widely used framework that has been evolving for over a decade. The framework provides both stable interfaces (APIs) and unstable interfaces (non-APIs). Despite being discouraged by Eclipse, application developers often use non-APIs which cause their systems to...
Saved in:
Main Authors: | , , , |
---|---|
Format: | Article |
Language: | en_US |
Published: |
Kabale University
2024
|
Subjects: | |
Online Access: | http://hdl.handle.net/20.500.12493/2002 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
_version_ | 1813635238999359488 |
---|---|
author | Simon, Kawuma Nabaasa, Evarist Bamutura, David Sabiiti Mabirizi, Vicent |
author_facet | Simon, Kawuma Nabaasa, Evarist Bamutura, David Sabiiti Mabirizi, Vicent |
author_sort | Simon, Kawuma |
collection | KAB-DR |
description | The Eclipse framework is a popular and widely used framework that has been evolving for over a decade. The framework provides both stable interfaces (APIs) and unstable interfaces (non-APIs). Despite being discouraged by Eclipse, application developers often use non-APIs which cause their systems to fail when ported to new framework releases. 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. Furthermore, from our previous study about the stability of Eclipse internal interfaces, we discovered that there exist 327K stable non-API methods as the Eclipse framework evolves. In the same study, we recommended that 327K stable non-API methods can be used by Eclipse interface providers as possible candidates for promotion to stable interfaces. However, since non-APIs are unsupported and considered to be immature i.e., can contain bugs, to this end, there exists a need to first investigate the stable non-APIs for possible bugs before they can be promoted to APIs. In this study, we empirically investigated the stable non-API for possible bugs using the Sonarqube software quality tool. We discovered that over 79.8% of classes containing old stable non-API methods have zero bugs. Results from this study can be used by both interface providers and users as a starting point to analyze which interfaces are well tested and also estimate how much work could be involved when performing bug fixing for a given eclipse release. |
format | Article |
id | oai:idr.kab.ac.ug:20.500.12493-2002 |
institution | KAB-DR |
language | en_US |
publishDate | 2024 |
publisher | Kabale University |
record_format | dspace |
spelling | oai:idr.kab.ac.ug:20.500.12493-20022024-08-01T00:01:38Z An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. Simon, Kawuma Nabaasa, Evarist Bamutura, David Sabiiti Mabirizi, Vicent Eclipse Interfaces Stability Promotion Faults Bugs Evolution. The Eclipse framework is a popular and widely used framework that has been evolving for over a decade. The framework provides both stable interfaces (APIs) and unstable interfaces (non-APIs). Despite being discouraged by Eclipse, application developers often use non-APIs which cause their systems to fail when ported to new framework releases. 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. Furthermore, from our previous study about the stability of Eclipse internal interfaces, we discovered that there exist 327K stable non-API methods as the Eclipse framework evolves. In the same study, we recommended that 327K stable non-API methods can be used by Eclipse interface providers as possible candidates for promotion to stable interfaces. However, since non-APIs are unsupported and considered to be immature i.e., can contain bugs, to this end, there exists a need to first investigate the stable non-APIs for possible bugs before they can be promoted to APIs. In this study, we empirically investigated the stable non-API for possible bugs using the Sonarqube software quality tool. We discovered that over 79.8% of classes containing old stable non-API methods have zero bugs. Results from this study can be used by both interface providers and users as a starting point to analyze which interfaces are well tested and also estimate how much work could be involved when performing bug fixing for a given eclipse release. 2024-05-27T14:42:44Z 2024-05-27T14:42:44Z 2024 Article Simon, K. et al. (2024). An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. Kabale: Kabale University. http://hdl.handle.net/20.500.12493/2002 en_US application/pdf Kabale University |
spellingShingle | Eclipse Interfaces Stability Promotion Faults Bugs Evolution. Simon, Kawuma Nabaasa, Evarist Bamutura, David Sabiiti Mabirizi, Vicent An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title | An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title_full | An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title_fullStr | An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title_full_unstemmed | An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title_short | An Empirical Study of Bugs in Eclipse Stable Internal Interfaces. |
title_sort | empirical study of bugs in eclipse stable internal interfaces |
topic | Eclipse Interfaces Stability Promotion Faults Bugs Evolution. |
url | http://hdl.handle.net/20.500.12493/2002 |
work_keys_str_mv | AT simonkawuma anempiricalstudyofbugsineclipsestableinternalinterfaces AT nabaasaevarist anempiricalstudyofbugsineclipsestableinternalinterfaces AT bamuturadavidsabiiti anempiricalstudyofbugsineclipsestableinternalinterfaces AT mabirizivicent anempiricalstudyofbugsineclipsestableinternalinterfaces AT simonkawuma empiricalstudyofbugsineclipsestableinternalinterfaces AT nabaasaevarist empiricalstudyofbugsineclipsestableinternalinterfaces AT bamuturadavidsabiiti empiricalstudyofbugsineclipsestableinternalinterfaces AT mabirizivicent empiricalstudyofbugsineclipsestableinternalinterfaces |