Decoupling level: A new metric for architectural maintenance complexity

Ran Mo, Yuanfang Cai, Rick Kazman, Lu Xiao, Qiong Feng

    Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

    74 Scopus citations

    Abstract

    Despite decades of research on software metrics, we still cannot reliably measure if one design is more maintainable than another. Software managers and architects need to understand whether their software architecture is\good enough", whether it is decaying over time and, if so, by how much. In this paper, we contribute a new architecture maintainability metric|Decoupling Level (DL)|derived from Baldwin and Clark's option theory. Instead of measuring how coupled an architecture is, we measure how well the software can be de-coupled into small and independently replaceable modules. We measured the DL for 108 open source projects and 21 industrial projects, each of which has multiple releases. Our main result shows that the larger the DL, the better the architecture. By\better" we mean: the more likely bugs and changes can be localized and separated, and the more likely that developers can make changes independently. The DL metric also opens the possibility of quantifying canonical principles of single responsibility and separation of concerns, aiding cross-project comparison and architecture decay monitoring.

    Original languageEnglish
    Title of host publicationProceedings - 2016 IEEE/ACM 38th IEEE International Conference on Software Engineering Companion, ICSE 2016
    Pages499-510
    Number of pages12
    ISBN (Electronic)9781450339001, 9781450342056
    DOIs
    StatePublished - 14 May 2016
    Event2016 IEEE/ACM 38th IEEE International Conference on Software Engineering, ICSE 2016 - Austin, United States
    Duration: 14 May 201622 May 2016

    Publication series

    NameProceedings - International Conference on Software Engineering
    Volume14-22-May-2016
    ISSN (Print)0270-5257

    Conference

    Conference2016 IEEE/ACM 38th IEEE International Conference on Software Engineering, ICSE 2016
    Country/TerritoryUnited States
    CityAustin
    Period14/05/1622/05/16

    Keywords

    • Software Architecture
    • Software Metrics
    • Software Quality

    Fingerprint

    Dive into the research topics of 'Decoupling level: A new metric for architectural maintenance complexity'. Together they form a unique fingerprint.

    Cite this