论文标题
有条件陈述的框架技术债务识别和描述
A Framework for Conditional Statement Technical Debt Identification and Description
论文作者
论文摘要
当开发团队偏爱短期可操作性而不是长期稳定性时,就会发生技术债务。由于这将软件可维护性置于风险之中,因此技术债务需要尽早注意,以免支付累积利息。现有的大多数工作都集中在使用代码注释(称为自动化技术债务(SATD))的技术债务上。但是,在许多情况下,没有明确承认技术债务实例,而是深深地隐藏在法规中。在本文中,我们提出了一个框架,该框架可以满足代码中没有SATD评论的框架。我们自我贴上的技术债务识别和描述(SATDID)框架决定是否应该为输入代码片段进行自我吸收。如果是这种情况,SATDID将自动生成可与代码附加的适当描述性SATD注释。尽管我们的方法原则上适用于任何类型的代码片段,但我们将重点放在有条件陈述中隐藏的技术债务上,这是代码中最携带TD的部分之一。我们探索和评估SATDID的不同实现。评估结果证明了我们框架对多个基准测试的适用性和有效性。与基准的结果相比,我们的方法至少提供了至少21.35%,59.36%,31.78%和583.33%的改善,分别提高了精度,召回,F-1和BLEU-4分数。此外,我们对SATDID产生的SATD评论进行人体评估。在1-5和0-5的量表中,可接受性和可理解性,我们的方法实现的总手段分别为3.128和3.172。
Technical Debt occurs when development teams favour short-term operability over long-term stability. Since this places software maintainability at risk, technical debt requires early attention to avoid paying for accumulated interest. Most of the existing work focuses on detecting technical debt using code comments, known as Self-Admitted Technical Debt (SATD). However, there are many cases where technical debt instances are not explicitly acknowledged but deeply hidden in the code. In this paper, we propose a framework that caters for the absence of SATD comments in code. Our Self-Admitted Technical Debt Identification and Description (SATDID) framework determines if technical debt should be self-admitted for an input code fragment. If that is the case, SATDID will automatically generate the appropriate descriptive SATD comment that can be attached with the code. While our approach is applicable in principle to any type of code fragments, we focus in this study on technical debt hidden in conditional statements, one of the most TD-carrying parts of code. We explore and evaluate different implementations of SATDID. The evaluation results demonstrate the applicability and effectiveness of our framework over multiple benchmarks. Comparing with the results from the benchmarks, our approach provides at least 21.35%, 59.36%, 31.78%, and 583.33% improvements in terms of Precision, Recall, F-1, and Bleu-4 scores, respectively. In addition, we conduct human evaluation to the SATD comments generated by SATDID. In 1-5 and 0-5 scales for Acceptability and Understandability, the total means achieved by our approach are 3.128 and 3.172, respectively.