中文

基于词嵌入与卷积神经网络并考虑设计缺陷的缺陷分派方法

软件工程 2023-03-29 v1

摘要

在软件维护阶段解决缺陷是一项复杂的任务。缺陷分派是解决缺陷的主要任务之一。有些缺陷若不做设计决策便无法妥善修复,必须分派给设计人员而非程序员,以避免产生可能导致后续缺陷报告的坏味道。因此,将部分缺陷交由设计人员检查可能的设计缺陷十分重要。据我们所知,考虑将缺陷交由设计人员处理的工作寥寥无几。故此,本文研究了该问题。本文构建了一个数据集,并提出了一种基于 CNN 的模型,通过学习缺陷报告中易在代码中产生坏味道的特征,预测是否需要将缺陷分派给设计人员。每个缺陷的特征基于其文本特征(如摘要与描述)从 CNN 中提取。在修复过程中使用 PMD 工具加入其中的坏样本数量决定了缺陷标签。将新缺陷的摘要与描述输入模型,模型预测是否需要交由设计人员。在具有足够样本量用于基于深度学习的模型训练的数据集上,达到了 75%(或更高)的准确率。本文提出了一种预测缺陷是否交由设计人员的模型。通过在 10 个项目上测试该模型,证明了其在接收到缺陷报告时预测交由设计人员处理的效率。

关键词

引用

@article{arxiv.2209.09553,
  title  = {Using Word Embedding and Convolution Neural Network for Bug Triaging by Considering Design Flaws},
  author = {Reza Sepahvand and Reza Akbari and Behnaz Jamasb and Sattar Hashemi and Omid Boushehrian},
  journal= {arXiv preprint arXiv:2209.09553},
  year   = {2023}
}