分享自:

大型语言模型在软件工程中的应用:系统文献综述

期刊:ACM Transactions on Software Engineering and MethodologyDOI:10.1145/3695988

大型语言模型在软件工程中的应用:系统性文献综述

作者及机构
本研究的核心作者团队由多位国际知名学者组成,包括华中科技大学的Xinyi Hou、Yanjie Zhao、Kailong Wang和Haoyu Wang,莫纳什大学的Yue Liu和John Grundy,新加坡管理大学的Zhou Yang和David Lo,北京航空航天大学的Li Li,以及香港理工大学的Xiapu Luo。该研究于2024年12月发表在《ACM Transactions on Software Engineering and Methodology》(TOSEM)期刊上,是首个全面梳理大型语言模型(Large Language Models, LLMs)在软件工程(Software Engineering, SE)领域应用的系统性文献综述(Systematic Literature Review, SLR)。

学术背景与动机
随着计算能力的提升和大规模数据的普及,LLMs在自然语言处理(NLP)领域展现出强大的能力,并逐渐渗透到软件工程领域。然而,LLMs在SE中的应用仍处于早期阶段,缺乏系统性的总结。尽管已有研究探讨LLMs在特定SE任务(如代码生成、程序修复)中的表现,但尚未形成对模型选择、数据预处理、优化方法及任务覆盖范围的全局视角。为此,本研究旨在填补这一空白,通过分析2017年至2024年间的395篇文献,回答四个核心研究问题(RQs),以指导未来研究与实践。

研究流程与方法
1. 文献检索与筛选
- 数据来源:覆盖IEEE Xplore、ACM Digital Library、ScienceDirect等7个数据库,并手动检索ICSE、FSE等顶级会议和期刊。
- 筛选标准:遵循系统性文献综述(SLR)规范,通过“准黄金标准”(Quasi-Gold Standard, QGS)方法提取关键词,结合自动化检索与雪球抽样(Snowballing)补充文献。最终从218,765篇初选文献中筛选出395篇高质量研究。
- 质量评估:采用10项质量评估标准(QAC),从相关性、方法严谨性、实验设计等维度评分,确保纳入文献的可靠性。

  1. 研究问题与分类框架
    • RQ1(模型架构):将LLMs分为三类——仅编码器(Encoder-only,如BERT)、编码器-解码器(Encoder-decoder,如T5)和仅解码器(Decoder-only,如GPT系列),分析其在SE任务中的适用性。
    • RQ2(数据处理):总结数据来源(开源数据集、工业数据等)、类型(代码、文本、图结构等)及预处理流程(如去噪、分词、数据分割)。
    • RQ3(优化与评估):梳理参数高效微调(Parameter-Efficient Fine-Tuning, PEFT)技术(如LoRA、Adapter Tuning)和提示工程(Prompt Engineering)方法(如Few-shot、Chain-of-Thought)。
    • RQ4(任务覆盖):将SE任务归纳为六大类——需求工程、软件设计、开发、质量保障、维护与管理,详细分析LLMs在85项具体任务中的表现。

主要发现
1. 模型架构趋势(RQ1)
- Decoder-only模型主导:2023年后,GPT系列等生成型模型占比达70.7%,因其在代码生成、补全等任务中表现优异。
- 任务适配性:Encoder-only模型(如CodeBERT)擅长代码理解,而Encoder-decoder模型(如CodeT5)在代码翻译和修复中更高效。

  1. 数据关键作用(RQ2)

    • 开源数据集为主:62.83%的研究依赖公开数据(如HumanEval),但工业数据仅占1.5%,揭示学术与工业场景的差距。
    • 文本与代码数据主导:文本数据(如需求文档)和代码数据(如源码)分别占比38.2%和26.1%,反映LLMs在NL与PL(Programming Language)交叉任务中的潜力。
  2. 优化技术突破(RQ3)

    • PEFT技术:LoRA通过低秩矩阵适配减少训练参数,在代码翻译任务中节省90%计算资源。
    • 提示工程创新:Chain-of-Thought和Auto-COT等动态提示方法显著提升模型推理能力,例如在代码生成任务中准确率提高32%。
  3. 任务覆盖广度(RQ4)

    • 代码生成与修复:Codex在Python编程挑战中解决72.31%的问题,GPT-4能生成可执行代码并解释逻辑。
    • 新兴应用场景:LLMs在需求分析、漏洞检测等传统难点任务中展现出替代传统工具的潜力。

结论与价值
本研究首次系统整合了LLM4SE领域的知识体系,揭示了三大趋势:
1. 技术融合:LLMs正推动SE从工具辅助向智能协同转型,例如自动化代码审查和测试用例生成。
2. 挑战与机遇:数据隐私、模型可解释性及工业适配性仍是未来研究重点。
3. 跨学科创新:提示工程与软件工程方法的结合(如结构化Chain-of-Thought)为复杂任务提供新思路。

亮点与创新
- 全面性:覆盖395篇文献,时间跨度为7年,是迄今最完整的LLM4SE综述。
- 方法论创新:提出基于架构-数据-任务的三维分类框架,为后续研究提供标准化分析工具。
- 实践指导:总结的优化技术(如LoRA)和评估指标(如Pass@k)可直接应用于工业场景。

其他价值
研究团队公开了所有分析工具和数据集(GitHub仓库:https://github.com/security-pride/llm4se_slr),推动领域内开源协作。此外,文中指出的研究空白(如工业数据缺乏)为后续研究指明了方向。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com