一种基于用户评论的移动APP变更文件定位方法技术

技术编号:21140485 阅读:32 留言:0更新日期:2019-05-18 04:59
本发明专利技术公开了一种基于用户评论的移动APP变更文件定位方法,包括步骤如下:将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需形式;利用版本控制工具的提交信息扩展源代码文件;基于用户评论定位变更文件。本发明专利技术提出基于用户评论的移动APP变更文件定位方法,结合版本控制工具的提交信息,提高了变更文件定位的准确率,减少了开发人员维护软件所需时间。

【技术实现步骤摘要】
一种基于用户评论的移动APP变更文件定位方法
本专利技术属于计算机
,尤其涉及一种基于用户评论的移动APP变更文件定位方法。
技术介绍
随着智能设备的广泛应用,移动应用程序(mobileAPP)存在大量的用户评论,现在已经成为软件生态系统的重要组成部分。这些用户评论一般分布在主要的在线应用商店,如GooglePlay和AppleAppStore。在用户评论中,包含了大量的有用信息,这些有用信息是开发人员与用户实现交互的一个重要接口。用户可以通过发表用户评论,提出一些新功能的要求及使用过程中遇到的一些问题,此信息对于软件的维护及改进有着至关重要的作用。不仅如此,现如今,移动应用市场井喷,想要在如此激烈的竞争中处于不败之地,就需要快速修复已存问题,满足用户反馈需求,实现快速高效的版本迭代,促进应用产品的持续交付,从而保证在激烈的竞争中处于优势地位。但是,随着开发人员对代码熟悉程度的遗忘及一些新引入的开发人员对应用程序展开维护,在寻找需要更改的源代码文件时,就会耗费大量时间,因此,快速定位到需要变更的源代码文件就成为了现如今急需解决的一个问题。为此,我们展开相关的研究工作,主要致力于过滤用户评论以得到有信息量的用户评论,将有信息量的用户评论定位到需要变更的源代码文件。在下文中,总结了将非正式文本信息与源代码文件相关联的主要相关研究,这些相关研究均发表在国际重要期刊或会议上,具有较高的参考价值。Panichella等人在2016年FSE上发表论文ARdoc:AppReviewsDevelopmentOrientedClassifier,提出了ARdoc,这种方法结合了自然语言处理,情感分析和文本分析技术,通过机器学习算法来检测用户评论中的句子,自动分类应用用户评论中包含的有用反馈,对于执行软件维护和演化任务非常重要。用户评论中包含的ARdoc分类句,对于维护视角非常有用,包括:特征请求,问题发现,信息搜索,信息提供等。Saha等人提出使用基于代码结构(即类和方法名称)的结构化信息检索来改进错误定位。他们的方法名为BLUIR,利用向量空间模型将错误报告链接到源代码文件。Asuncion等人设计了TRASE,这种方法使用基于LDA的主题建模来增强预期可追溯性所提供的信息。由于无法事先了解潜在主题的数量,作者使用不同的设置(即α=10,20和30)配置了LDA算法的参数α(即主题数)。此外,TRASE利用的技术检索源代码文件的链接需要开发人员提供有关需要变更的项目部分的额外信息,这是我们的方法所不需要的。Palomba等人在2015年ICSME上发表论文UserReviewsMatter!TrackingCrowdsourcedReviewstoSupportEvolutionofSuccessfulApps提出了CRISTAL(CrowdsourcingRevIewstoSupporTAppevoLution),一种用于跟踪源代码文件提交的信息丰富的众包用户评论以及监控开发人员在多大程度上满足用户请求和后续用户反应的工具,用于跟踪源代码文件更改的信息性人群用户评论,以及监控开发人员在多大程度上适应人群请求以及后续用户反应(如评级中所反映的)。AdelinaCiurumelea等人在2017年SANRER上发表论文AnalyzingReviewsandCodeofMobileAppsforBetterReleasePlanning提出了URR(theUserRequestReferencerprototype),使用机器学习和信息检索技术,根据我们的分类法自动对用户评论进行分类,并建议特定用户评论需要变更哪些源代码文件来处理用户评论中描述的问题。其工作目标是根据相关的移动特定和可操作问题自动分析用户评论,并将它们链接到应变更的源代码文件,以处理审核中讨论的问题或请求。Palomba等人在2017年ICSE上发表的论文RecommendingandLocalizingChangeRequestsforMobileAppsbasedonUserReviews提出了CHANGEADVISOR,与CRISTAL不同,CHANGEADVISOR的目的是在应用程序的当前版本上推荐代码更改的位置,而不是监视项目历史记录期间已应用的更改。CHANGEADVISOR与本课题研究的方向最为贴近,是现阶段将用户评论定位到源代码文件上效果表现最好的方法。通过对相关工作的了解发现,近年来,国内外对于用户评论的关注度越来越高,已经有很多工作投入到对用户评论的处理上,并且针对不同的情况,已经提出了很多种分类亦或是聚类的规则,且已取得了很好的效果,但目前旨在针对基于用户评论的源代码文件定位的研究还处于初级阶段,纵览国内外的研究,只有CHANGEADVISOR、CRISTAL和URR涉及此领域的研究,但是CRISTAL只能定位之前已变更过的源代码文件,与本专利技术的目的不同,URR与本专利技术的目的一致,但是实验效果不是很理想,召回率虽然较高,但精确率较低,与CHANGEADVISOR相比,CHANGEADVISOR效果更胜一筹,且CHANGEADVISOR是将源代码文件处理成词袋模型,然后采用非对称Dice系数(theasymmetricDicecoefficient)进行相似度匹配计算,本专利技术通过对其相关工作的复现及了解,发现在此领域还有较大的提升空间,例如,将源代码文件中的Javadoc注释等自然语言信息充分利用起来,将版本控制工具(如Git)的提交信息加入用于缩小用户评论即自然语言与源码之间的语义差距,适当更改相似度计算方式,使其更加符合定位要求,不仅如此,为防止由于版本控制工具的提交信息过少导致的冷启动问题,本专利技术拟采用动态权值调整的方法来动态调整代码组件信息与版本控制工具的提交信息的权值分配。
技术实现思路
针对于上述现有技术的不足,本专利技术的目的在于提供一种基于用户评论的移动APP变更文件定位方法,以解决现有技术中随着开发人员对代码熟悉程度的遗忘及一些新引入的开发人员对应用程序展开维护,在寻找需要更改的源代码文件时,会耗费大量时间的问题。为达到上述目的,本专利技术采用的技术方案如下:本专利技术的一种基于用户评论的移动APP变更文件定位方法,包括步骤如下:(1)将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需的形式;(2)利用版本控制工具的提交信息扩展源代码文件;(3)基于用户评论定位变更文件。进一步地,所述步骤(1)中将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需形式具体包括:对用户评论采用ARdoc分类器,划分成句子级别并且进行分类,提取所分类别中特征需求和问题发现这两个类别,再将这两个类别中的句子采用Stanfordnlp工具包中的parser解析器解析成语法树,采用自底向上的处理方法分解成原子语句,最后使用Stanfordnlp工具包中的lemma组件对所得数据进行处理,将所得数据中的单词还原成单词的原形;对版本控制工具的提交信息使用Stanfordnlp工具包中的lemma组件进行处理,将版本控制工具的提交信息中的单词还原成单词的原形;对源代码文件先提取java文件和xml文件,再对java文件使用本文档来自技高网
...

