国内刊号:31-1289/TP
国际刊号:1000-3428
发布日期:
作者:王曙燕, 张一权, 孙家泽
单位:西安邮电大学 计算机学院, 西安 710000
关键词:代码坏味,软件维护,BP神经网络,深度学习,检测模型
基金:陕西省科技厅工业公关项目"基于搜索的程序并行测试数据优化关键技术"(2018GY-014);西安市科技计划项目"基于群体智能的多目标软件测试优化关键技术研究"(GXYD17.10)。
程序中若出现代码坏味将严重影响其质量且难以对软件维护提供保障。针对机器学习算法在代码坏味检测中准确度较低以及数据集仅存在单一类型代码坏味的问题,提出一种基于BP神经网络的代码坏味检测方法。考虑软件实际开发过程中会存在不同类型的坏味,对数据类、上帝类、长方法和特征依恋4种代码坏味进行研究并将其合并为方法级别和类级别的2种坏味数据集,根据数据集中的标签信息进行有监督深度学习,进而构建代码坏味的真假阳性检测模型。实验结果表明,相比基于机器学习和基于度量的代码坏味检测方法,该方法的平均准确度提高15.19%,平均F1值提高58.39%。
来源:2020年第10期
《计算机工程》期刊编辑部