Large Language Models (LLMs) have significantly impacted numerous domains, including Software Engineering (SE). Many recent publications have explored LLMs applied to various SE tasks. Nevertheless, a comprehensive understanding of the application, effects, and possible limitations of LLMs on SE is still in its early stages. To bridge this gap, we conducted a systematic literature review on LLM4SE, with a particular focus on understanding how LLMs can be exploited to optimize processes and outcomes. We collect and analyze 229 research papers from 2017 to 2023 to answer four key research questions (RQs). In RQ1, we categorize different LLMs that have been employed in SE tasks, characterizing their distinctive features and uses. In RQ2, we analyze the methods used in data collection, preprocessing, and application highlighting the role of well-curated datasets for successful LLM for SE implementation. RQ3 investigates the strategies employed to optimize and evaluate the performance of LLMs in SE. Finally, RQ4 examines the specific SE tasks where LLMs have shown success to date, illustrating their practical contributions to the field. From the answers to these RQs, we discuss the current state-of-the-art and trends, identifying gaps in existing research, and flagging promising areas for future study.
翻译:大型语言模型(LLMs)已对包括软件工程(SE)在内的诸多领域产生显著影响。近年大量研究文献探索了LLMs在各类SE任务中的应用。然而,人们对LLMs在SE领域的应用效果、影响及潜在局限性的全面认知仍处于早期阶段。为填补这一空白,我们针对LLM4SE开展了系统性文献综述,重点探究如何利用LLMs优化流程与产出。我们收集并分析了2017至2023年间229篇研究论文,以回答四个关键研究问题(RQs)。在RQ1中,我们对SE任务中采用的不同类型LLMs进行归类,刻画其独特特征与应用方式。RQ2则分析数据采集、预处理及应用方法,揭示精心设计的数据集对成功实施SE领域LLM的关键作用。RQ3探讨了优化与评估LLMs在SE中表现所采用的策略。最后,RQ4考察了当前LLMs已取得成功的具体SE任务,阐明其对领域发展的实际贡献。基于这些问题答案,我们论述了当前研究前沿与趋势,识别现有研究空白,并为未来研究指明具有潜力的方向。