A Case Study of Measuring Degeneration of Software Architectures from a Defect Perspective

Zude Li,Jun Long
DOI: https://doi.org/10.1109/APSEC.2011.51
2011-01-01
Abstract:It is considered that software architecture usually degrades as the system evolves. This phenomenon is termed as architectural degeneration. This paper describes a defect perspective for measuring architectural degeneration. Several metrics are defined for the measurement performed on two versions of a commercial compiler system. The main results are: (1) the architecture degenerates as the system evolves across the two versions, e.g., the quantity of code files changed to fix a source line of code in the following version increased by 90%; and (2) a few, correlated, components ("hotspots") in the architecture contribute more to the degeneration than other components. This implies that measuring architectural degeneration from the defect perspective can offer a potential to improve system quality and reduce maintenance costs.
What problem does this paper attempt to address?