  Software engineering (SE) is a dynamic field that involves multiple phases
all of which are necessary to develop sustainable software systems. Machine
learning (ML), a branch of artificial intelligence (AI), has drawn a lot of
attention in recent years thanks to its ability to analyze massive volumes of
data and extract useful patterns from data. Several studies have focused on
examining, categorising, and assessing the application of ML in SE processes.
We conducted a literature review on primary studies to address this gap. The
study was carried out following the objective and the research questions to
explore the current state of the art in applying machine learning techniques in
software engineering processes. The review identifies the key areas within
software engineering where ML has been applied, including software quality
assurance, software maintenance, software comprehension, and software
documentation. It also highlights the specific ML techniques that have been
leveraged in these domains, such as supervised learning, unsupervised learning,
and deep learning.
  Keywords: machine learning, deep learning, software engineering, natural
language processing, source code
