用于软件工作量估算的异构图神经网络
软件工程
2022-07-04 v2 人工智能
摘要
软件工作量可通过故事点(story point)[35]来衡量。当前自动估算故事点的方法侧重于应用预训练嵌入模型和深度学习进行文本回归以解决该问题,这需要昂贵的嵌入模型。我们提出HeteroSP,一种从敏捷软件项目问题的文本输入估算故事点的工具。我们选取GPT2SP [12]和Deep-SE [8]作为比较的基线。首先,通过对故事点数据集[8]的分析,我们得出结论:软件问题实际上是自然语言句子与引用代码片段的混合,并且存在大词汇量相关的问题。其次,我们提供一个模块来规范化软件问题的输入文本,包括词与代码令牌。第三,我们设计了一种算法,将输入的软件问题转换为具有不同类型节点和边的图。第四,我们构建了一个异构图神经网络模型,借助fastText [6]构建初始节点嵌入,以学习并预测新问题的故事点。我们在三种估算场景下与基线方法进行比较,包括项目内、仓库内跨项目以及跨仓库跨项目。我们在三种场景下取得的平均绝对误差(MAE)分别为2.38、2.61和2.63。我们在2/3的场景中优于GPT2SP,而在最具挑战性的场景中显著以更少的运行时间优于Deep-SE。我们还将我们的方法与不同的同构图神经网络模型比较,结果表明异构图神经网络模型在故事点估算上优于同构模型。在时间性能方面,我们在节点嵌入初始化、模型构建和故事点估算这三个过程中均取得约570秒的时间性能。
引用
@article{arxiv.2206.11023,
title = {Heterogeneous Graph Neural Networks for Software Effort Estimation},
author = {Hung Phan and Ali Jannesari},
journal= {arXiv preprint arXiv:2206.11023},
year = {2022}
}
备注
Accepted in the Technical Papers Track of the 16th International Symposium on Empirical Software Engineering and Measurement, 2022 (ESEM 2022)