What is it about?

Software systems can accumulate design flaws known as "architectural smells": recognizable patterns of poor structure, like a component with too many dependencies, or a tangled inheritance hierarchy that's grown too deep or too wide. Most research studies these problems one at a time, as if each smell were an isolated issue. But is that really how they show up in real code? Using a large, automated data pipeline, we analyzed over 780 real-world Java and Python projects to see whether these smells tend to cluster together within the same component, rather than appearing in isolation. We found that architectural smells rarely occur alone. Components with tangled dependencies also tend to have poorly structured inheritance hierarchies, and vice versa; forming recognizable "clusters" of design problems that appear consistently across hundreds of projects, in both programming languages. Some smells, however, like overly large components, tend to appear more in isolation. This suggests that architectural degradation often isn't caused by a single bad decision, but by a chain of interconnected design problems compounding each other.

Featured Image

Why is it important?

Our study offers two useful takeaways. First, for practitioners, it reframes how to think about technical debt: since certain smells statistically travel together, a component with one dependency problem is also a strong candidate for having others, including structural issues in its class hierarchy. This means development teams can prioritize inspection more efficiently: components showing early signs of one type of smell deserve a broader check, not just a narrow fix. Second, for the research community, our findings suggest that studying architectural smells in isolation may give an incomplete picture of how software architecture actually degrades. If these problems consistently reinforce each other, then understanding their interactions may be key to better predicting and preventing serious maintainability issues down the line.

Perspectives

This paper marks two firsts for me: my first international collaboration, working with Prof. Bartosz Walter from Poznan University of Technology, and my second journal publication. It was interesting to see how someone from a different research group approaches the same kind of problem, and the collaboration pushed me to be more rigorous, especially in the statistical analysis.

Dr. Matteo Bochicchio
Universita degli Studi di Milano-Bicocca

Read the Original

This page is a summary of: Empirical study on the correlation among architectural smells, Information and Software Technology, November 2026, Elsevier,
DOI: 10.1016/j.infsof.2026.108283.
You can read the full text:

Read

Resources

Contributors

The following have contributed to this page