Can LLMs Extract Architectural Design Decisions from Source Code Commits? - A Preliminary Exploratory Study
作者: Amey Karan, Rudra Dhar, Mohamed Soliman, Karthik Vaidhyanathan
分类: cs.SE, cs.AI
发布日期: 2026-09-03
备注: Accepted at IdeaArch Workshop at ECSA 2026
💡 一句话要点
利用大型语言模型提取源代码提交中的架构设计决策
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 架构设计决策 大型语言模型 源代码分析 自动化知识管理 软件工程
📋 核心要点
- 核心问题:从源代码提交中提取架构设计决策(ADD)面临隐含和无结构的挑战,现有方法难以有效恢复这些信息。
- 方法要点:本研究利用四种大型语言模型(LLMs)进行零样本和少样本提示,探索其在提取ADD方面的有效性。
- 实验或效果:所有模型的BERT-F1均超过0.81,少样本提示显著提高了对齐度,表明LLMs在此任务中的潜力。
📝 摘要(中文)
背景:架构设计决策(ADD)捕捉了软件系统结构和演变背后的理由,但通常未被明确记录,往往隐藏在源代码提交中。恢复这些决策对架构知识管理(AKM)至关重要。问题:从提交中提取ADD具有挑战性,因为其隐含且无结构。大型语言模型(LLMs)在理解代码和文本方面表现出强大能力,但其在此任务中的有效性尚未深入探讨。研究:我们进行了一项初步研究,使用四种LLM(Gemini 3 Pro、DeepSeek R1、Kimi K2、Qwen3)对来自开源项目的30个开发者编写的ADD进行零样本和少样本提示。我们使用ROUGE-L、BLEU、METEOR和BERTScore对输出进行评分,并由一位作者手动审查Gemini的输出。结果:所有模型的BERT-F1均超过0.81,少样本提示提高了对齐度(Gemini BERT-F1:0.828提升至0.847)。然而,生成的ADD往往过长、过于关注实现,缺乏决策背后的理由。这突显了架构感知LLM系统和自动化AKM的机会。
🔬 方法详解
问题定义:本研究旨在解决从源代码提交中提取架构设计决策(ADD)的具体问题。现有方法由于ADD的隐含性和无结构性,难以有效提取这些信息,导致架构知识管理(AKM)面临挑战。
核心思路:论文的核心思路是利用大型语言模型(LLMs)在理解代码和文本方面的能力,通过零样本和少样本提示来提取ADD。这种设计旨在探索LLMs在处理隐含信息方面的潜力。
技术框架:整体架构包括数据收集、模型选择、提示设计和结果评估四个主要模块。首先,从开源项目中收集30个ADD,然后使用四种LLM进行处理,最后通过多种评估指标对结果进行评分。
关键创新:本研究的关键创新在于首次系统性地评估LLMs在提取ADD方面的有效性,尤其是通过少样本提示提升模型输出的对齐度。这与现有方法的本质区别在于,传统方法往往依赖于手动标注或规则,而本研究则利用了LLMs的自适应能力。
关键设计:在实验中,使用了ROUGE-L、BLEU、METEOR和BERTScore等多种评估指标来量化模型输出的质量。此外,Gemini模型的输出由一位作者进行了手动审查,以确保结果的可靠性。
🖼️ 关键图片
📊 实验亮点
实验结果显示,所有模型的BERT-F1均超过0.81,且通过少样本提示,Gemini模型的BERT-F1从0.828提升至0.847。这表明LLMs在提取架构设计决策方面具有显著潜力,但生成的ADD往往缺乏决策背后的理由,提示未来研究的方向。
🎯 应用场景
该研究的潜在应用领域包括软件工程、架构知识管理和智能代码分析等。通过有效提取架构设计决策,开发者可以更好地理解软件系统的演变过程,提升软件维护和重构的效率,最终推动软件开发的智能化进程。
📄 摘要(原文)
Context: Architectural Design Decisions (ADDs) capture the rationale behind the structure and evolution of software systems but are rarely documented explicitly, and are often hidden inside source code commits. Recovering them is important for Architectural Knowledge Management (AKM). Problem: Extracting ADDs from commits is challenging due to their implicit and unstructured nature. Large Language Models (LLMs) have shown strong capabilities in understanding code and text, yet their effectiveness for this task remains underexplored. Study: We present a preliminary study using four LLMs (Gemini 3 Pro, DeepSeek R1, Kimi K2, Qwen3) with zeroshot and fewshot prompting on 30 developer-written ADDs from open-source projects. We score outputs with ROUGE-L, BLEU, METEOR, and BERTScore, and one author manually reviews the Gemini outputs. Results: All models reach a BERT-F1 above 0.81, and fewshot prompting improves alignment (Gemini BERT-F1: 0.828 to 0.847). However, the generated ADDs are often too long, implementation-focused, and miss the rationale behind the decision. This highlights opportunities for architecture-aware LLM systems and automated AKM.