论文标题
软件工程的机器学习:系统映射
Machine Learning for Software Engineering: A Systematic Mapping
论文作者
论文摘要
背景:软件开发行业正在迅速采用机器学习,以将现代软件系统转换为高度智能和自学系统。但是,机器学习对改善软件工程生命周期本身的全部潜力尚待发现,即,在何种程度上,机器学习可以帮助降低软件工程的努力/复杂性,并提高所得软件系统的质量。迄今为止,尚无综合研究探讨在软件工程生命周期阶段采用机器学习的最新目前。目的:本文解决了上述问题,并旨在介绍有关软件工程中机器学习量不断增长的最先进的问题。方法:我们根据经验软件工程的标准准则和原则进行了有关机器学习在软件工程中的应用的系统映射研究。结果:这项研究介绍了软件工程(MLSE)的机器学习,根据其适用于各种软件工程生命周期阶段的最先进的机器学习技术。总体而言,由于这项研究,严格选择并分析了227篇文章。结论:从选定的文章中,我们探讨了各种方面,这些方面应有助于学者和从业人员了解软件工程项目中采用机器学习技术的潜力。
Context: The software development industry is rapidly adopting machine learning for transitioning modern day software systems towards highly intelligent and self-learning systems. However, the full potential of machine learning for improving the software engineering life cycle itself is yet to be discovered, i.e., up to what extent machine learning can help reducing the effort/complexity of software engineering and improving the quality of resulting software systems. To date, no comprehensive study exists that explores the current state-of-the-art on the adoption of machine learning across software engineering life cycle stages. Objective: This article addresses the aforementioned problem and aims to present a state-of-the-art on the growing number of uses of machine learning in software engineering. Method: We conduct a systematic mapping study on applications of machine learning to software engineering following the standard guidelines and principles of empirical software engineering. Results: This study introduces a machine learning for software engineering (MLSE) taxonomy classifying the state-of-the-art machine learning techniques according to their applicability to various software engineering life cycle stages. Overall, 227 articles were rigorously selected and analyzed as a result of this study. Conclusion: From the selected articles, we explore a variety of aspects that should be helpful to academics and practitioners alike in understanding the potential of adopting machine learning techniques during software engineering projects.