Deriving a Fault Architecture from Defect History

  • Authors:
  • A. von Mayrhauser;J. Wang;M. C. Ohlsson;C. Wohlin

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ISSRE '99 Proceedings of the 10th International Symposium on Software Reliability Engineering
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

As software systems mature, there is the danger that not only code decays, but software architecture as well. We adapt a reverse architecting technique to defect reports of a series of releases. Relationships among system components are identified based on whether they are involved in the same defect report, and for how many defect reports this occurs. There are degrees of fault-coupling between components depending on how often two components are involved in a defect fix. After these fault-coupling relationships between components are extracted, they are abstracted to the subsystem level. The resulting fault architecture figures show for each release what its most fault-prone relationships are. Comparing across releases shows whether some relationships between components are repeatedly fault prone, indicating an underlying systemic architecture problem. We illustrate our technique on a large commercial system consisting of over 800 KLOC of C, C++, and microcode.