Cargando…

Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems

BACKGROUND: Architectural Technical Debt (ATD) in a software-intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future development activities. Despite the...

Descripción completa

Detalles Bibliográficos
Autores principales: Verdecchia, Roberto, Malavolta, Ivano, Lago, Patricia, Ozkaya, Ipek
Formato: Online Artículo Texto
Lenguaje:English
Publicado: PeerJ Inc. 2022
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9044209/
https://www.ncbi.nlm.nih.gov/pubmed/35494860
http://dx.doi.org/10.7717/peerj-cs.833
_version_ 1784695054891220992
author Verdecchia, Roberto
Malavolta, Ivano
Lago, Patricia
Ozkaya, Ipek
author_facet Verdecchia, Roberto
Malavolta, Ivano
Lago, Patricia
Ozkaya, Ipek
author_sort Verdecchia, Roberto
collection PubMed
description BACKGROUND: Architectural Technical Debt (ATD) in a software-intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future development activities. Despite the growing research interest in ATD, how to gain an informative and encompassing viewpoint of the ATD present in a software-intensive system is still an open problem. OBJECTIVE: In this study, we evaluate ATDx, a data-driven approach providing an overview of the ATD present in a software-intensive system. The approach, based on the analysis of a software portfolio, calculates severity levels of architectural rule violations via a clustering algorithm, and aggregates results into different ATD dimensions. METHOD: To evaluate ATDx, we implement an instance of the approach based on SonarQube, and run the analysis on the Apache and ONAP ecosystems. The analysis results are then shared with the portfolio contributors, who are invited to participate in an online survey designed to evaluate the representativeness and actionability of the approach. RESULTS: The survey results confirm the representativeness of the ATDx, in terms of both the ATDx analysis results and the used architectural technical debt dimensions. Results also showed the actionability of the approach, although to a lower extent when compared to the ATDx representativeness, with usage scenarios including refactoring, code review, communication, and ATD evolution analysis. CONCLUSIONS: With ATDx, we strive for the establishment of a sound, comprehensive, and intuitive architectural view of the ATD identifiable via source code analysis. The collected results are promising, and display both the representativeness and actionability of the approach. As future work, we plan to consolidate the approach via further empirical experimentation, by considering other development contexts (e.g., proprietary portfolios and other source code analysis tools), and enhancing the ATDx report capabilities.
format Online
Article
Text
id pubmed-9044209
institution National Center for Biotechnology Information
language English
publishDate 2022
publisher PeerJ Inc.
record_format MEDLINE/PubMed
spelling pubmed-90442092022-04-28 Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems Verdecchia, Roberto Malavolta, Ivano Lago, Patricia Ozkaya, Ipek PeerJ Comput Sci Computer Architecture BACKGROUND: Architectural Technical Debt (ATD) in a software-intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future development activities. Despite the growing research interest in ATD, how to gain an informative and encompassing viewpoint of the ATD present in a software-intensive system is still an open problem. OBJECTIVE: In this study, we evaluate ATDx, a data-driven approach providing an overview of the ATD present in a software-intensive system. The approach, based on the analysis of a software portfolio, calculates severity levels of architectural rule violations via a clustering algorithm, and aggregates results into different ATD dimensions. METHOD: To evaluate ATDx, we implement an instance of the approach based on SonarQube, and run the analysis on the Apache and ONAP ecosystems. The analysis results are then shared with the portfolio contributors, who are invited to participate in an online survey designed to evaluate the representativeness and actionability of the approach. RESULTS: The survey results confirm the representativeness of the ATDx, in terms of both the ATDx analysis results and the used architectural technical debt dimensions. Results also showed the actionability of the approach, although to a lower extent when compared to the ATDx representativeness, with usage scenarios including refactoring, code review, communication, and ATD evolution analysis. CONCLUSIONS: With ATDx, we strive for the establishment of a sound, comprehensive, and intuitive architectural view of the ATD identifiable via source code analysis. The collected results are promising, and display both the representativeness and actionability of the approach. As future work, we plan to consolidate the approach via further empirical experimentation, by considering other development contexts (e.g., proprietary portfolios and other source code analysis tools), and enhancing the ATDx report capabilities. PeerJ Inc. 2022-02-07 /pmc/articles/PMC9044209/ /pubmed/35494860 http://dx.doi.org/10.7717/peerj-cs.833 Text en ©2022 Verdecchia et al. https://creativecommons.org/licenses/by-nc/4.0/This is an open access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by-nc/4.0/) , which permits using, remixing, and building upon the work non-commercially, as long as it is properly attributed. For attribution, the original author(s), title, publication source (PeerJ Computer Science) and either DOI or URL of the article must be cited.
spellingShingle Computer Architecture
Verdecchia, Roberto
Malavolta, Ivano
Lago, Patricia
Ozkaya, Ipek
Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title_full Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title_fullStr Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title_full_unstemmed Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title_short Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems
title_sort empirical evaluation of an architectural technical debt index in the context of the apache and onap ecosystems
topic Computer Architecture
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9044209/
https://www.ncbi.nlm.nih.gov/pubmed/35494860
http://dx.doi.org/10.7717/peerj-cs.833
work_keys_str_mv AT verdecchiaroberto empiricalevaluationofanarchitecturaltechnicaldebtindexinthecontextoftheapacheandonapecosystems
AT malavoltaivano empiricalevaluationofanarchitecturaltechnicaldebtindexinthecontextoftheapacheandonapecosystems
AT lagopatricia empiricalevaluationofanarchitecturaltechnicaldebtindexinthecontextoftheapacheandonapecosystems
AT ozkayaipek empiricalevaluationofanarchitecturaltechnicaldebtindexinthecontextoftheapacheandonapecosystems