《软件学报杂志》发表论文赏析

融合结构与语义特征的代码注释决策支持方法

来源:软件学报杂志2018年第8期北京时间:

作者:黄袁,贾楠,周强,陈湘萍,熊英飞,罗笑南

单位:黄袁,中山大学 数据科学与计算机学院, 广东 广州 510006;国家数字家庭工程技术研究中心, 广东 广州 51000611,贾楠,中山大学 数据科学与计算机学院, 广东 广州 510006;河北地质大学 管理科学与工程学院, 河北 石家庄 05003102,周强,中山大学 数据科学与计算机学院, 广东 广州 510006;国家数字家庭工程技术研究中心, 广东 广州 51000603,陈湘萍,国家数字家庭工程技术研究中心, 广东 广州 510006;中山大学 先进技术研究院, 广东 广州 51000604,熊英飞,北京大学 信息科学技术学院 软件研究所, 北京 100871;高可信软件技术教育部重点实验室(北京大学), 北京 10087105,罗笑南,中山大学 数据科学与计算机学院, 广东 广州 510006;国家数字家庭工程技术研究中心, 广东 广州 51000606

摘要:代码注释是辅助编程人员理解源代码的有效手段之一.高质量的注释决策不仅能够覆盖软件系统中的核心代码片段,还能避免产生多余的代码注释.然而在实际开发中,编程人员往往缺乏统一的注释规范,大部分的注释决策都取决于个人经验以及领域知识.对于新手程序员来说,注释决策显然成为一项重要而艰巨的任务.为了减少编程人员投入过多的精力在注释决策上,从大量的代码注释实例中学习出一种通用的注释决策规范,并提出了CommentAdviser方法,以辅助编程人员在代码开发过程中做出恰当的注释决策.由于注释决策与代码本身的上下文信息密切相关,因此,从当前代码行的上下文代码中提取代码结构特征以及代码语义特征作为支持注释决策的主要依据.然后,利用机器学习算法判定当前代码行是否为可能的注释点.在GitHub中的10个大型开源软件的数据集上评估了所提出的方法,实验结果以及用户调研表明,代码注释决策支持CommentAdviser方法的可行性和有效性.

关键词:代码注释;结构特征;语义特征;机器学习;注释决策

基金资助:国家重点研发计划(2016YFB1000101);国家自然科学基金(61672545,61402546);广东省科技计划项目(2013B0907 00009);中山市科技计划项目(2016A1044)

填文献完整题目 获取完整文献

填写需求
联系方式
注:学术顾问会在1小时内联系您,请留意!