A Study on Early Prediction of Fault Proneness in Software Modules using Genetic Algorithm

Fault-proneness of a software module is the probability that the module contains faults. To predict faultproneness of modules different techniques have been proposed which includes statistical methods, machine learning techniques, neural network techniques and clustering techniques. The aim of proposed study is to explore whether metrics available in the early lifecycle (i.e. requirement metrics), metrics available in the late lifecycle (i.e. code metrics) and metrics available in the early lifecycle (i.e. requirement metrics) combined with metrics available in the late lifecycle (i.e. code metrics) can be used to identify fault prone modules using Genetic Algorithm technique. This approach has been tested with real time defect C Programming language datasets of NASA software projects. The results show that the fusion of requirement and code metric is the best prediction model for detecting the faults as compared with commonly used code based model.




References:
[1] Saida Benlarbi,Khaled El Emam, Nishith Geol (1999), "Issues in
Validating Object-Oriented Metrics for Early Risk Prediction", by Cistel
Technology 210 Colonnade Road Suite 204 Nepean, Ontario Canada
K2E 7L5.
[2] Fenton, N. E. and Neil, M. (1999), "A Critique of Software Defect
Prediction Models", Bellini, I. Bruno, P. Nesi, D. Rogai, University of
Florence, IEEE Trans. Softw. Engineering, vol. 25, Issue no. 5, pp. 675-
689.
[3] Bellini, P. (2005), "Comparing Fault-Proneness Estimation Models",
10th IEEE International Conference on Engineering of Complex
Computer Systems (ICECCS'05), vol. 0, 2005, pp. 205-214.
[4] Giovanni Denaro (2000), "Estimating Software Fault-Proneness for
Tuning Testing Activities" Proceedings of the 22nd International
Conference on Software Engineering (ICSE2000), Limerick, Ireland,
June 2000.
[5] Mahaweerawat, A. (2004), "Fault-Prediction in object oriented
software-s using neural network techniques", Advanced Virtual and
Intelligent Computing Center (AVIC), Department of Mathematics,
Faculty of Science, Chulalongkorn University, Bangkok, Thailand, pp.
1-8.
[6] Ma, Y., Guo, L. (2006), "A Statistical Framework for the Prediction of
Fault-Proneness", West Virginia University, Morgantown.
[7] Thomas Zimmermann, Nachiappan Nagappan (2008), " Predicting
Defects Using Social Network Analysis on Dependency Graphs",
International Conference on Software Engineering (ICSE 2008),
Leipzig, Germany.
[8] Audris Mockus, Nachiappan Nagappan and Trung T.Dinh-Trong, (2009)
"Test Coverage and Post-Verification Defects: A Multiple Case Study,"
ACM-IEEE Empirical Software Engineering and Measurement
Conference (ESEM), Orlando, FL, 2009.
[9] Cagatay Catal & Banu Diri (2009), "A Systematic Review of Software
Fault Prediction Studies" Journal of Expert Systems with Applications,
Volume 36, Issue 4, May 2009.
[10] Jonas Boberg (2008), "Early Fault Detection with the Model-based
Testing" , 7th ACM SIGNPLAN workshop on ERLANG, 2008.
[11] Bindu Goel & Yogesh Singh (2008),"Emperical Investigation of Metrics
for Fault Prediction on Object Oriented Software" the Book series in
Computational Intelligence, 2008.
[12] Khoshgoftaar, T. M., Allen, E. B., Ross, F. D., Munikoti, R., Goel, N. &
Nandi, A. (1997), "Predicting fault-prone modules with case-based
reasoning". ISSRE 1997, the Eighth International Symposium on
Software Engineering (pp. 27-35), IEEE Computer Society (1997).
[13] Min-Gu Lee and Theresa L. Jefferson (2005), "An Empirical Study of
Software Maintenance of a Web-based Java Application", Proceedings
of the 21st IEEE International Conference on Software Maintenance
(ICSM-05), IEEE (2005).
[14] Marco D' Ambros and Michle Lanza (2006), "Software Bugs and
Evolution: A Visual Approach to uncover their relationship",
Proceedings of IEEE Conference on Software Maintenance and
Reegineering (CSMR' 06), IEEE (2006).
[15] George E. Stark (1996), "Measurements for Managing Software
Maintenance", IEEE computer Society, 1996.
[16] Khoshgoftaar, T.M. and Munson, J.C. (1990), "Predicting Software
Development Errors using Complexity Metrics", Selected Areas in
Communications, IEEE Journal on, Volume: 8 Issue: 2, Feb. 1990,
Page(s): 253 -261.
[17] Menzies, T., Ammar, K., Nikora, A., and Stefano, S. (2003), "How
Simple is Software Defect Prediction?" Submitted to Journal of
Empirical Software Engineering, October (2003).
[18] Eman, K., Benlarbi, S., Goel, N., and Rai, S. (2001), "Comparing casebased
reasoning classifiers for predicting high risk software
components", Systems Software, Journal of, Volume: 55 Issue: 3, Nov.
(2001), Page(s): 301 - 310.
[19] Fenton, N.E. and Neil, M. (1999), "A critique of software defect
prediction models", Software Engineering, IEEE Transactions on,
Volume: 25 Issue: 5, Sept.- Oct. 1999, Page(s): 675 -689.
[20] Khoshgoftaar, T. M. and Seliya, N. (2002), "Tree-based software quality
estimation models for fault prediction", METRICS 2002, the Eighth IIIE
Symposium on Software Metrics (pp. 203-214). IEEE Computer Society
2002.
[21] Seliya N., Khoshgoftaar, T.M., Zhong S. (2005), "Analyzing software
quality with limited fault-proneness defect data", Ninth IEEE
international Symposium on 12-14 Oct, 2005.
[22] Lan Guo, Bojan Cukic, Harshinder Singh (2003), "Predicting Fault
Prone Modules by the Dempster-Shafer Belief Networks," ase, pp.249,
18th IEEE International Conference on Automated Software
Engineering (ASE'03), 2003.
[23] NASA IV &V Facility. Metric Data Program. Available from http:
//MDP.ivv.nasa.gov/.
[24] Jiang Y., Cukic B. and Menzies T. (2007), "Fault Prediction Using Early
Lifecycle Data". ISSRE 2007, the 18th IEEE Symposium on Software
Reliability Engineering, IEEE Computer Society, Sweden, pp. 237-246.
[25] Hall M. A. (1998), Correlation-based Feature Subset Selection for
Machine Learning. Hamilton, New Zealand, 1998.
[26] Challagulla V.U.B., Bastani F.B., Yen I. L. and Paul (2005) "Empirical
assessment of machine learning based software defect prediction
techniques", 10th IEEE International Workshop on Object-Oriented
Real-Time Dependable Systems, USA, pp. 263-270