Home > Research > Publications & Outputs > Zones of pain

Electronic data

  • QUATIC_2020___Relationship_Between_Faults_and_Design_Metrics

    Rights statement: The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-030-58793-2_11

    Accepted author manuscript, 282 KB, PDF document

    Available under license: CC BY-NC: Creative Commons Attribution-NonCommercial 4.0 International License

Links

Text available via DOI:

View graph of relations

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

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published
Publication date31/08/2020
Host publicationQuality of Information and Communications Technology: 13th International Conference, QUATIC 2020, Faro, Portugal, September 9–11, 2020, Proceedings
EditorsMartin Shepperd, Fernando Brito e Abreu, Alberto Rodrigues da Silva, Ricardo Pérez-Castillo
Place of PublicationCham
PublisherSpringer Science and Business Media Deutschland GmbH
Pages135-143
Number of pages9
ISBN (print)9783030587925
<mark>Original language</mark>English

Publication series

NameCommunications in Computer and Information Science
PublisherSpringer
Volume1266
ISSN (Print)1865-0929
ISSN (electronic)1865-0937

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.

Bibliographic note

The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-030-58793-2_11