On the relationship of code-anomaly agglomerations and architectural problems

Authors

  • Willian N. Oizumi OPUS Group - Informatics Department, PUC-Rio, Marques de Sao Vicente Street, 225, Rio de Janeiro, 22451-900, Brazil
  • Alessandro F. Garcia OPUS Group - Informatics Department, PUC-Rio, Marques de Sao Vicente Street, 225, Rio de Janeiro, 22451-900, Brazil
  • Thelma E. Colanzi Informatics Department, State University of Maringa, Colombo Avenue, 5790, Maringa, 87020-900, Brazil
  • Manuele Ferreira OPUS Group - Informatics Department, PUC-Rio, Marques de Sao Vicente Street, 225, Rio de Janeiro, 22451-900, Brazil
  • Arndt V. Staa OPUS Group - Informatics Department, PUC-Rio, Marques de Sao Vicente Street, 225, Rio de Janeiro, 22451-900, Brazil

Keywords:

Code anomaly, Architectural problem, Source code analysis

Abstract

Several projects have been discontinued in the history of the software industry due to the presence of software architecture problems. The identification of such problems in source code is often required in real project settings, but it is a time-consuming and challenging task. Some authors assume that architectural problems are reflected in source code through individual code anomalies. However, each architectural problem may be realized by multiple code anomalies, which are intertwined in several program elements. The relationships of these various code anomalies and their architecture problems counterparts are hard to reveal and characterize. To overcome this limitation, we are studying the architecture impact of a wide range of code-anomaly agglomerations. An agglomeration is a group of code anomalies that are explicitly related to each other in the implementation – e.g. two or more anomalies affecting the same class or method in the program. In our empirical study, we analyzed a total of 5418 code anomalies and 2229 agglomerations within 7 systems. In particular, our analysis focused in understanding (i) how agglomerations and architectural problems relate to each other, and (ii) how agglomerations can support the diagnosis of well-known architectural problems. We observed that most of the anomalous code elements related to architectural problems are members of one or more agglomerations. In addition, this study revealed that, for each agglomeration related to an architectural problem, an average of 2 to 4 anomalous code elements contribute to the architectural problem. Finally, the result of our study suggests that certain types of agglomerations are better indicators of architectural problems than others.

;  

Downloads

Download data is not yet available.

Downloads

Published

2015-06-10

How to Cite

Oizumi, W. N., Garcia, A. F., Colanzi, T. E., Ferreira, M., & Staa, A. V. (2015). On the relationship of code-anomaly agglomerations and architectural problems. Journal of Software Engineering Research and Development, 3, 11:1 – 11:22. Retrieved from https://sol.sbc.org.br/journals/index.php/jserd/article/view/411

Issue

Section

Research Article