基于BP神经网络的代码坏味检测
Detection of Bad Smell in Code Based on BP Neural Network作者机构:西安邮电大学计算机学院西安710000
出 版 物:《计算机工程》 (Computer Engineering)
年 卷 期:2020年第46卷第10期
页 面:216-222,230页
学科分类:08[工学] 0835[工学-软件工程] 081202[工学-计算机软件与理论] 0812[工学-计算机科学与技术(可授工学、理学学位)]
基 金:陕西省科技厅工业公关项目“基于搜索的程序并行测试数据优化关键技术”(2018GY-014) 西安市科技计划项目“基于群体智能的多目标软件测试优化关键技术研究”(GXYD17.10)
主 题:代码坏味 软件维护 BP神经网络 深度学习 检测模型
摘 要:程序中若出现代码坏味将严重影响其质量且难以对软件维护提供保障。针对机器学习算法在代码坏味检测中准确度较低以及数据集仅存在单一类型代码坏味的问题,提出一种基于BP神经网络的代码坏味检测方法。考虑软件实际开发过程中会存在不同类型的坏味,对数据类、上帝类、长方法和特征依恋4种代码坏味进行研究并将其合并为方法级别和类级别的2种坏味数据集,根据数据集中的标签信息进行有监督深度学习,进而构建代码坏味的真假阳性检测模型。实验结果表明,相比基于机器学习和基于度量的代码坏味检测方法,该方法的平均准确度提高15.19%,平均F1值提高58.39%。