A Systematic Literature Review on the Use of Deep Learning in Software Engineering Research

by   Cody Watson, et al.

An increasingly popular set of techniques adopted by software engineering (SE) researchers to automate development tasks are those rooted in the concept of Deep Learning (DL). The popularity of such techniques largely stems from their automated feature engineering capabilities, which aid in modeling software artifacts. However, due to the rapid pace at which DL techniques have been adopted, it is difficult to distill the current successes, failures, and opportunities of the current research landscape. In an effort to bring clarity to this cross-cutting area of work, from its modern inception to the present, this paper presents a systematic literature review of research at the intersection of SE DL. The review canvases work appearing in the most prominent SE and DL conferences and journals and spans 84 papers across 22 unique SE tasks. We center our analysis around the components of learning, a set of principles that govern the application of machine learning techniques (ML) to a given problem domain, discussing several aspects of the surveyed work at a granular level. The end result of our analysis is a research roadmap that both delineates the foundations of DL techniques applied to SE research, and likely areas of fertile exploration for the future.



There are no comments yet.


page 8

page 15

page 21

page 22

page 25

page 34

page 38


Software Engineering Meets Deep Learning: A Literature Review

Deep learning (DL) is being used nowadays in many traditional software e...

Code Generation Based on Deep Learning: a Brief Review

Automatic software development has been a research hot spot in the field...

A Survey on Deep Learning for Software Engineering

In 2006, Geoffrey Hinton proposed the concept of training ”Deep Neural N...

Synergy between Machine/Deep Learning and Software Engineering: How Far Are We?

Since 2009, the deep learning revolution, which was triggered by the int...

On the Replicability and Reproducibility of Deep Learning in Software Engineering

Deep learning (DL) techniques have gained significant popularity among s...

Deep Learning in Information Security

Machine learning has a long tradition of helping to solve complex inform...

Formal methods and software engineering for DL. Security, safety and productivity for DL systems development

Deep Learning (DL) techniques are now widespread and being integrated in...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.