Challenges of SonarQube Plug-In Maintenance

Abstract

The SONARQUBE platform is a widely used open-source tool for continuous code quality management. It provides an API to extend the platform with plug-ins to upload additional data or to enrich its functionalities. The SourceMeter plug-in for SONARQUBE platform integrates the SourceMeter static source code analyzer tool into the SONARQUBE platform, i.e., uploads the analysis results and extends the GUI to be able to present the new results. The first version of the plug-in was released in 2015 and was compatible with the corresponding SONARQUBE version. However, the platform - and what is more important, its API - have evolved a lot since then, therefore the plug-in had to be adapted to the new API. It was not just a slight adjustment, though, because we had to redesign and reimplement the whole UI and, at the same time, perform significant alterations in other parts of the plug-in as well. Besides, we examined the effect of the API evolution on other open-source plug-ins and found that most of them still remain compatible with the latest version, even if they have not been updated alongside the underlying API modifications. The reason for this is that these plug-ins use only a small part of the API that have not changed over time.

Publication
Proceedings of the 26th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), , Pages 574–578

BibTeX:

@InProceedings{BMS19,
    author       = {Bence, Barta and G{\"u}nter, Manz and Istv{\'a}n, Siket and Rudolf, Ferenc},
    title        = {Challenges of SonarQube Plug-In Maintenance},
    booktitle    = {Proceedings of the 26th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)},
    year         = {2019},
    pages        = {574--578},
    month        = feb,
    organization = {IEEE},
    doi          = {10.1109/SANER.2019.8667988},
    url          = {https://ieeexplore.ieee.org/document/8667988},
}