[发明专利]一种基于用户评论的移动APP变更文件定位方法在审
申请号: | 201811539710.6 | 申请日: | 2018-12-17 |
公开(公告)号: | CN109766120A | 公开(公告)日: | 2019-05-17 |
发明(设计)人: | 周宇;苏彦颀;杨忻莹;史志成;黄志球 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F16/332 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 贺翔 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户评论 文件定位 版本控制工具 变更 移动 源代码文件处理 源代码文件 后续操作 维护软件 信息扩展 准确率 开发 | ||
1.一种基于用户评论的移动APP变更文件定位方法,其特征在于,包括步骤如下:
(1)将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需的形式;
(2)利用版本控制工具的提交信息扩展源代码文件;
(3)基于用户评论定位变更文件。
2.根据权利要求1所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(1)中将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需形式具体包括:对用户评论采用ARdoc分类器,划分成句子级别并且进行分类,提取所分类别中特征需求和问题发现这两个类别,再将这两个类别中的句子采用Stanford nlp工具包中的parser解析器解析成语法树,采用自底向上的处理方法分解成原子语句,最后使用Stanford nlp工具包中的lemma组件对所得数据进行处理,将所得数据中的单词还原成单词的原形;对版本控制工具的提交信息使用Stanford nlp工具包中的lemma组件进行处理,将版本控制工具的提交信息中的单词还原成单词的原形;对源代码文件先提取java文件和xml文件,再对java文件使用抽象语法树进行分析提取其中的代码组件信息,最后对所提取的代码组件信息使用Stanford nlp工具包中的lemma组件进行处理,将所提取的代码组件信息中的单词还原成单词的原形。
3.根据权利要求2所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述代码组件信息包括源代码文件路径、类的JavaDoc注释、字段声明、方法的JavaDoc注释和方法名称。
4.根据权利要求1所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(2)中利用版本控制工具的提交信息扩展源代码文件具体包括:对每个源代码文件,遍历所有版本控制工具的提交信息,若版本控制工具的提交信息的源代码文件中包含该源代码文件,则将该条版本控制工具的提交信息中的标题,描述,时间信息作为该源代码文件的一个扩展,称为源代码文件的扩展信息。
5.根据权利要求4所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(3)中定位变更文件分为两部分:一是使用源代码文件的代码组件信息来计算用户评论与源代码文件的相似度;二是使用源代码文件的扩展信息来计算用户评论与源代码文件的相似度,最后再采用动态权值分配将两个相似度值合并,用最终合并后的结果进行定位。
6.根据权利要求5所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(3)使用源代码文件的代码组件信息来计算用户评论与源代码文件的相似度具体包括:将源代码文件的代码组件信息转换成词袋模型,再将用户评论转换成词袋模型,使用非对称Dice系数来计算这两个词袋模型的相似度,对非对称Dice系数有所改进,具体改进后的公式如下所示:
其中,是包含在用户评论ri中的单词集合,是包含在类j的源代码文件的代码组件信息中的单词集合,是单词wk的df权重,是单词wt的df权重,是指示函数,即该指示函数括号内条件成立时,该指示函数的返回值为1,否则为0,min函数从两个集合中获取单词数较少的单词集合;使用每个单词的df权重而不是1来改进非对称Dice系数,其中df权重的计算方式如下所示:
其中,是单词wx在所有用户评论中出现的次数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811539710.6/1.html,转载请声明来源钻瓜专利网。