[发明专利]一种基于WordNet的程序可读性分析方法有效

专利信息
申请号: 201410157340.5 申请日: 2014-04-18
公开(公告)号: CN103927179B 公开(公告)日: 2017-02-15
发明(设计)人: 孙小兵;刘杨超;朱俊武;李云 申请(专利权)人: 扬州大学
主分类号: G06F9/44 分类号: G06F9/44
代理公司: 南京苏科专利代理有限责任公司32102 代理人: 董旭东
地址: 225009 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了软件工程领域内的一种基于WordNet的程序可读性分析方法,包括如下步骤1)按照包名‑类名‑方法名的项目结构遍历出每个方法体,并且以包名_类名_方法名的形式标注;2)去除警示注释(通常出现在测试用例中,用于警告程序员会出现某种严重后果),TODO注释(是一种程序员认为应该做,而由于某些原因目前还没有做的工作);3)将注释分为短注释和长注释;4)对长注释进行预处理,并且用WordNet提取出注释的主题词;5)对注释映射的代码段用WordNet提取代码的主题词;6)对整个项目生成程序可读性分析树,并形成最终的分析数据,本发明有利于后期维护人员对陌生项目的理解,可用于软件的维护开发中。
搜索关键词: 一种 基于 wordnet 程序 可读性 分析 方法
【主权项】:
一种基于WordNet的程序可读性分析方法,其特征在于,包括以下步骤:步骤1) 按项目结构遍历出每个方法体,以包名_类名_方法名的形式标注,标注分为对注释的标注和对代码的标注;步骤2)去除警示注释和TODO注释;步骤3)将注释分为短注释和长注释,分类方法如下:短注释提取条件为:无“.”结尾的短语或者词数少于8个words的短句,并且代码长度控制在1到6行;除此之外的注释则为长注释;标记符合短注释条件的代码段及其注释,作为找出的不推荐加注释部分,对于不符合短注释条件的,放入步骤4和长注释一起分析;步骤4)对长注释进行预处理,并且用WordNet提取出注释的主题词,具体方法如下:a)分类:按照方法函数是否有返回值对长注释进行分类,有返回值的称为描述代码意图的注释Vn类,无返回值的称为提供描述信息的注释V类;b)预处理:对Vn类和V类注释进行预处理,分为三个步骤:注释语句处理(Tokenization),去除if条件句,过去时态的语句,Vn类注释用WordNet分析时要添加方法体中return的注释段;去除停用词(Stop‑word Removal),去除注释关键字,注释关键字为常用的定冠词the、an;分词(Stemming),将注释语句拆分成单词块,利用WordNet接口将单词转换形态;c)提词:用WordNet对两种类型的注释提取主题词,Vn类注释提取动词和名词,v类注释提取动词;步骤5)对长注释映射的代码段用WordNet提取代码的主题词,具体方法如下:a)Vn类注释映射的代码段抽取方法函数名,参数名,变量名,常数名和返回值名字,利用WordNet和代码书写的驼峰写法进行分词,去除常用定冠词,最后利用wordNet提取出动词和名词;b)V类注释映射的代码段抽取方法的函数名,参数名,变量名,常数名和返回值名字,利用WordNet和代码书写的驼峰写法进行分词,去除常用定冠词,最后利用wordNet提取出动词;步骤6)对整个项目生成程序可读性分析树,并形成最终的分析数据;具体方法如下:按照项目目录,用WordNet对所有的注释‑代码进行主题词匹配,匹配成功则为‑1型,不成功则为1型或者2型,缺少匹配项的为0型;其中1型注释是针对于v类生成的必须修改的注释,2型注释是针对于vn类生成的必须修改的注释,0型注释归纳为需要注意的注释,并且生成程序可读性分析树,标注包,类下的注释准确率。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于扬州大学,未经扬州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201410157340.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top