Eclipse Application Programming Interfaces: How Buggy Are They?
Eclipse Framework provides stable public APIs and unstable internal APIs. However, there is no guarantee that these interfaces are well tested because several bugs are reported by interface users on Bugzilla-based Eclipse project. Applications that use buggy APIs risk failing if bugs are not fixed....
Saved in:
Published in | VFAST Transactions on Software Engineering Vol. 13; no. 2; pp. 228 - 244 |
---|---|
Main Authors | , , , , , |
Format | Journal Article |
Language | English |
Published |
30.06.2025
|
Online Access | Get full text |
ISSN | 2411-6246 2309-3978 |
DOI | 10.21015/vtse.v13i2.2134 |
Cover
Abstract | Eclipse Framework provides stable public APIs and unstable internal APIs. However, there is no guarantee that these interfaces are well tested because several bugs are reported by 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. |
---|---|
AbstractList | Eclipse Framework provides stable public APIs and unstable internal APIs. However, there is no guarantee that these interfaces are well tested because several bugs are reported by 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. |
Author | Bamutura, David Sabiiti Obbo, Aggrey Mabirizi, Vicent Kabarungi, Moreen Kawuma, Simon Nabaasa, Evarist |
Author_xml | – sequence: 1 givenname: Simon orcidid: 0000-0001-6988-6418 surname: Kawuma fullname: Kawuma, Simon – sequence: 2 givenname: David Sabiiti orcidid: 0000-0002-5875-9269 surname: Bamutura fullname: Bamutura, David Sabiiti – sequence: 3 givenname: Aggrey orcidid: 0000-0003-3444-5369 surname: Obbo fullname: Obbo, Aggrey – sequence: 4 givenname: Vicent orcidid: 0000-0001-8990-4003 surname: Mabirizi fullname: Mabirizi, Vicent – sequence: 5 givenname: Moreen orcidid: 0009-0007-3454-9180 surname: Kabarungi fullname: Kabarungi, Moreen – sequence: 6 givenname: Evarist orcidid: 0000-0002-1722-767X surname: Nabaasa fullname: Nabaasa, Evarist |
BookMark | eNot0MFPwjAUBvDGYCIid4_9B4Zt31vXeSGTgJCQ6IH70nbdbALb0k7M_nsBPb0v7_Dly--RTNqudYQ8c7YQnPH05TxEtzhz8OLyALwjUwEsTyDP1OSSkfNECpQPZB6jNwwxk5hCNiXLtT36Pjpa9P3RWz34rqWfoWuCPp1829BdO7hQa-viK912P_Ttu2lGWgRHD19uXD6R-1ofo5v_3xk5bNaH1TbZf7zvVsU-sQowyXIlDDcmrSRDI6ucgdNowYBE0BLytFaozGVyykEjWFUZ7lSVGYTaiAxmhP3V2tDFGFxd9sGfdBhLzsobQXklKG8E5ZUAfgGzCVFe |
Cites_doi | 10.1007/978-3-030-58793-2_12 10.1109/RE.2015.7320414 10.1109/ICSE-C.2017.122 10.1109/ICPC.2019.00040 10.1109/MSR.2012.6224267 10.1145/3127005.3127009 10.1007/978-3-030-14687-0_15 10.1109/SANER48275.2020.9054821 10.1007/s11219-013-9221-3 10.1109/TSE.2014.2367027 10.1007/s10664-023-10318-7 10.1109/TSE.2018.2864217 10.1109/ICPC.2016.7503716 10.1007/s10664-019-09750-5 10.1145/2950290.2950306 10.1016/j.jss.2020.110882 10.1109/TR.2015.2484074 10.1007/978-3-319-06498-7_12 10.1109/TSE.2020.3004525 10.1109/CSMR.2013.14 10.5121/ijsea.2018.9502 10.1109/ICSME.2019.00010 10.1007/s10664-022-10213-7 10.1016/j.jss.2022.111425 10.1109/TSE.2020.2996975 10.1109/SANER.2019.8668018 10.1007/s00500-021-05689-2 10.1007/s11219-016-9318-6 10.1109/SCAM.2012.10 |
ContentType | Journal Article |
DBID | AAYXX CITATION |
DOI | 10.21015/vtse.v13i2.2134 |
DatabaseName | CrossRef |
DatabaseTitle | CrossRef |
DatabaseTitleList | CrossRef |
DeliveryMethod | fulltext_linktorsrc |
EISSN | 2309-3978 |
EndPage | 244 |
ExternalDocumentID | 10_21015_vtse_v13i2_2134 |
GroupedDBID | AAYXX CITATION M~E |
ID | FETCH-LOGICAL-c834-7982b1bb5d604b6d903ea4c3b3643a6395f848b309513a43c8db1e8d7b43fb273 |
ISSN | 2411-6246 |
IngestDate | Thu Jul 31 00:34:50 EDT 2025 |
IsDoiOpenAccess | false |
IsOpenAccess | true |
IsPeerReviewed | false |
IsScholarly | false |
Issue | 2 |
Language | English |
LinkModel | OpenURL |
MergedId | FETCHMERGED-LOGICAL-c834-7982b1bb5d604b6d903ea4c3b3643a6395f848b309513a43c8db1e8d7b43fb273 |
ORCID | 0000-0003-3444-5369 0000-0002-1722-767X 0000-0002-5875-9269 0000-0001-6988-6418 0009-0007-3454-9180 0000-0001-8990-4003 |
OpenAccessLink | https://vfast.org/journals/index.php/VTSE/article/download/2134/1722 |
PageCount | 17 |
ParticipantIDs | crossref_primary_10_21015_vtse_v13i2_2134 |
PublicationCentury | 2000 |
PublicationDate | 2025-06-30 |
PublicationDateYYYYMMDD | 2025-06-30 |
PublicationDate_xml | – month: 06 year: 2025 text: 2025-06-30 day: 30 |
PublicationDecade | 2020 |
PublicationTitle | VFAST Transactions on Software Engineering |
PublicationYear | 2025 |
References | 61440 61441 61420 61442 61421 61443 61422 61444 61423 61445 61424 61446 61425 61447 61426 61448 61405 61427 61406 61428 61418 61419 61430 61431 61410 61432 61411 61433 61412 61434 61413 61435 61414 61436 61415 61437 61416 61438 61417 61439 61407 61429 61408 61409 |
References_xml | – ident: 61420 doi: 10.1007/978-3-030-58793-2_12 – ident: 61407 – ident: 61440 doi: 10.1109/RE.2015.7320414 – ident: 61409 – ident: 61444 doi: 10.1109/ICSE-C.2017.122 – ident: 61445 doi: 10.1109/ICPC.2019.00040 – ident: 61422 – ident: 61433 doi: 10.1109/MSR.2012.6224267 – ident: 61418 – ident: 61443 – ident: 61437 – ident: 61430 doi: 10.1145/3127005.3127009 – ident: 61410 – ident: 61424 doi: 10.1007/978-3-030-14687-0_15 – ident: 61408 – ident: 61427 – ident: 61426 doi: 10.1109/SANER48275.2020.9054821 – ident: 61412 doi: 10.1007/s11219-013-9221-3 – ident: 61432 doi: 10.1109/TSE.2014.2367027 – ident: 61423 – ident: 61415 doi: 10.1007/s10664-023-10318-7 – ident: 61441 doi: 10.1109/TSE.2018.2864217 – ident: 61406 doi: 10.1109/ICPC.2016.7503716 – ident: 61421 – ident: 61425 doi: 10.1007/s10664-019-09750-5 – ident: 61413 doi: 10.1145/2950290.2950306 – ident: 61416 doi: 10.1016/j.jss.2020.110882 – ident: 61419 – ident: 61442 – ident: 61438 doi: 10.1109/TR.2015.2484074 – ident: 61439 doi: 10.1007/978-3-319-06498-7_12 – ident: 61446 – ident: 61447 doi: 10.1109/TSE.2020.3004525 – ident: 61414 doi: 10.1109/CSMR.2013.14 – ident: 61429 doi: 10.5121/ijsea.2018.9502 – ident: 61417 doi: 10.1109/ICSME.2019.00010 – ident: 61434 doi: 10.1007/s10664-022-10213-7 – ident: 61436 doi: 10.1016/j.jss.2022.111425 – ident: 61448 doi: 10.1109/TSE.2020.2996975 – ident: 61405 doi: 10.1109/SANER.2019.8668018 – ident: 61435 doi: 10.1007/s00500-021-05689-2 – ident: 61431 doi: 10.1007/s11219-016-9318-6 – ident: 61428 doi: 10.1109/SCAM.2012.10 – ident: 61411 |
SSID | ssib044764537 |
Score | 1.9151645 |
Snippet | Eclipse Framework provides stable public APIs and unstable internal APIs. However, there is no guarantee that these interfaces are well tested because several... |
SourceID | crossref |
SourceType | Index Database |
StartPage | 228 |
Title | Eclipse Application Programming Interfaces: How Buggy Are They? |
Volume | 13 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1NaxsxEBVueumltLSlXyl76KWEda2P1Wp7CU5xCIH0Yjfktkha2ezBTnHXCcmhP6G_OTPS7lo1DTS9LEaYwet5jN5o3owI-agMkIKRhbTEuTwVTtNUSyVTqvORoPNCM46Nwmff5Ml3cXqRXQwGvyPV0qYxQ3v7176S__EqrIFfsUv2AZ7tjcICfAb_whM8DM9_8vHE4kG-C1QynL2h8h8FV8ugBMBLqFF0hYk_3h53tFksbg7Ga4dSi5sdVd_58Xg6C-POQ7uDLyVMIVBfoz4sGl3Yh2l9vVl6-jmtl9uC_pFe4qgS3YvmD6ba1HVT90e6xoT2mgWk-5EO2dTr-tbrC85r20ly2jMJlnUCui50AS2gqWTt4aILa1jLAfaj_oi9PMIYiwNp2zIe9mQWZkTuhntIV_1ojKvmpxteUV6zIQ6o225tXTl_Z8frdYiQAXkbJVoovYUSLTwij1me-7L_2a9JF5-EyKXI_BjW_gVD5dsb-bzzMyKmE1GW2TPytM01knEAznMycKsX5LAFTRKBJolAk2xB8yUByCQeMmDEJQiZw5dkdjyZfT1J21s0Uqu4SPNCMUONySo5EkZWxYg7LSw3HLioBn6azZVQhiPV5lpwqypDnapyI_jcALl9RfZWlyv3miRFJmCBWstYJTLLCkkrqyEKSAgErNJvyKfuhcsfYVZKed8__PYB331HnmxB9p7sNeuN2wcq2JgP3j933clfsA |
linkProvider | ISSN International Centre |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Eclipse+Application+Programming+Interfaces%3A+How+Buggy+Are+They%3F&rft.jtitle=VFAST+Transactions+on+Software+Engineering&rft.au=Kawuma%2C+Simon&rft.au=Bamutura%2C+David+Sabiiti&rft.au=Obbo%2C+Aggrey&rft.au=Mabirizi%2C+Vicent&rft.date=2025-06-30&rft.issn=2411-6246&rft.eissn=2309-3978&rft.volume=13&rft.issue=2&rft.spage=228&rft.epage=244&rft_id=info:doi/10.21015%2Fvtse.v13i2.2134&rft.externalDBID=n%2Fa&rft.externalDocID=10_21015_vtse_v13i2_2134 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2411-6246&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2411-6246&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2411-6246&client=summon |