TY - GEN
T1 - A case study of source code evolution
AU - Ghazarian, Arbi
PY - 2009/7/10
Y1 - 2009/7/10
N2 - Obtaining an accurate characterization of pre-release changes, especially those related to fault corrections, can give indications for the quality of the software development process and its product. The resulting indications can then be leveraged to identify areas for quality improvement within software development organizations. Towards this objective, we studied the evolution of the source code modules in an industrial enterprise resource planning software system spanning a time period of two years from the initial creation of the source code modules to the release of the software product. In this paper, we describe our case study process, and present the frequency distributions of pre-release changes and faults along with lessons learnedfrom the case study. Overall, we found that (a) only 22% of pre-release changes contribute new functionality to the system under development; the remaining majority of the prerelease changes are either fault corrections or code cleanups (b) over 72% of pre-release faults are propagated from upper-stream requirements and design activities (c) fault classes that are the target of most fault detection tools have a low frequency.
AB - Obtaining an accurate characterization of pre-release changes, especially those related to fault corrections, can give indications for the quality of the software development process and its product. The resulting indications can then be leveraged to identify areas for quality improvement within software development organizations. Towards this objective, we studied the evolution of the source code modules in an industrial enterprise resource planning software system spanning a time period of two years from the initial creation of the source code modules to the release of the software product. In this paper, we describe our case study process, and present the frequency distributions of pre-release changes and faults along with lessons learnedfrom the case study. Overall, we found that (a) only 22% of pre-release changes contribute new functionality to the system under development; the remaining majority of the prerelease changes are either fault corrections or code cleanups (b) over 72% of pre-release faults are propagated from upper-stream requirements and design activities (c) fault classes that are the target of most fault detection tools have a low frequency.
UR - http://www.scopus.com/inward/record.url?scp=67649849896&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=67649849896&partnerID=8YFLogxK
U2 - 10.1109/CSMR.2009.12
DO - 10.1109/CSMR.2009.12
M3 - Conference contribution
AN - SCOPUS:67649849896
SN - 9780769535890
T3 - Proceedings of the European Conference on Software Maintenance and Reengineering, CSMR
SP - 159
EP - 168
BT - Proceedings - 13th European Conference on Software Maintenance and Reengineering, CSMR 2009
T2 - 13th European Conference on Software Maintenance and Reengineering, CSMR 2009
Y2 - 24 March 2009 through 27 March 2009
ER -