paperbot · PL 论文追踪

全部论文 待读 收藏

FeatX: Editing Software by Editing Features for Repository-Level Code Evolution

FeatX:通过编辑特性实现仓库级代码演化的软件编辑
ASE Proceedings of the 41st IEEE/ACM International Conference on Automated Software Engineering2026引用 0 inbox
Xutian Li, Yifeng Zhu, Xianlin Zhao, Yanzhen Zou, Lu Zhang, Bing Xie
crossref: 2026-10-09

AI 速览

一句话:提出特性导向的 LLM 代码演化工具 FeatX,将特性编辑自动映射并翻译为仓库级代码补丁。

现有基于大语言模型的软件演化交互范式以代码为中心,需要人工管理上下文并反复迭代提示词。本文提出 FeatX,一种“通过编辑特性来编辑软件”的特性导向工具。给定已有代码仓库,FeatX 先抽取分层的 epic-feature 结构,并建立显式的特性到代码映射;随后调用三阶段 Evolution Agent,将用户的特性编辑意图翻译为代码补丁。整个工作流通过四个协同面板呈现给用户。作者在受控用户研究与 38 个真实特性编辑提交的重放实验上进行评估,结果表明 FeatX 相比原生 ChatGPT 显著降低认知负荷并提升可用性;在函数级修改定位 F1 上,相对强 LLM 基线取得 42.6% 的相对提升,且总成本仅约 0.07 美元。

问题
LLM 辅助软件演化通常以代码为中心,开发者需手动维护上下文、反复迭代提示词,导致认知负荷高且修改定位不准确。
方法
从仓库中抽取分层 epic-feature 结构及特性到代码的显式映射,并用三阶段 Evolution Agent 将特性编辑翻译为代码补丁,通过四个协同面板暴露工作流。
评估
通过受控用户研究以及与原生 ChatGPT 的对比评估可用性和认知负荷,并在 38 个真实特性编辑提交上进行重放实验,比较函数级修改定位 F1 与成本。
原文摘要(Abstract)

Large language models (LLMs) are increasingly used for software evolution, yet most interaction paradigms remain code-centric and require manual context management and prompt iteration. We present FeatX, a feature-oriented tool for editing software by editing features. Given an existing repository, FeatX extracts a hierarchical epic-feature structure with explicit feature-to-code mappings, then invokes a three-stage Evolution Agent to translate feature edits into code patches. The workflow is exposed through four coordinated panels. Across a controlled user study and replay experiments on 38 real-world feature-editing commits, FeatX significantly reduces cognitive load and improves usability compared with vanilla ChatGPT. It also achieves a 42.6% relative improvement in function-level modification localization F1 over strong LLM baselines, at substantially lower cost ($0.07 in total). The tool and collected dataset are available at https://github.com/PKU-SoftwareReuse/FeatX, with a demonstration video at https://youtu.be/OZqKZ4Ii-yM.

链接与引用

DOI 原文 · arXiv · DBLP

BibTeX
@inproceedings{abs-2606-31206,
  title = {FeatX: Editing Software by Editing Features for Repository-Level Code Evolution},
  author = {Xutian Li and Yifeng Zhu and Xianlin Zhao and Yanzhen Zou and Lu Zhang and Bing Xie},
  booktitle = {ASE},
  year = {2026},
  doi = {10.1145/3832783.3834646}
}