Concepedia

TLDR

Architectural smells—sub‑optimal design patterns at the system level—receive far less tooling and research attention than code smells, despite being more critical and harder to detect, remove, and refactor. This study introduces Arcan, an open‑source tool that detects architectural smells and evaluates its perceived usefulness by real‑life developers. Arcan’s detection techniques leverage graph‑database technology to scale efficiently across diverse dependency types and manage large volumes of architectural data.

Abstract

Code smells are sub-optimal coding circumstances such as blob classes or spaghetti code - they have received much attention and tooling in recent software engineering research. Higher-up in the abstraction level, architectural smells are problems or sub-optimal architectural patterns or other design-level characteristics. These have received significantly less attention even though they are usually considered more critical than code smells, and harder to detect, remove, and refactor. This paper describes an open-source tool called Arcan developed for the detection of architectural smells through an evaluation of several different architecture dependency issues. The detection techniques inside Arcan exploit graph database technology, allowing for high scalability in smells detection and better management of large amounts of dependencies of multiple kinds. In the scope of this paper, we focus on the evaluation of Arcan results carried out with real-life software developers to check if the architectural smells detected by Arcan are really perceived as problems and to get an overall usefulness evaluation of the tool.

References

YearCitations

Page 1