skip to main content
research-article

Application of support vector machine to predict fault prone classes

Published: 31 January 2009 Publication History

Abstract

Empirical validation of software metrics to predict quality using machine learning methods is important to ensure their practical relevance in the software organizations. It would also be interesting to know the relationship between object-oriented metrics and fault proneness. In this paper, we build a Support Vector Machine (SVM) model to find the relation-ship between object-oriented metrics given by Chidamber and Kemerer and fault proneness. The proposed model is empirically evaluated using open source software. The performance of the SVM method was evaluated by Receiver Operating Characteristic (ROC) analysis. Based on these results, it is reasonable to claim that such models could help for planning and performing testing by focusing resources on fault- prone parts of the design and code. Thus, the study shows that SVM method may also be used in constructing software quality models. However, similar types of studies are required to be carried out in order to establish the acceptability of the model.

References

[1]
Aggarwal K.K., Singh Y., Kaur A., Malhotra R. (2005): Analysis of Object-Oriented Metrics. In Proceedings of the International Workshop on Software Measurement (IWSM), Montral, Canada.
[2]
Aggarwal K.K., Singh Y., Kaur A., Malhotra R. (2008): Empirical Analysis for Investigating the Effect of Object-Oriented Metrics on Fault Proneness: A Replicated Case Study, Forthcoming in Software Process Improvement and Practice, Wiley.
[3]
Aggarwal K.K., Singh Y., Kaur A., Malhotra R. (2006): Empirical study of object-oriented metrics. Journal of Object Technology, 5(8), pp.149--173.
[4]
Aggarwal K.K., Singh Y., Kaur A., Malhotra R. (2005): Software reuse metrics for object-oriented systems. In Proceedings of the Third ACIS Intl Conference on Software Engineering Research, Management and Applications (SERA 05), pp.48--55.
[5]
Aggarwal K.K., Singh Y., Kaur A., Malhotra R. (2006): Investigating the Effect of Coupling Metrics on Fault Proneness in Object-Oriented Systems. Software Quality Professional, 8(4), pp.4--16.
[6]
Basili,V., Briand, L., and Melo, W. (1996): A validation of object-oriented design metrics as quality indicators. IEEE Transactions on Software Engineering, 22(10), pp.751--761.
[7]
Bieman, J., and Kang, B. (1995): Cohesion and reuse in an object-oriented system. In Proceedings of the ACM Symposium on Software Reusability (SSR94), pp.259--262.
[8]
Binkley, A., and Schach, S. (1998): Validation of the coupling dependency metric as a risk predictor. In Proceedings of the International Conference on Software Engineering, pp.452--455.
[9]
Briand, L., Daly, W., and Wust J. (1998): Unified framework for cohesion measurement in object-oriented systems. Empirical Software Engineering, 3(1), pp.65--117.
[10]
Briand, L., Daly, W., and Wust J. (1999): A unified framework for coupling measurement in object-oriented systems. IEEE Transactions on Software Engineering, 25(1), pp.91--121.
[11]
Briand, L., Daly, W., and Wust J. (2000): Exploring the relationships between design measures and software quality. Journal of Systems and Software, 51(3), pp.245--273.
[12]
Briand L., Wst J., Lounis H. (2001): Replicated Case Studies for Investigating Quality Factors in Object-Oriented Designs, Empirical Software Engineering: An International Journal, 6(1), pp.11--58.
[13]
Burges, C. (1998): A tutorial on support vector machines for pattern recognition. Data Mining and Knowledge Discovery 2, pp.121--167.
[14]
Cartwright, M., and Shepperd, M. (1999): An empirical investigation of an object-oriented software system. IEEE Transactions of Software Engineering, 26(8), pp.786--796.
[15]
Chidamber, S., and Kamerer, C. (1994): A metrics suite for object-oriented design. IEEE Transactions on Software Engineering, 20(6), pp.476--493.
[16]
Chidamber, S., and Kamerer, C. (1991): Towards a metrics suite for object oriented design. In Proceedings of the Conference on Object-Oriented Programming: Systems, Languages and Applications (OOPSLA91). SIGPLAN Notices, 26(11), pp.197--211.
[17]
Chidamber, S., Darcy, D., and Kemerer, C. (1998): Managerial use of metrics for object-oriented software: An exploratory analysis. IEEE Transactions on Software Engineering, 24(8), pp.629--639.
[18]
Cortes, C., Vapnik, V. (1995): Support-vector networks. Machine Learning 20, pp.273--297.
[19]
Cristianini, N., Shawe-Taylor, J. (2000): An Introduction to Support Vector Machines and Other Kernel-based Learning Methods. Cambridge University Press, Cambridge, UK.
[20]
El Emam, K., Benlarbi, S., Goel, N. And Rai, S. 1999: A Validation of Object-Oriented Metrics, Technical Report ERB-1063, NRC.
[21]
El Emam, K., Benlarbi, S., Goel, N., and Rai, S. (2001): The Confounding Effect of Class Size on The Validity of Object-Oriented Metrics. IEEE Transactions on Software Engineering, 27(7), pp.630--650.
[22]
Gyimothy, T., Ferenc, R., Siket, I. (2005): Empirical validation of object-oriented metrics on open source software for fault prediction, IEEE Trans. Software Engineering, 31 (10), pp.897--910.
[23]
Hanley, J., McNeil, BJ. (1982): The meaning and use of the area under a Receiver Operating Characteristic ROC curve. Radiology, 143, pp.29--36.
[24]
Harrison, R., Counsell, S. J., and Nithi, R.V. (1998): An evaluation ofMOOD set of object-oriented software metrics. IEEE Transactions on Software Engineering, 24(6), pp.491--496.
[25]
Henderson-Sellers, B. (1996): Object-oriented metrics, measures of complexity. Englewood Cliffs, N.J.: Prentice Hall.
[26]
Hitz, M., and Montazeri, B. (1995): Measuring coupling and cohesion in object-oriented systems. In Proceedings of the International Symposium on Applied Corporate Computing, Monterrey, Mexico.
[27]
Jedit. http://sourceforge.net/projects/jedit/.
[28]
Lake, A., and Cook, C. (1994): Use of factor analysis to develop OOP software complexity metrics. In Proceedings of the 6th Annual Oregon Workshop on Software Metrics, Silver Falls, Oregon.
[29]
Lee, Y., Liang, B., Wu, S., and Wang, F. (1995): Measuring the coupling and cohesion of an object-oriented program based on information flow. In Proceedings of the International Conference on Software Quality, Maribor, Slovenia.
[30]
Li, W., and Henry, S. (1993): Object-oriented metrics that predict maintainability. Journal of Systems and Software, 23(2), 111--122.
[31]
Lorenz, M., and Kidd, J. (1994): Object-oriented software metrics. Englewood Cliffs, N.J.: Prentice-Hall.
[32]
Morris, C., Autret, A., Boddy, L. (2001): Support vector machines for identifying organisms-a comparison with strongly partitioned radial basis function networks. Ecological Modeling 146, pp.57--67.
[33]
Olague, H., Etzkorn, L., Gholston, S., and Quattlebaum, S. (2007): Empirical Validation of Three Software Metrics Suites to Predict Fault-Proneness of Object-Oriented Classes Developed Using Highly Iterative or Agile Software Development Processes. IEEE Transactions on software Engineering, 33(8), pp.402--419.
[34]
Pai, G. (2007): Empirical analysis of Software Fault Content and Fault Proneness Using Bayesian Methods, IEEE Transactions on software Engineering, 33(10), pp.675--686.
[35]
Promise. http://promisedata.org/repository/.
[36]
Scitools. http://www.scitools.com/index.php.
[37]
Sherrod, P. (2003): DTreg Predictive Modeling Software.
[38]
Stone, M. (1974): Cross-validatory choice and assessment of statistical predictions. J. Royal Stat. Soc., 36, pp.111--147.
[39]
Tang, M.H, Kao, M.H., and Chen, M.H. (1999): An Empirical Study on Object-Oriented Metrics, In Proceedings of Metrics, pp.242--249.
[40]
Tegarden, D., Sheetz, S., and Monarchi, D. (1995): A software complexity model of object-oriented systems. Decision Support Systems 13 (3-4), pp.241--262.
[41]
Wang, X., Bi, D., and Wang, S. (2007): Fault recognition with Labeled multi-category, Third conference on Natural Computation, Haikou, China.
[42]
Watanabe, S., Kaiya, H., Kaijiri, K. (2008): Adapting a Fault Prediction Model to Allow Inter Language Reuse, PROMISE08, May 1213, Leipzig,Germany.
[43]
Yuming, Z. and Hareton, L. (2006): Empirical analysis of Object-Oriented Design Metrics for predicting high severity faults. IEEE Transactions on Software Engineering, 32(10), pp.771--784.
[44]
Zhao, L., Takagi, N. (2007): An application of Support vector machines to Chinese character classification problem. IEEE International Conference on systems, Man and Cybernetics, Montreal.

