Applying Machine Learning in Technical Debt Management: Future Opportunities and Challenges

  • Conference paper
  • First Online:
Quality of Information and Communications Technology (QUATIC 2020)

Abstract

Technical Debt Management (TDM) is a fast-growing field that in the last years has attracted the attention of both academia and industry. TDM is a complex process, in the sense that it relies on multiple and heterogeneous data sources (e.g., source code, feature requests, bugs, developers’ activity, etc.), which cannot be straightforwardly synthesized; leading the community to using mostly qualitative empirical methods. However, empirical studies that involve expert judgement are inherently biased, compared to automated or semi-automated approaches. To overcome this limitation, the broader (not TDM) software engineering community has started to employ machine learning (ML) technologies. Our goal is to investigate the opportunity of applying ML technologies for TDM, through a Systematic Literature Review (SLR) on the application of ML to software engineering problems (since ML applications on TDM are limited). Thus, we have performed a broader scope study, i.e., on machine learning for software engineering, and then synthesize the results so as to achieve our high-level goal (i.e., possible application of ML in TDM). Therefore, we have conducted a literature review, by browsing the research corpus published in five high-quality SE journals, with the goal of cataloging: (a) the software engineering practices in which ML is used; (b) the machine learning technologies that are used for solving them; and (c) the intersection of the two: develo** a problem-solution map**. The results are useful to both academics and industry, since the former can identify possible gaps, and interesting future research directions, whereas the latter can obtain benefits by adopting ML technologies.

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

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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 ship** worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Ampatzoglou, A., Bibi, S., Avgeriou, P., Verbeek, M., Chatzigeorgiou, A.: Identifying, categorizing and mitigating threats to validity in software engineering secondary studies. Inf. Softw. Technol. 106(2), 201–230 (2019)

    Article  Google Scholar 

  2. Ampatzoglou, Ar., Ampatzoglou, Ap., Chatzigeorgiou, A., Avgeriou, P.: The financial aspect of managing technical debt: a systematic literature review. Inf. Soft. Technol. 64(8), 52–73 (2015)

    Google Scholar 

  3. Aroussi, S., Mellouk, A.: Survey on machine learning-based QoE-QoS correlation models. In: International Conference on Computing, Management and Telecommunications (ComManTel’), Da Nang, Vietnam, 27–29 April 2014

    Google Scholar 

  4. Arvanitou, E.M., Ampatzoglou, A., Chatzigeorgiou, A., Avgeriou, P.: Introducing a ripple effect measure: a theoretical and empirical validation. In: International Symposium on Empirical Software Engineering and Measurement (ESEM 2015). IEEE, China, October 2015

    Google Scholar 

  5. Azeem, M.I., Palomba, F., Shi, L., Wang, Q.: Machine learning techniques for code smell detection: a systematic literature review and meta-analysis. Inf. Softw. Technol. 108(4), 115–138 (2019)

    Article  Google Scholar 

  6. Codabux, Z., Williams, B.J.: Technical debt prioritization using predictive analytics. In: 38th International Conference on Software Engineering Companion (ICSE 2016). ACM (2016)

    Google Scholar 

  7. Chatzigeorgiou, A., Ampatzoglou, Ap., Ampatzoglou, Ar., Amanatidis, T.: Estimating the breaking point for technical debt. In: 7th International Workshop on Managing Technical Debt (MTD 2015), 2 October 2015, pp. 53–56. IEEE, Germany (2015)

    Google Scholar 

  8. Dybå, T., Dingsøyr, T.: Empirical studies of agile software development: a systematic review. Inf. Softw. Technol. 50(9–10), 833–859 (2008)

    Article  Google Scholar 

  9. Arcelli Fontana, F., Mäntylä, M.V., Zanoni, M., Marino, A.: Comparing and experimenting machine learning techniques for code smell detection. Empir. Softw. Eng. 21(3), 1143–1191 (2015). https://doi.org/10.1007/s10664-015-9378-4

    Article  Google Scholar 

  10. Hamill, M., Goseva-Popstojanova, K.: Analyzing and predicting effort associated with finding and fixing software faults. Inf. Softw. Technol. 87(7), 1–18 (2017)

    Article  Google Scholar 

  11. Heckman, S., Williams, L.: A systematic literature review of actionable alert identification techniques for automated static code analysis. Inf. Softw. Technol. 53(4), 363–387 (2011)

    Article  Google Scholar 

  12. Herbold, S., Grabowski, J., Waack, S.: Calculation and optimisation of thresholds for sets of software metrics. Empir. Softw. Eng. 16(6), 812–841 (2011). https://doi.org/10.1007/s10664-011-9162-z

    Article  Google Scholar 

  13. Idri, A., Hosni, M., Abran, A.: Systematic literature review of ensemble effort estimation. J. Syst. Softw. 118(8), 151–175 (2016)

    Article  Google Scholar 

  14. ISO/IEC 25010:2011, Systems and software engineering—Systems and software Quality Requirements and Evaluation (SQuaRE)—System and software quality models, Geneva, Switzerland (2011)

    Google Scholar 

  15. Karanatsiou, D., Li, Y., Arvanitou, E.M., Misirlis, N., Wong, W.E.: A bibliometric assessment of software engineering scholars and institutions (2010–2017). J. Syst. Softw. 147(1), 246–261 (2019)

    Article  Google Scholar 

  16. Kaur, L., Mishra, A.: Cognitive complexity as a quantifier of version to version Java-based source code change: an empirical probe. Inf. Softw. Technol. 102 (2019)

    Google Scholar 

  17. Kazman, R., Bass, L.: Categorizing Business Goals for Software Architectures. CMU/SEI-2005-TR-021 (2005)

    Google Scholar 

  18. Kazman, R., et al.: A case study in locating the architectural roots of technical debt. In: 37th International Conference on Software Engineering, 16–24 May 2015. IEEE, Florence (2015)

    Google Scholar 

  19. Kitchenham, B., Brereton, O.P., Budgen, D., Turner, M., Bailey, J., Linkman, S.: Systematic literature reviews in software engineering – a systematic literature review. Inf. Softw. Technol. 51(1), 7–15 (2009)

    Article  Google Scholar 

  20. Kitchenham, B., Pfleeger, S.L.: Software quality: the elusive target. IEEE Softw. 13(1), 12–21 (1996)

    Article  Google Scholar 

  21. Kruchten, P., Nord, R.L., Ozkaya, I.: Technical debt: from metaphor to theory and practice. IEEE Softw. 29(6), 18–21 (2006)

    Article  Google Scholar 

  22. Li, Z., Avgeriou, P., Liang, P.: A systematic map** study on technical debt and its management. J. Syst. Softw. 101(3), 193–220 (2015)

    Article  Google Scholar 

  23. Mair, C., et al.: An investigation of machine learning based prediction systems. J. Syst. Softw. 53(1), 23–29 (2000)

    Article  Google Scholar 

  24. Myrtveit, I., Stensrud, E., Shepperd, M.: Reliability and validity in comparative studies of software prediction models. IEEE Trans. Softw. Eng. 31(5), 380–391 (2005)

    Article  Google Scholar 

  25. Sharma, T., Spinellis, D.: A survey on software smells. J. Syst. Softw. 138(4), 158–173 (2018)

    Article  Google Scholar 

  26. Skourletopoulos, G., Mavromoustakis, C., Bahsoon, R., Masotrakis, G., Pallis, E.: Predicting and quantifying the technical debt in cloud software engineering. In: 19th International Workshop on Computer-Aided Modeling and Design of Communication Links and Networks (CAMAD). IEEE Computer Society (2014)

    Google Scholar 

  27. Wen, J., Li, S., Lin, Z., Hu, Y., Huang, C.: Systematic literature review of machine learning based software development effort estimation models. Inf. Softw. Technol. 54(1), 41–59 (2012)

    Article  Google Scholar 

  28. Zhang, D., Tsai, J.J.P.: Machine learning and software engineering. In: 14th IEEE International Conference on Tools with Artificial Intelligence (ICTAI 2002), 4–6 November 2002 (2002)

    Google Scholar 

  29. Zhou, Y., Leung, H.: Empirical analysis of object-oriented design metrics for predicting high and low severity faults. Trans. Softw. Eng. 32(10), 771–789 (2006)

    Article  Google Scholar 

Download references

Acknowledgements

Work reported in this paper has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 871177 (project: SmartCLIDE).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Elvira-Maria Arvanitou .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Tsintzira, AA., Arvanitou, EM., Ampatzoglou, A., Chatzigeorgiou, A. (2020). Applying Machine Learning in Technical Debt Management: Future Opportunities and Challenges. In: Shepperd, M., Brito e Abreu, F., Rodrigues da Silva, A., PĂ©rez-Castillo, R. (eds) Quality of Information and Communications Technology. QUATIC 2020. Communications in Computer and Information Science, vol 1266. Springer, Cham. https://doi.org/10.1007/978-3-030-58793-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-58793-2_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-58792-5

  • Online ISBN: 978-3-030-58793-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics

Navigation