TY - GEN
T1 - The effect of testability on fault proneness a case study of the Apache HTTP Server
AU - Hays, Mark
AU - Hayes, Jane
N1 - Copyright:
Copyright 2013 Elsevier B.V., All rights reserved.
PY - 2012
Y1 - 2012
N2 - Numerous studies have identified measures that relate to the fault-proneness of software components. An issue practitioners face in implementing these measures is that the measures tend to provide predictions at a very high level, for instance the per-module level, so it is difficult to provide specific recommendations based on those predictions. We examine a more specific measure, called software testability, based on work in test case generation. We discuss how it could be used to make more specific code improvement recommendations at the line-of-code level. In our experiment, we compare the testability of fault prone lines with unchanged lines. We apply the experiment to Apache HTTP Server and find that developers more readily identify faults in highly testable code. We then compare testability as a fault proneness predictor to McCabe's cyclomatic complexity and find testability has higher recall.
AB - Numerous studies have identified measures that relate to the fault-proneness of software components. An issue practitioners face in implementing these measures is that the measures tend to provide predictions at a very high level, for instance the per-module level, so it is difficult to provide specific recommendations based on those predictions. We examine a more specific measure, called software testability, based on work in test case generation. We discuss how it could be used to make more specific code improvement recommendations at the line-of-code level. In our experiment, we compare the testability of fault prone lines with unchanged lines. We apply the experiment to Apache HTTP Server and find that developers more readily identify faults in highly testable code. We then compare testability as a fault proneness predictor to McCabe's cyclomatic complexity and find testability has higher recall.
KW - Code coverage
KW - Fault proneness
KW - Static analysis
KW - Testing
UR - http://www.scopus.com/inward/record.url?scp=84873385507&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84873385507&partnerID=8YFLogxK
U2 - 10.1109/ISSREW.2012.48
DO - 10.1109/ISSREW.2012.48
M3 - Conference contribution
AN - SCOPUS:84873385507
SN - 9780769549286
T3 - Proceedings - 23rd IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2012
SP - 153
EP - 158
BT - Proceedings - 23rd IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2012
T2 - 23rd IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2012
Y2 - 27 November 2012 through 30 November 2012
ER -