Cited By

View all
  • (2022)Comparative study of Sampling Techniques for Software Defect Prediction2022 8th International Conference on Advanced Computing and Communication Systems (ICACCS)10.1109/ICACCS54159.2022.9785238(760-766)Online publication date: 25-Mar-2022
  • (2021)Support Vector based Oversampling Technique for Handling Class Imbalance in Software Defect Prediction2021 11th International Conference on Cloud Computing, Data Science & Engineering (Confluence)10.1109/Confluence51648.2021.9377068(1078-1083)Online publication date: 28-Jan-2021
  • (2020)Investigation of Software Reliability Prediction Using Statistical and Machine Learning MethodsCognitive Analytics10.4018/978-1-7998-2460-2.ch085(1640-1660)Online publication date: 2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGSOFT Software Engineering Notes
ACM SIGSOFT Software Engineering Notes  Volume 34, Issue 1
January 2009
119 pages
ISSN:0163-5948
DOI:10.1145/1457516
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 January 2009
Published in SIGSOFT Volume 34, Issue 1

Check for updates

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Comparative study of Sampling Techniques for Software Defect Prediction2022 8th International Conference on Advanced Computing and Communication Systems (ICACCS)10.1109/ICACCS54159.2022.9785238(760-766)Online publication date: 25-Mar-2022
  • (2021)Support Vector based Oversampling Technique for Handling Class Imbalance in Software Defect Prediction2021 11th International Conference on Cloud Computing, Data Science & Engineering (Confluence)10.1109/Confluence51648.2021.9377068(1078-1083)Online publication date: 28-Jan-2021
  • (2020)Investigation of Software Reliability Prediction Using Statistical and Machine Learning MethodsCognitive Analytics10.4018/978-1-7998-2460-2.ch085(1640-1660)Online publication date: 2020
  • (2018)A Reference Architecture for Mobile SOASystems Engineering10.1111/sys.2127917:4(407-425)Online publication date: 17-Dec-2018
  • (2017)ConclusionUbiquitous Machine Learning and Its Applications10.4018/978-1-5225-2545-5.ch011(217-229)Online publication date: 2017
  • (2017)Application of Machine Learning Techniques for Software Reliability Prediction (SRP)Ubiquitous Machine Learning and Its Applications10.4018/978-1-5225-2545-5.ch006(113-142)Online publication date: 2017
  • (2017)Investigation of Software Reliability Prediction Using Statistical and Machine Learning MethodsHandbook of Research on Machine Learning Innovations and Trends10.4018/978-1-5225-2229-4.ch012(251-271)Online publication date: 2017
  • (2015)SMPLearnerAutomated Software Engineering10.1007/s10515-014-0161-322:1(111-141)Online publication date: 1-Mar-2015
  • (2014)An empirical comparison of machine learning techniques for software defect predictionProceedings of the 8th International Conference on Bioinspired Information and Communications Technologies10.4108/icst.bict.2014.257871(320-327)Online publication date: 1-Dec-2014
  • (2012)Creating mobile ad hoc workflows with TwitterProceedings of the 27th Annual ACM Symposium on Applied Computing10.1145/2245276.2232107(1998-2000)Online publication date: 26-Mar-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media