A tactic-centric approach for automating traceability of quality concerns
Abstract
The software architectures of business, mission, or safety critical systems must be carefully designed to balance an exacting set of quality concerns describing characteristics such as security, reliability, and performance. Unfortunately, software architectures tend to degrade over time as maintainers modify the system without understanding the underlying architectural decisions. Although this problem can be mitigated by manually tracing architectural decisions into the code, the cost and effort required to do this can be prohibitively expensive. In this paper we therefore present a novel approach for automating the construction of traceability links for architectural tactics. Our approach utilizes machine learning methods and lightweight structural analysis to detect tactic-related classes. The detected tactic-related classes are then mapped to a Tactic Traceability Information Model. We train our trace algorithm using code extracted from fifteen performance-centric and safety-critical open source software systems and then evaluate it against the Apache Hadoop framework. Our results show that automatically generated traceability links can support software maintenance activities while helping to preserve architectural qualities.
BibTeX
@inproceedings{Mirakhorli-al:ICSE12,
author = {Mehdi Mirakhorli and
Yonghee Shin and
Jane Cleland{-}Huang and
Murat {\c{C}}inar},
title = {A tactic-centric approach for automating traceability of quality concerns},
booktitle = {ICSE},
pages = {639--649},
publisher = {{IEEE} Computer Society},
year = {2012},
}