Detecting and preventing the architectural roots of bugs

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

    2 Scopus citations

    Abstract

    Numerous techniques have been proposed to locate buggy files in a code base, but the problem of fixing one bug unexpectedly affecting other files is persistent and prevailing. Our recent study revealed that buggy files are usually architecturally connected by architecture issues such as unstable interfaces and modularity violations. We aim to detect and prevent these architecture issues that are the root causes of defects. Our contributions include (1) a new architecture model,Design Rule Space (DRSpace), that can express structural relations, quality, and evolutionary information simultaneously; (2) a method of automatically extracting defect-prone architecture roots by combining static architecture analysis with software revision history data mining. The preliminary application of our approach to dozens of open source and industry projects has demonstrated its significant potential to inform developers about how software defects should be discovered, examined, and handled.

    Original languageEnglish
    Title of host publication22nd ACM SIGSOFT International Symposium on the Foundations of Software Engineering, FSE 2014 - Proceedings
    Pages811-813
    Number of pages3
    ISBN (Electronic)9781450330565
    DOIs
    StatePublished - 16 Nov 2014
    Event22nd ACM SIGSOFT International Symposium on the Foundations of Software Engineering, FSE 2014 - Hong Kong, China
    Duration: 16 Nov 201421 Nov 2014

    Publication series

    NameProceedings of the ACM SIGSOFT Symposium on the Foundations of Software Engineering
    Volume16-21-November-2014

    Conference

    Conference22nd ACM SIGSOFT International Symposium on the Foundations of Software Engineering, FSE 2014
    Country/TerritoryChina
    CityHong Kong
    Period16/11/1421/11/14

    Keywords

    • Architecture recovery
    • Software architecture
    • Software quality

    Fingerprint

    Dive into the research topics of 'Detecting and preventing the architectural roots of bugs'. Together they form a unique fingerprint.

    Cite this