Faculty of Computing ,Library and Information Science (FCLIS).
Permanent URI for this collection
Browse
Browsing Faculty of Computing ,Library and Information Science (FCLIS). by Author "Bamutura, David Sabiiti"
Now showing 1 - 2 of 2
Results Per Page
Sort Options
Item Open Access An Empirical Study of Bugs in Eclipse Stable Internal Interfaces.(Kabale University, 2024) Simon, Kawuma; Nabaasa, Evarist; Bamutura, David Sabiiti; Mabirizi, VicentThe 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.Item Open Access Eclipse Application Programming Interfaces:(VFAST Transactions on Software Engineering, 2025) Kawuma, Simon; Bamutura, David Sabiiti; Obbo, Aggrey; Mabirizi, Vicent; Kabarungi, Moreen; Nabaasa, EvaristEclipse Framework provides stable public APIs and unstable internal APIs. However, there is no guarantee that these interfaces are well tested because several bugs are reportedby interface users on Bugzilla-based Eclipse project. Applications that use buggy APIs risk failing if bugs are not fixed. Bug fixation and resolution takes at least 3 years thus API users have to fix the bugs themselves or abandon that particular API. The study aimed at identifying bug free interfaces in the Eclipse Framework and recommend them to application developers. In this research study, we used both SonarQube and SpotBugs static analysis tools to carry out an empirical investigation on 28 major Eclipse releases to establish the existence of bug free interfaces. We provide a dataset of 218K and 303K bug-free public API and internal API respectively. There exist over $85.9%$ and $88.2%$ bug-free public APIs and internal APIs, respectively, in Eclipse releases. Furthermore, over 80.8% and 44.2% are major and malicious code vulnerability bugs respectively and the average bug remediation effort is 105 days. Results from this study can be used by both interface providers and users as a starting point to know tested interfaces and also estimate efforts needed to fix bugs and an online dataset of bug-free interface is available on Github for developer.