【技术保护点】
1.一种基于用户评论的移动APP变更文件定位方法,其特征在于,包括步骤如下:(1)将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需的形式;(2)利用版本控制工具的提交信息扩展源代码文件;(3)基于用户评论定位变更文件。

【技术特征摘要】
1.一种基于用户评论的移动APP变更文件定位方法,其特征在于,包括步骤如下:(1)将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需的形式;(2)利用版本控制工具的提交信息扩展源代码文件;(3)基于用户评论定位变更文件。2.根据权利要求1所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(1)中将用户评论,版本控制工具的提交信息和源代码文件处理成后续操作所需形式具体包括:对用户评论采用ARdoc分类器,划分成句子级别并且进行分类,提取所分类别中特征需求和问题发现这两个类别,再将这两个类别中的句子采用Stanfordnlp工具包中的parser解析器解析成语法树,采用自底向上的处理方法分解成原子语句,最后使用Stanfordnlp工具包中的lemma组件对所得数据进行处理,将所得数据中的单词还原成单词的原形;对版本控制工具的提交信息使用Stanfordnlp工具包中的lemma组件进行处理,将版本控制工具的提交信息中的单词还原成单词的原形;对源代码文件先提取java文件和xml文件,再对java文件使用抽象语法树进行分析提取其中的代码组件信息,最后对所提取的代码组件信息使用Stanfordnlp工具包中的lemma组件进行处理,将所提取的代码组件信息中的单词还原成单词的原形。3.根据权利要求2所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述代码组件信息包括源代码文件路径、类的JavaDoc注释、字段声明、方法的JavaDoc注释和方法名称。4.根据权利要求1所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(2)中利用版本控制工具的提交信息扩展源代码文件具体包括:对每个源代码文件,遍历所有版本控制工具的提交信息,若版本控制工具的提交信息的源代码文件中包含该源代码文件,则将该条版本控制工具的提交信息中的标题,描述,时间信息作为该源代码文件的一个扩展,称为源代码文件的扩展信息。5.根据权利要求4所述的基于用户评论的移动APP变更文件定位方法,其特征在于,所述步骤(3)中定位变更文件分为两部分:一是使用源代码文件的代码组件信息来计算用户评论与源代码文件的相似度;二是使...

【专利技术属性】
技术研发人员:周宇苏彦颀杨忻莹史志成黄志球
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1