Zones of pain : Visualising the relationship between software architecture and defects

Petrić, J. and Hall, T. and Bowes, D. (2020) Zones of pain : Visualising the relationship between software architecture and defects. In: Quality of Information and Communications Technology : 13th International Conference, QUATIC 2020, Faro, Portugal, September 9–11, 2020, Proceedings. Communications in Computer and Information Science . Springer Science and Business Media Deutschland GmbH, Cham, pp. 135-143. ISBN 9783030587925

[thumbnail of QUATIC_2020___Relationship_Between_Faults_and_Design_Metrics]
Text (QUATIC_2020___Relationship_Between_Faults_and_Design_Metrics)
QUATIC_2020_Relationship_Between_Faults_and_Design_Metrics.pdf - Accepted Version
Available under License Creative Commons Attribution-NonCommercial.

Download (288kB)

Abstract

Substantial development time is devoted to software maintenance and testing. As development resources are usually finite, there is a risk that some components receive insufficient effort for thorough testing. Architectural complexity (e.g. tight coupling) can make effective testing particularly challenging. Software components with high architectural complexity are more likely be defect–prone. The aim of this study is to investigate the relationship between established architectural attributes and defect–proneness. We used the architectural attributes: abstractness, instability and distance to measure the architectural complexity of software components. We investigated the ability of these attributes to discriminate between defective and non-defective components on four open source systems. We visualised defect–proneness by plotting architectural complexity and defectiveness using Martin’s ‘Zones of Pain’. Our results show that architecture has an inconsistent impact on defect–proneness. Some architecturally complex components seem immune to defects in some projects. In other projects architecturally complex components significantly suffer from defects. Where architectural complexity does increase defect–proneness the impact is strong. We recommend practitioners monitor the architectural complexity of their software components over time by visualising potential defect–proneness using Martin’s Zones of Pain.

Item Type:
Contribution in Book/Report/Proceedings
Additional Information:
The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-030-58793-2_11
Subjects:
?? software architecturesoftware defectssoftware evolutionhealthopen source softwareopen systemssoftware testingarchitectural attributescomplex componentsdevelopment resourcesdevelopment timeeffective testingopen source systempotential defectssoftware compon ??
ID Code:
148032
Deposited By:
Deposited On:
07 Oct 2020 12:45
Refereed?:
Yes
Published?:
Published
Last Modified:
29 Nov 2024 00:51