Litcius/Paper detail

Machine/Deep Learning for Software Engineering: A Systematic Literature Review

Simin Wang, LiGuo Huang, Amiao Gao, Jidong Ge, Tengfei Zhang, Haitao Feng, Ishna Satyarth, Ming Li, He Zhang, Vincent Ng

2022IEEE Transactions on Software Engineering80 citationsDOI

Abstract

Since 2009, the deep learning revolution, which was triggered by the introduction of ImageNet, has stimulated the synergy between Software Engineering (SE) and Machine Learning (ML)/Deep Learning (DL). Meanwhile, critical reviews have emerged that suggest that ML/DL should be used cautiously. To improve the applicability and generalizability of ML/DL-related SE studies, we conducted a 12-year Systematic Literature Review (SLR) on 1,428 ML/DL-related SE papers published between 2009 and 2020. Our trend analysis demonstrated the impacts that ML/DL brought to SE. We examined the complexity of applying ML/DL solutions to SE problems and how such complexity led to issues concerning the reproducibility and replicability of ML/DL studies in SE. Specifically, we investigated how ML and DL differ in data preprocessing, model training, and evaluation when applied to SE tasks, and what details need to be provided to ensure that a study can be reproduced or replicated. By categorizing the rationales behind the selection of ML/DL techniques into five themes, we analyzed how model performance, robustness, interpretability, complexity, and data simplicity affected the choices of ML/DL models.

Topics & Concepts

Generalizability theoryInterpretabilityComputer scienceArtificial intelligenceMachine learningRobustness (evolution)PreprocessorDeep learningData pre-processingSimplicityMathematicsChemistryBiochemistryPhilosophyStatisticsEpistemologyGeneSoftware Engineering ResearchSoftware Reliability and Analysis ResearchSoftware Engineering Techniques and Practices
Machine/Deep Learning for Software Engineering: A Systematic Literature Review | Litcius