arXiv:2505.01136cs.SEcs.IR2025-05被引 2

首个C++自述技术债数据集,助力跨语言技术债研究

Descriptor: C++ Self-Admitted Technical Debt Dataset (CppSATD)

  • 构建53万+带注释的C++代码片段,标注自述技术债
  • 数据量超53万条,填补C++领域技术债研究空白
  • 适合软件工程、代码分析与自动化检测方向研究者

在软件开发中,技术债(TD)指开发者为应对紧急工期和资源限制而做出的次优实现选择,给后续维护带来挑战。自述技术债(SATD)是技术债的一种,指开发者明确承认的技术问题,通常以源码注释形式表达。以往关于SATD的研究主要集中在Java语言,导致跨语言研究存在明显缺口。本文通过构建专门针对C++语言的饱和数据集CppSATD,包含超过531,000个已标注的注释及其代码上下文,填补了该领域的空白。该数据集可作为未来研究的基础,用于开发C++中的技术债检测方法、推广现有发现至其他语言,或推动跨语言技术债的深入研究。

原文摘要 · Abstract (English)

In software development, technical debt (TD) refers to suboptimal implementation choices made by the developers to meet urgent deadlines and limited resources, posing challenges for future maintenance. Self-Admitted Technical Debt (SATD) is a sub-type of TD, representing specific TD instances ``openly admitted'' by the developers and often expressed through source code comments. Previous research on SATD has focused predominantly on the Java programming language, revealing a significant gap in cross-language SATD. Such a narrow focus limits the generalizability of existing findings as well as SATD detection techniques across multiple programming languages. Our work addresses such limitation by introducing CppSATD, a dedicated C++ SATD dataset, comprising over 531,000 annotated comments and their source code contexts. Our dataset can serve as a foundation for future studies that aim to develop SATD detection methods in C++, generalize the existing findings to other languages, or contribute novel insights to cross-language SATD research.

技术债代码分析C++

Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。