Skip to main content

Application of SMOTE and LSSVM with Various Kernels for Predicting Refactoring at Method Level

  • Conference paper
  • First Online:
Neural Information Processing (ICONIP 2018)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11305))

Included in the following conference series:

Abstract

Improving maintainability by refactoring is essentially being considered as one of the important aspect of software development. For large and complex systems, identification of code segments, which require re-factorization is a compelling task for software developers. Development of recommendation systems for suggesting methods, which require refactoring are achieved using this research work. Materials and Methods: Literature works considered source code metrics for object-oriented software systems in order to measure the complexity of a software. In order to predict the need of refactoring, the proposed system computes twenty-five different source code metrics at the method level and utilize them as features in a machine learning framework. An open source dataset consisting of five different software systems is being considered for conducting a series of experiments in order to assess the performance of proposed approach. LSSVM with SMOTE data imbalance technique are being utilized in order to overcome the class imbalance problem. Conclusion: Analysis of the results reveals that LS-SVM with RBF kernel using SMOTE results in the best performance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://refactoring.com/catalog/.

  2. 2.

    http://openscience.us/repo/.

  3. 3.

    https://github.com/.

  4. 4.

    https://www.sourcemeter.com/.

  5. 5.

    https://www.sourcemeter.com/.

  6. 6.

    https://www.sourcemeter.com/resources/java/.

  7. 7.

    https://www.sourcemeter.com/resources/java/.

References

  1. The promise repository of empirical software engineering data (2015)

    Google Scholar 

  2. Al Dallal, J.: Predicting move method refactoring opportunities in object-oriented code. Inf. Softw. Technol. 92, 105–120 (2017)

    Article  Google Scholar 

  3. Bavota, G., De Lucia, A., Di Penta, M., Oliveto, R., Palomba, F.: An experimental investigation on the innate relationship between quality and refactoring. J. Syst.Softw. 107, 1–14 (2015)

    Article  Google Scholar 

  4. Chávez, A., Ferreira, I., Fernandes, E., Cedrim, D., Garcia, A.: How does refactoring affect internal quality attributes?: A multi-project study. In: Proceedings of the 31st Brazilian Symposium on Software Engineering, pp. 74–83. ACM (2017)

    Google Scholar 

  5. Fowler, M., Beck, K.: Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, Boston (1999)

    Google Scholar 

  6. Kádár, I., Hegedus, P., Ferenc, R., Gyimóthy, T.: A code refactoring dataset and its assessment regarding software maintainability. In: 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), vol. 1, pp. 599–603. IEEE (2016)

    Google Scholar 

  7. Kádár, I., Hegedűs, P., Ferenc, R., Gyimóthy, T.: A manually validated code refactoring dataset and its assessment regarding software maintainability. In: Proceedings of the The 12th International Conference on Predictive Models and Data Analytics in Software Engineering, p. 10. ACM (2016)

    Google Scholar 

  8. Kim, M., Gee, M., Loh, A., Rachatasumrit, N.: Ref-finder: a refactoring reconstruction tool based on logic query templates. In: Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 371–372. ACM (2010)

    Google Scholar 

  9. Kosker, Y., Turhan, B., Bener, A.: An expert system for determining candidate software classes for refactoring. Expert Syst. Appl. 36(6), 10000–10003 (2009)

    Article  Google Scholar 

  10. Kumar, L., Sureka, A.: Application of LSSVM and SMOTE on seven open source projects for predicting refactoring at class level. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 90–99 (2017)

    Google Scholar 

  11. Kumar, L., Sureka, A.: Application of LSSVM and SMOTE on seven open source projects for predicting refactoring at class level. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 90–99. IEEE (2017)

    Google Scholar 

  12. Mens, T., Tourwé, T.: A survey of software refactoring. IEEE Trans. Softw. Eng. 30(2), 126–139 (2004)

    Article  Google Scholar 

  13. Suykens, J., Lukas, L., Van Dooren, P., De Moor, B., Vandewalle, J., et al.: Least squares support vector machine classifiers: a large scale algorithm. In: European Conference on Circuit Theory and Design, ECCTD, vol. 99, pp. 839–842 (1999)

    Google Scholar 

  14. Suykens, J.A., Lukas, L., Vandewalle, J.: Sparse approximation using least squares support vector machines. In: Proceedings of the IEEE International Symposium on Circuits and Systems, ISCAS 2000, vol. 2, pp. 757–760. IEEE, Geneva (2000)

    Google Scholar 

  15. Zhao, L., Hayes, J.: Predicting classes in need of refactoring: an application of static metrics. In: Proceedings of the 2nd International PROMISE Workshop, Philadelphia, Pennsylvania, USA (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Lov Kumar or Shashank Mouli Satapathy .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kumar, L., Satapathy, S.M., Krishna, A. (2018). Application of SMOTE and LSSVM with Various Kernels for Predicting Refactoring at Method Level. In: Cheng, L., Leung, A., Ozawa, S. (eds) Neural Information Processing. ICONIP 2018. Lecture Notes in Computer Science(), vol 11305. Springer, Cham. https://doi.org/10.1007/978-3-030-04221-9_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-04221-9_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-04220-2

  • Online ISBN: 978-3-030-04221-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics