TY - GEN
T1 - Hotspot Patterns
T2 - 12th Working IEEE/IFIP Conference on Software Architecture, WICSA 2015
AU - Mo, Ran
AU - Cai, Yuanfang
AU - Kazman, Rick
AU - Xiao, Lu
N1 - Publisher Copyright:
© 2015 IEEE.
PY - 2015/7/14
Y1 - 2015/7/14
N2 - In this paper, we propose and empirically validate a suite of hotspot patterns: recurring architecture problems that occur in most complex systems and incur high maintenance costs. In particular, we introduce two novel hotspot patterns, Unstable Interface and Implicit Cross-module Dependency. These patterns are defined based on Baldwin and Clark's design rule theory, and detected by the combination of history and architecture information. Through our tool-supported evaluations, we show that these patterns not only identify the most error-prone and change-prone files, they also pinpoint specific architecture problems that may be the root causes of bug-proneness and change-proneness. Significantly, we show that 1) these structure-history integrated patterns contribute more to error-and change-proneness than other hotspot patterns, and 2) the more hotspot patterns a file is involved in, the more error-and change-prone it is. Finally, we report on an industrial case study to demonstrate the practicality of these hotspot patterns. The architect and developers confirmed that our hotspot detector discovered the majority of the architecture problems causing maintenance pain, and they have started to improve the system's maintainability by refactoring and fixing the identified architecture issues.
AB - In this paper, we propose and empirically validate a suite of hotspot patterns: recurring architecture problems that occur in most complex systems and incur high maintenance costs. In particular, we introduce two novel hotspot patterns, Unstable Interface and Implicit Cross-module Dependency. These patterns are defined based on Baldwin and Clark's design rule theory, and detected by the combination of history and architecture information. Through our tool-supported evaluations, we show that these patterns not only identify the most error-prone and change-prone files, they also pinpoint specific architecture problems that may be the root causes of bug-proneness and change-proneness. Significantly, we show that 1) these structure-history integrated patterns contribute more to error-and change-proneness than other hotspot patterns, and 2) the more hotspot patterns a file is involved in, the more error-and change-prone it is. Finally, we report on an industrial case study to demonstrate the practicality of these hotspot patterns. The architect and developers confirmed that our hotspot detector discovered the majority of the architecture problems causing maintenance pain, and they have started to improve the system's maintainability by refactoring and fixing the identified architecture issues.
KW - Software Architecture
KW - Software Quality
KW - Software maintenance
UR - http://www.scopus.com/inward/record.url?scp=84943228098&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84943228098&partnerID=8YFLogxK
U2 - 10.1109/WICSA.2015.12
DO - 10.1109/WICSA.2015.12
M3 - Conference contribution
AN - SCOPUS:84943228098
T3 - Proceedings - 12th Working IEEE/IFIP Conference on Software Architecture, WICSA 2015
SP - 51
EP - 60
BT - Proceedings - 12th Working IEEE/IFIP Conference on Software Architecture, WICSA 2015
A2 - Bass, Len
A2 - Lago, Patricia
A2 - Kruchten, Philippe
Y2 - 4 May 2015 through 8 May 2015
ER -