Skip to main content

2017 | OriginalPaper | Buchkapitel

Evaluation of Machine Learning Approaches for Change-Proneness Prediction Using Code Smells

verfasst von : Kamaldeep Kaur, Shilpi Jain

Erschienen in: Proceedings of the 5th International Conference on Frontiers in Intelligent Computing: Theory and Applications

Verlag: Springer Singapore

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

In the field of technology, software is an essential driver of business and industry. Software undergoes changes due to maintenance activities initiated by bug fixing, improved documentation, and new requirements of users. In software, code smells are indicators of a system which may give maintenance problem in future. This paper evaluates six types of machine learning algorithms to predict change-proneness using code smells as predictors for various versions of four Java-coded applications. Two approaches are used: method 1-random undersampling is done before Feature selection; method 2-feature selection is done prior to random undersampling. This paper concludes that gene expression programming (GEP) gives maximum AUC value, whereas cascade correlation network (CCR), treeboost, and PNN\GRNN algorithms are among top algorithms to predict F-measure, precision, recall, and accuracy. Also, GOD and L_M code smells are good predictors of software change-proneness. Results show that method 1 outperforms method 2.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Pigoski, T. M.: Practical software maintenance: Best practices for managing your software investment. Wiley Computer Pub., New York (1996) Pigoski, T. M.: Practical software maintenance: Best practices for managing your software investment. Wiley Computer Pub., New York (1996)
2.
Zurück zum Zitat Khomh, F., Di Penta, M., Gueheneuc, Y. G.: An exploratory study of the impact of code smells on software change-proneness. In: 16th IEEE Working Conf. on Reverse Engineering (WCRE), pp. 75–84(2009) Khomh, F., Di Penta, M., Gueheneuc, Y. G.: An exploratory study of the impact of code smells on software change-proneness. In: 16th IEEE Working Conf. on Reverse Engineering (WCRE), pp. 75–84(2009)
4.
Zurück zum Zitat Fowler, M.: Refactoring: improving the design of existing code. Pearson Education, India (1999) Fowler, M.: Refactoring: improving the design of existing code. Pearson Education, India (1999)
5.
Zurück zum Zitat Chen, C. T., Cheng, Y. C., Hseih, C. Y., WU, I. L.: Exception handling refactorings: Directed by goals and driven by bug fixing. J.Systems and Software, vol. 82(2), pp. 333–345 (2009) Chen, C. T., Cheng, Y. C., Hseih, C. Y., WU, I. L.: Exception handling refactorings: Directed by goals and driven by bug fixing. J.Systems and Software, vol. 82(2), pp. 333–345 (2009)
6.
Zurück zum Zitat Tsantalis, N., Fokaefs, M., Chatzigeorgiou, A.: JDeodorant: Identification and removal of feature envy bad smells. IEEE Int’l Conf. on Software Maintenance (ICSM), pp. 519–520(2007) Tsantalis, N., Fokaefs, M., Chatzigeorgiou, A.: JDeodorant: Identification and removal of feature envy bad smells. IEEE Int’l Conf. on Software Maintenance (ICSM), pp. 519–520(2007)
8.
Zurück zum Zitat Kreimer, J.: Adaptive detection of design flaws. Electronic Notes in Theoretical Computer Science, vol. 141 (4), pp. 117–13(2005) Kreimer, J.: Adaptive detection of design flaws. Electronic Notes in Theoretical Computer Science, vol. 141 (4), pp. 117–13(2005)
9.
Zurück zum Zitat Yamashita, A., Counsell, S.: Code smells as system-level indicators of maintainability: An empirical study. J. Systems and Software, vol. 86 (10), pp. 2639–2653 (2013) Yamashita, A., Counsell, S.: Code smells as system-level indicators of maintainability: An empirical study. J. Systems and Software, vol. 86 (10), pp. 2639–2653 (2013)
10.
Zurück zum Zitat Li, W., Shatnawi, R.: An empirical study of the bad smells and class error probability in the post-release object-oriented system evolution. J. Systems and Software, vol. 80(7), pp. 1120–1128 (2007) Li, W., Shatnawi, R.: An empirical study of the bad smells and class error probability in the post-release object-oriented system evolution. J. Systems and Software, vol. 80(7), pp. 1120–1128 (2007)
11.
Zurück zum Zitat Mäntylä, M., Vanhanen, J., Lassenius, C.: A taxonomy and an initial empirical study of bad smells in code. IEEE Int’l Conf. on Software Maintenance (ICSM), pp. 381–384 (2003) Mäntylä, M., Vanhanen, J., Lassenius, C.: A taxonomy and an initial empirical study of bad smells in code. IEEE Int’l Conf. on Software Maintenance (ICSM), pp. 381–384 (2003)
12.
Zurück zum Zitat Emden, E., Moonen, L.: Java quality assurance by detecting code smells. In: 9th IEEE Working Conf. on Reverse Engineering, pp. 97–106 (2002) Emden, E., Moonen, L.: Java quality assurance by detecting code smells. In: 9th IEEE Working Conf. on Reverse Engineering, pp. 97–106 (2002)
13.
Zurück zum Zitat Rao, A. A., Reddy, K. N.: Detecting bad smells in object oriented design using design change propagation probability matrix. Int’l MultiConf. on Engineers and Computer Scientists. vol. I, pp. 19–21, Hong Kong (2008) Rao, A. A., Reddy, K. N.: Detecting bad smells in object oriented design using design change propagation probability matrix. Int’l MultiConf. on Engineers and Computer Scientists. vol. I, pp. 19–21, Hong Kong (2008)
14.
Zurück zum Zitat Olbrich, S. M.,Cruze, D. S., Sjøberg,D. IK.: Are all code smells harmful? A study of God Classes and Brain Classes in the evolution of three open source systems. IEEE Int’l. Conf. on Software Maintenance (ICSM),pp. 1–10 (2010) Olbrich, S. M.,Cruze, D. S., Sjøberg,D. IK.: Are all code smells harmful? A study of God Classes and Brain Classes in the evolution of three open source systems. IEEE Int’l. Conf. on Software Maintenance (ICSM),pp. 1–10 (2010)
15.
Zurück zum Zitat Ambros, M. D., Bacchelli, A., Lanza,M.: On the impact of design flaws on software defects. In: 10th IEEE Int’l. Conf. on Quality Software (QSIC), pp. 23–31 (2010) Ambros, M. D., Bacchelli, A., Lanza,M.: On the impact of design flaws on software defects. In: 10th IEEE Int’l. Conf. on Quality Software (QSIC), pp. 23–31 (2010)
16.
Zurück zum Zitat Barstad, V., Goodwin, M., Gjøsæter, T.: Predicting Source Code Quality with Static Analysis and Machine Learning.NorskInformatikkonferanse (NIK) (2014) Barstad, V., Goodwin, M., Gjøsæter, T.: Predicting Source Code Quality with Static Analysis and Machine Learning.NorskInformatikkonferanse (NIK) (2014)
17.
Zurück zum Zitat Mekruksavanich, S.: Design Flaws Detection in Object-Oriented Software with Analytical Learning Method. Int’l. J. e-Education, e-Business, e-Management and e-Learning, vol. 1(3),p. 210 (2011) Mekruksavanich, S.: Design Flaws Detection in Object-Oriented Software with Analytical Learning Method. Int’l. J. e-Education, e-Business, e-Management and e-Learning, vol. 1(3),p. 210 (2011)
18.
Zurück zum Zitat Gao, K., Khoshgoftaar, T. M., Napolitano, A.: Combining feature subset selection and data sampling for coping with highly imbalanced software data. Proc. 27th Int’l. Conf.on Software Engineering and Knowledge Engineering (2015) Gao, K., Khoshgoftaar, T. M., Napolitano, A.: Combining feature subset selection and data sampling for coping with highly imbalanced software data. Proc. 27th Int’l. Conf.on Software Engineering and Knowledge Engineering (2015)
20.
Zurück zum Zitat Hall, M.A.: Correlation-based feature selection for machine learning. PhD Diss. The University of Waikato (1999) Hall, M.A.: Correlation-based feature selection for machine learning. PhD Diss. The University of Waikato (1999)
Metadaten
Titel
Evaluation of Machine Learning Approaches for Change-Proneness Prediction Using Code Smells
verfasst von
Kamaldeep Kaur
Shilpi Jain
Copyright-Jahr
2017
Verlag
Springer Singapore
DOI
https://doi.org/10.1007/978-981-10-3153-3_56

Premium Partner