Deriving a fault architecture from defect history
As software systems mature, there is the danger that not only code decays, but software architectures 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 defe...
Gespeichert in:
Hauptverfasser: | , , , |
---|---|
Format: | Tagungsbericht |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | As software systems mature, there is the danger that not only code decays, but software architectures 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. |
---|---|
ISSN: | 1071-9458 2332-6549 |
DOI: | 10.1109/ISSRE.1999.809335 |