[发明专利]一种针对具体软件历史代码库的词库自动构建方法有效
申请号: | 201510345253.7 | 申请日: | 2015-06-19 |
公开(公告)号: | CN104991909B | 公开(公告)日: | 2018-02-27 |
发明(设计)人: | 孙小兵;孙伟松;李斌;朱俊武;杨辉 | 申请(专利权)人: | 扬州大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京钟山专利代理有限公司32252 | 代理人: | 戴朝荣 |
地址: | 225009 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 具体 软件 历史 代码 词库 自动 构建 方法 | ||
1.一种针对具体软件历史代码库的词库自动构建方法,其特征在于如下步骤:
步骤1)提取出软件系统为java语言开发的软件系统的历史版本库中的代码和注释生成独立的文档语料库,并将该语料库分为纯代码文档库和纯注释文档库;
步骤2)对语料库中的纯代码文档进行预处理,包括托肯化、去停用词,提取元素,得到单词和词组以及它们在代码中的支持度;在托肯化的过程中,利用java中的“<子类名>+extends+<父类名>”的语法,基于中间单词“extends”分析出类与类之间的的继承关系,利用java中的“<类名>+implements+<接口>”的语法,基于中间单词“implements”分析出类与接口的关系,得到纯代码语料库中的词、词组关系库;
步骤3)对纯注释文档进行词性标注,然后进行预处理,包括托肯化、去停用词,提取出纯代码文档中的单词或词组以及它们在纯注释中的支持度,利用注释匹配分析出缩略关系,得到纯注释中的词、词组关系库;
步骤4)将纯代码语料库中词、词组关系库与纯注释语料库中词、词组关系库进行整合,去除相同或多余的单词和词组,得到整合后的词、词组关系库;
步骤5)先将步骤4)生成的词、词组关系库中的词组关系提取出来,得到词组关系库;其次对词、词组关系进行拆分、词干化得到纯单词文档;再对得到的单词进行词性标注,分析出词组关系、同义关系、缩略关系、得到单词关系库;最后将词组关系库和单词关系库整理出本系统的完整系统词库。
2.根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤1)所述的提取是指分别提取纯代码、纯注释文档:利用注释标识符,包括“/*........*/”、“//”、“/**.....*/”,提取出代码中的注释块,生成独立的纯代码语料库和纯注释语料库。
3.根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤2)所述元素包括标识符、类名、方法名、变量名。
4.根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤2)中所述的托肯化是指去除标点符号,去除数字,提取出单词和词组,并且记录单词和词组的支持度,支持度就是在代码和注释中单词或词组出现的次数;标识单词或词组的成份,成份是指该单词是类名、方法名、变量名;继承关系分析“<子类名>+extends+<父类名>”,类与接口关系分析“<类名>+implements+<接口>”。
5.根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤2)中所述的去停用词是指去除英文停用词。
6.权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤3)中所述的去除停用词是指去除英文停用词。
7.根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤5)中所述词组拆分是指在词组拆分之间进行词组关系标注,词组是指代码中的元素是由几个单词组成的,对一些按照驼峰规则和有下划短线相连的组合词进行分词。
8.根据根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤5)中所述词干化是将每个单词转化为它的原型,然后利用WordNet进行同义关系分析。
9.根据根据权利要求1所述的针对具体软件历史代码库的词库自动构建方法,其特征在于,步骤5)中所述系统词库包括以下内容:单词、词组、词性、成份、代码中的支持度、注释中的支持度、总的支持度、继承关系、词组关系、接口的实现关系、同义关系、缩略关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于扬州大学,未经扬州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510345253.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种通用的新型粉状光饰光亮剂及其制作方法
- 下一篇:一种防腐耐油涂料