Litcius/Paper detail

Machine Learning for Software Engineering: A Tertiary Study

Zoe Kotti, Rafaila Galanopoulou, Diomidis Spinellis

2022ACM Computing Surveys41 citationsDOI

Abstract

Machine learning (ML) techniques increase the effectiveness of software engineering (SE) lifecycle activities. We systematically collected, quality-assessed, summarized, and categorized 83 reviews in ML for SE published between 2009 and 2022, covering 6,117 primary studies. The SE areas most tackled with ML are software quality and testing, while human-centered areas appear more challenging for ML. We propose a number of ML for SE research challenges and actions, including conducting further empirical validation and industrial studies on ML, reconsidering deficient SE methods, documenting and automating data collection and pipeline processes, reexamining how industrial practitioners distribute their proprietary data, and implementing incremental ML approaches.

Topics & Concepts

Computer sciencePipeline (software)Software engineeringQuality (philosophy)SoftwareSoftware qualitySoftware developmentOperating systemPhilosophyEpistemologySoftware Engineering ResearchSoftware Reliability and Analysis ResearchSoftware Engineering Techniques and Practices
Machine Learning for Software Engineering: A Tertiary Study | Litcius