CN112527769B - 一种针对软件变更日志生成方法的自动化质量保证框架 - Google Patents
一种针对软件变更日志生成方法的自动化质量保证框架 Download PDFInfo
- Publication number
- CN112527769B CN112527769B CN202011426108.9A CN202011426108A CN112527769B CN 112527769 B CN112527769 B CN 112527769B CN 202011426108 A CN202011426108 A CN 202011426108A CN 112527769 B CN112527769 B CN 112527769B
- Authority
- CN
- China
- Prior art keywords
- software
- change
- word
- log
- historical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000000275 quality assurance Methods 0.000 title claims abstract description 11
- 239000013598 vector Substances 0.000 claims abstract description 37
- 238000001914 filtration Methods 0.000 claims abstract description 16
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 238000012360 testing method Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000011156 evaluation Methods 0.000 description 11
- 230000014759 maintenance of location Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 230000001537 neural effect Effects 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000011511 automated evaluation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- JEIPFZHSYJVQDO-UHFFFAOYSA-N iron(III) oxide Inorganic materials O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种针对软件变更日志生成方法的自动化质量保证框架。包括如下步骤:基于软件历史变更数据,生成diffh的单词wd和msgref的单词wm的单词向量和基于协同过滤算法,计算单词wd和wm之间的关联性Rel(wd,wm);构建单词wd的单词映射表基于已构建的单词映射表,分别计算两个质量分数Precisioni和Recalli;基于词频‑逆文档频率(TF‑IDF),生成变更差异向量di;计算待测软件变更日志和历史软件变更之间的相似程度选择与待测软件变更Ci相似度最高的前n个历史软件变更至计算相关性分数RetScorei;设置阈值Prect、Rect和Rett,对待测软件变更Ci的生成日志的语义相关性进行预测;基于预测结果对软件变更日志进行过滤或者保留。
Description
技术领域
本发明涉及软件质量保证,尤其涉及一种针对软件变更日志生成方法的自动化质量保证框架。
背景技术
目前,在软件开发和维护期间,开发人员不断地将软件更改diff软件变更到版本控制系统,如Git,以修复缺陷、添加/增强特性或重构,它列出了存储仓库更改前和更改后版本之间的差异。此外,开发人员可以将一个名为软件变更日志(commit message)的自然语言文本附加到每个软件更改中,该文本通常会总结在此更改中发生了什么,以及为什么作此更改,高质量的软件变更日志可以促进对软件变更和软件演进历史的理解。
现有技术存在的不足是:由于训练使用数据的局限性和任务的复杂性,也可能产生不令人满意的软件变更日志。根据之前的研究和人工验证,现软件变更日志生成方法生成的日志中,大约有50%以上是与它们的参考日志在语义上无关的,这种生成的日志称为语义无关的日志。这样语义无关的日志可能会误导开发人员,需要额外的精力来确认和过滤,因此可能会降低开发人员对软件变更日志自动化生成工具的信心,阻碍了软件变更日志自动化生成工具的实际使用。
发明内容
针对现有技术存在的上述问题,本发明要解决的技术问题是:自动生成软件变更日志生成的软件变更日志中,存在大量语义无关的日志。
为解决上述技术问题,本发明采用如下技术方案:软件变更日志生成方法的自动化质量保证框架,包括如下步骤:
S100:构建两个组件,分别是基于协同过滤的组件和基于检索的组件;
分别比较Precisioni、Recalli和RetScorei与相应阈值的大小,Precisioni<Prect,或者Recalli<Rect,或RetScorei<Rett,当三个条件中满足任一条件,则预测软件变更Ci的生成日志被预测为语义无关的日志;当三个条件都不满足,则预测软件变更Ci的生成日志被预测为语义相关的日志。
S110:获取历史软件变更数据和待测软件变更数据,每条历史软件变更数据和每条待测软件变更数据均由变更差异diffh、参考日志msgref和生成日志msggen组成;
S111:从历史软件变更的变更差异diffh中选出包含单词w的软件变更数据记为wd,所有的wd构建成N维的变更差异单词向量从历史软件变更的参考日志msgref中选出包含单词w的软件变更数据记为wm,所述所有的wm构建成N维的参考日志单词向量N为历史软件变更数据的数量;
阈值Ignore-rate表示为单词可以被忽略的概率,若单词对应的出错概率超过该阈值,则认为是无用单词,对其进行过滤;质量分数Precisioni定义为:质量分数Recalli定义为:其中|·|表示一个集合的长度。
作为优选,所述S100中通过基于检索的组件计算对于一个待测软件变更Ci与历史软件变更的相关性分数RetScorei的具体步骤为:
其中,RetScorei表示待测软件变更Ci与n个历史软件变更数据的相关性分数,di为待测软件变更Ci的变更差异向量,为历史软件变更的变更差异向量,其中,j=top1,top2,……,topn,默认设置n为5。
相对于现有技术,本发明至少具有如下优点:
本发明提出的用于软件变更日志生成方法的自动化质量保证框架(QAcom)能够有效地过滤掉语义不相关的日志,保留语义相关的日志,并通过保证软件变更日志生成方法生成的软件变更日志的质量,可以运用至实际的工作场景。
附图说明
图1为本发明的整体框架图。
具体实施方式
下面对本发明作进一步详细说明。
本发明描述了一种用于软件变更日志生成方法的自动化质量保证框架。该发明是应用于现有的基于神经机器翻译和基于检索的软件变更日志生成方法的插件,具体来说,就是给定一个变更差异diff和其对应的生成日志,通过计算质量分数,用以估计生成的日志和参考日志(估计时未知)之间的语义相关性,并通过过滤低质量分数的生成日志来保证生成的软件变更日志的质量。
本发明中,基于协同过滤组件和检索组件来计算质量分数。首先,基于历史软件变更数据,生成diffh的单词wd和msgref的单词wm的单词向量和基于协同过滤算法,计算单词wd和wm之间的关联性Rel(wd,wm);构建单词wd的单词映射表基于已构建的单词映射表,分别计算两个质量分数Precisioni和Recalli;基于词频-逆文档频率(TF-IDF),生成变更差异向量di;计算待测软件变更和历史软件变更之间的相似程度选择与待测软件变更Ci相似度最高的前n个历史软件变更至计算相关性分数RetScorei;设置阈值Prect、Rect和Rett,对待测软件变更Ci的生成日志的语义相关性进行预测;基于预测结果对生成日志进行过滤或者保留。
一种针对软件变更日志生成方法的自动化质量保证框架,其特征在于:包括如下步骤:
S100:构建两个组件,分别是基于协同过滤的组件和基于检索的组件;
S110:获取历史软件变更数据和待测软件变更数据,每条历史软件变更数据和每条待测软件变更数据均由变更差异diffh、参考日志msgref和生成日志msggen组成;
S111:从历史软件变更的变更差异diffh中选出包含单词w的软件变更数据记为wd,所述所有的wd构建成N维的变更差异单词向量从历史软件变更的参考日志msgref中选出包含单词w的软件变更数据记为wm,所述所有的wm构建成N维的参考日志单词向量N为历史软件变更数据的数量;
阈值Ignore-rate表示为单词可以被忽略的概率,若单词对应的出错概率超过该阈值,则认为是无用单词,对其进行过滤;质量分数Precisioni定义为:质量分数Recalli定义为:其中|·|表示一个集合的长度。
所述S100中通过基于检索的组件计算对于一个待测软件变更Ci与历史软件变更的相关性分数RetScorei的具体步骤为:
其中,RetScorei表示待测软件变更Ci与n个历史软件变更数据的相关性分数,di为待测软件变更Ci的变更差异向量,为历史软件变更的变更差异向量,其中,j=top1,top2,……,topn,默认设置n为5。
分别比较Precisioni、Recalli和RetScorei与相应阈值的大小,i<Prect,或者Recalli<Rect,或RetScorei<Rett,当三个条件中满足任一条件,则预测软件变更Ci的生成日志被预测为语义无关的日志;当三个条件都不满足,则预测软件变更Ci的生成日志被预测为语义相关的日志。
实验验证:
本发明选择了三种最先进的软件变更日志生成方法,来验证本发明在预测生成日志的语义相关性方面的性能,分别是NMT、NNGen和PtrGNCMsg。NMT采用神经机器翻译模型,将变更差异diff自动转化为简洁的软件变更日志;NNGen通过使用最近邻算法从历史软件变更中检索软件变更日志;PtrGNCMsg通过指针生成器网络改进了神经机器翻译模型。本发明提出的用于软件变更日志生成方法的自动化质量保证框架称作QAcom。
本发明选择的数据来自网站Github,包含三个公共数据集:Top1000,Cleaned和Top2000。Top1000数据集由NMT方法的作者构建,包含Github上前1000个高星Java项目的软件变更,训练集、验证集和测试集中分别有26208、3000和3000个软件变更数据;Cleaned数据集是由NNGen方法的作者从Top1000数据集中删除了一些有噪声的软件变更之后构建而成的,训练集、验证集和测试集分别包含了22112、2511和2511个软件变更数据;Top2000数据集由PtrGNCMsg方法的作者构建,收集自GitHub上前1001-2081的高星Java项目,其训练集、验证集和测试集中分别有23623、5051和3989个软件变更数据。
本发明同时采用了自动评价方法和人工评价方法:
自动评价:给定软件变更日志生成方法(例如NMT)和数据集,首先在不集成QAcom的情况下训练、验证和测试该方法;通过计算自动评价指标,来度量测试集上的所有生成日志的整体质量。然后在验证集上调整QAcom的阈值;通过这些阈值,应用QAcom来预测和过滤这些生成的日志中语义无关的日志;最后,使用相同的自动化评价指标来评价QAcom保留的日志的整体质量,这也被认为是该方法在QAcom集成下(如NMT+QAcom)的性能。测试集中被QAcom保留的生成日志与所有生成日志的比例,即保留比例也被保留以对比性能。此外,为了保证对比的公平性,本发明添加了一个特殊的对照组,该对照组随机保留生成的日志以满足相同的保留比例,然后计算评价指标。这个随机选择对照组(RS)过程执行10次,然后记录平均性能。自动评价指标为BLEU、METEOR和ROUGE-L。BLEU分数基于公式 其中表示文本块的修正后的n_gram精确度,而惩罚因子c是生成日志长度,r是参考日志长度;METEOR=(1-pen)×Fmeans,其中pen为惩罚因子,惩罚的是候选翻译中的词序与参考翻译中的词序不同,为可调控的参数,m为候选生成日志中能够被匹配的一元组数量,c和r同BLEU;ROUGE-L计算的是生成日志与参考日志的最长公共子序列长度,长度越长,得分越高,基于F值,其中 X表示生成日志,Y表示参考日志,LCS(X,Y)表示生成日志与参考日志的最长公共子序列的长度,m表示参考日志的长度,n表示候选日志的长度。
人工评价:同时,本发明邀请了6位参与者(2位博士研究生和4为硕士研究生)对实验结果进行人工评价。所有参与者的专业都是软件工程,并且有4至7年的Java编程经验。他们被要求通过检查参考日志和NMT、NNGen和PtrGNCMsg的生成日志之间的语义相关性,来评价生成日志的质量。具体来说,从每个数据集中随机选择200个软件变更,并将它们随机分成两组。6名参与者也被平均分成两组。每个参与者小组被要求评估来自每个数据集的100个软件变更,即总共300个软件变更。因此,每一个软件变更将被3个参与者打分。参与者被要求对每个生成的日志给出1到5的质量分数,以衡量该日志和参考日志之间的语义相关性。1分表示两个日志之间没有语义关联,5分表示两个日志语义相同。其中,我们认为得分为4分或5分的日志是语义相关的,其余的日志是语义无关的。
为了使得本发明的性能达到最优,首先采用差分进化算法,对Ignore-rate、Prect、Rect和Rett进行调优,其中用于调优的数据集同样为历史软件变更数据,调优约束为(1)保留的生成日志的BLEU分数不低于0.4(2)保留的日志数量尽可能多。对于不同的方法和不同的数据集,最优的阈值如表1所示。
表1.QAcom应用三种日志软件变更方法、三种数据集上的最优阈值
人工评价实验结果如表2所示,以NMT方法为例,“NMT”行表示NMT在所有测试集上的性能,即所有的生成日志的总体质量,保留比例为100%。“NMT+RS”行表示随机选择的生成日志的整体质量,其保留比例和QAcom的结果保持一致。“NMT+QAcom”行表示QAcom保留的生成日志的总体质量。在表1中有四个发现:
①在所有情况下,所有的生成日志的整体质量与随机选取的生成日志的质量几乎没有差别,这说明随机选择的操作对生成日志的质量影响不大。
②QAcom保留的生成日志的整体质量明显优于随机选取。例如,在Cleaned数据集中,NMT+QAcom可将NMT+RS的BLEU、METEOR和ROUGE平均提高177%,134%和96%。分别。通过发现①可以推断,相比过滤语义相关信息,QAcom可以过滤出更多的语义无关信息。
③三种集成QAcom的软件变更日志生成方法的BLEU得分都接近或超过阈值调优时使用的约束(1)(即BLEU不低于0.4),这表明QAcom保留的生成日志的整体质量良好。因此,QAcom能够成功地保证其所保留的生成日志的整体质量。
④QAcom的保留比例随着使用的数据集和软件变更日志生成方法的不同而变化。以Top2000数据集为例,在三种软件变更日志生成方法中,PtrGNCMsg+QAcom的保留比例最高。在Cleaned数据集上,PtrGNCMsg+QAcom只保留了16.66%的生成日志,而NMT和NNGen的保留比例分别为24.12%和32.17%。原因可能是PtrGNCMsg的有效性在已清理的数据集上受到了限制。换句话说,PtrGNCmsg无法在Cleaned数据集上生成足够多的语义相关日志。
表2-OAcom在三个数据集上与三种最先进的软件变更日志生成方法集成时的自动评价结果
人工评估结果如表3所示,“1”到“5”的表示每种软件变更日志生成方法在每个数据集上的最终质量分数的分布。“#保留”列表示保留的日志数量,“平均分数”列表示质量分数的平均分数。首先“#保留”与表2所示的保留比例基本一致。例如,Top1000数据集上NNGen的保留比例为96.13%,NNGen的“#保留”为200中的189。在所有情况下,QAcom都比随机选择(RS)能够过滤出更多语义上不相关的信息,并保留更多语义上相关的信息。此外,在所有情况下,QAcom保留的生成日志中语义相关日志的比率都大于所有生成日志中语义相关日志的比率。此外,QAcom保留的生成日志的平均得分高于原始数据集的平均得分,也高于随机选择对照组的平均得分
表3-OAcom在三个数据集上与三种最先进的软件变更日志生成方法集成时的人工评价结果
简而言之,实验结果证明,本发明提出的用于软件变更日志生成方法的自动化质量保证框架(QAcom)能够有效地过滤掉语义不相关的日志,保留语义相关的日志,并通过保证软件变更日志生成方法生成的软件变更日志的质量,可以运用至实际的工作场景,为提高现有软件变更日志生成方法的实用性做出贡献。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (1)
1.一种针对软件变更日志生成方法的自动化质量保证方法,其特征在于:包括如下步骤:
S100:构建两个组件,分别是基于协同过滤的组件和基于检索的组件;
通过基于协同过滤的组件,对于待测软件变更Ci的生成日志并分别计算两个质量分数Precisioni和Recalli,具体步骤为:
S110:获取历史软件变更数据和待测软件变更数据,每条历史软件变更数据和每条待测软件变更数据均由变更差异diffh、参考日志msgref和生成日志msggen组成;
S111:从历史软件变更的变更差异diffh中选出包含单词w的软件变更数据记为wd,所有的wd构建成N维的变更差异单词向量从历史软件变更的参考日志msgref中选出包含单词w的软件变更数据记为wm,所有的wm构建成N维的参考日志单词向量N为历史软件变更数据的数量;
所述变更差异单词向量定义为: 表示单词wd在第j个历史软件变更中是否存在;
所述参考日志单词向量定义为: 表示单词wm在第j个历史软件变更中是否存在;
S112:通过协同过滤算法,基于变更差异单词向量和参考日志单词向量利用余弦相似度公式计算单词wd和单词wm之间的关联性Rel(wd,wm),计算公式如下:
S113:利用Rel(wd,wm)构建单词wd的单词映射表定义如下:
S114:设置阈值Ignore-rate对无用的单词进行过滤,利用步骤S113所得单词映射表计算得到待测软件变更Ci中的一个生成日志的两个质量分数Precisioni和Recalli;Ignore-rate表示单词可以被忽略的概率;质量分数Precisioni定义为: 质量分数Recalli定义为:其中|·|表示一个集合的长度;
通过基于检索的组件计算对于一个待测软件变更Ci与历史软件变更的相关性分数RetScorei,具体步骤为:
S120:使用词频-逆文档频率,将历史软件变更的变更差异表示为历史软件变更差异向量将待测软件变更Ci的变更差异diffi表示为待测软件变更差异向量di,和di分别定义如下:
其中,#w表示单词的总数量;表示历史软件变更包含单词wd的变更差异diff的数量;#diffii|wd∈diffii表示待测软件变更包含单词wd的变更差异diff的数量;
S121:利用历史软件变更差异向量和待测软件变更差异向量di,基于余弦相似度计算得到待测软件变更Ci和历史软件变更之间的相似程度定义为:
其中,表示为和di之间的余弦相似度,待测软件变更差异向量,历史软件变更差异向量;
S122:根据步骤S121得到的相似程度将历史软件变更与待测软件变更Ci进行比较,按照相似度高到低排序,选出前n个历史软件变更,记为
S123:利用步骤S122得到的n个历史软件变更计算得到待测软件变更Ci与n个历史软件变更的相关性分数RetScorei,计算公式如下:
其中,RetScorei表示待测软件变更Ci与n个历史软件变更数据的相关性分数,di为待测软件变更Ci的变更差异向量,为历史软件变更的变更差异向量,其中,j=top1,top2,……,topn;
S200:设置阈值Prect、Rect和Rett,预测软件变更Ci的生成日志是否为语义无关的日志;
分别比较Precisioni、Recalli和RetScorei与相应阈值的大小,Precisioni<Prect,或者Recalli<Rect,或RetScorei<Rett,当三个条件中满足任一条件,则预测软件变更Ci的生成日志被预测为语义无关的日志;当三个条件都不满足,则预测软件变更Ci的生成日志被预测为语义相关的日志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011426108.9A CN112527769B (zh) | 2020-12-09 | 2020-12-09 | 一种针对软件变更日志生成方法的自动化质量保证框架 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011426108.9A CN112527769B (zh) | 2020-12-09 | 2020-12-09 | 一种针对软件变更日志生成方法的自动化质量保证框架 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527769A CN112527769A (zh) | 2021-03-19 |
CN112527769B true CN112527769B (zh) | 2023-05-16 |
Family
ID=74996742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011426108.9A Active CN112527769B (zh) | 2020-12-09 | 2020-12-09 | 一种针对软件变更日志生成方法的自动化质量保证框架 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527769B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282336B (zh) * | 2021-06-11 | 2023-11-10 | 重庆大学 | 一种基于质量保证框架的代码摘要集成方法 |
CN113657121B (zh) * | 2021-09-03 | 2023-04-07 | 四川大学 | 一种日志变量语义标注方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103984756A (zh) * | 2014-05-29 | 2014-08-13 | 重庆大学 | 基于半监督概率潜在语义分析的软件变更日志分类方法 |
CN106682169A (zh) * | 2016-12-27 | 2017-05-17 | 北京奇虎科技有限公司 | 一种应用标签挖掘方法、装置和应用搜索方法、服务器 |
CN109062763A (zh) * | 2018-07-31 | 2018-12-21 | 云南大学 | 一种从svn日志事件流中动态实时挖掘软件过程活动的方法 |
CN109190060A (zh) * | 2018-07-10 | 2019-01-11 | 天津大学 | 一种基于有效人机交互的服务标注质量优化方法 |
CN111090460A (zh) * | 2019-10-12 | 2020-05-01 | 浙江大学 | 一种基于最近邻算法的代码变更日志自动生成方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11120033B2 (en) * | 2018-05-16 | 2021-09-14 | Nec Corporation | Computer log retrieval based on multivariate log time series |
US11416622B2 (en) * | 2018-08-20 | 2022-08-16 | Veracode, Inc. | Open source vulnerability prediction with machine learning ensemble |
US11055081B2 (en) * | 2018-09-17 | 2021-07-06 | International Business Machines Corporation | Recommending software project dependency upgrades |
-
2020
- 2020-12-09 CN CN202011426108.9A patent/CN112527769B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103984756A (zh) * | 2014-05-29 | 2014-08-13 | 重庆大学 | 基于半监督概率潜在语义分析的软件变更日志分类方法 |
CN106682169A (zh) * | 2016-12-27 | 2017-05-17 | 北京奇虎科技有限公司 | 一种应用标签挖掘方法、装置和应用搜索方法、服务器 |
CN109190060A (zh) * | 2018-07-10 | 2019-01-11 | 天津大学 | 一种基于有效人机交互的服务标注质量优化方法 |
CN109062763A (zh) * | 2018-07-31 | 2018-12-21 | 云南大学 | 一种从svn日志事件流中动态实时挖掘软件过程活动的方法 |
CN111090460A (zh) * | 2019-10-12 | 2020-05-01 | 浙江大学 | 一种基于最近邻算法的代码变更日志自动生成方法 |
Non-Patent Citations (5)
Title |
---|
Comparing approaches to analyze refactoring activity on software repositories;Soares, Gustavo等;《JOURNAL OF SYSTEMS AND SOFTWARE》;20130430;第1006-1022页 * |
Increasing Precision of Automatically Generated Trace Links;Huebner, Paul等;《Lecture Notes in Computer Science》;20190101;第73-89页 * |
基于日志的数据中心内性能事件管理;张圣林;《中国博士学位论文全文数据库 信息科技辑》;20190215;I137-3 * |
基于概率潜在语义分析的软件变更分类研究;鄢萌;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140215;I138-160 * |
软件仓库的主题挖掘及其在软件维护中的应用研究;鄢萌;《中国博士学位论文全文数据库 信息科技辑》;20180615;I138-25 * |
Also Published As
Publication number | Publication date |
---|---|
CN112527769A (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112527769B (zh) | 一种针对软件变更日志生成方法的自动化质量保证框架 | |
US20040249808A1 (en) | Query expansion using query logs | |
EP3608801A1 (en) | Method of rapidly searching element information in a bim model | |
Liu et al. | Has this bug been reported? | |
CN114218932A (zh) | 基于故障因果图谱的航空故障文本摘要生成方法及其装置 | |
CN112732914A (zh) | 基于关键词匹配的文本聚类方法、系统、储存介质及终端 | |
CN117688158A (zh) | 奖励模型的训练方法、答案评价方法、装置和设备 | |
CN116522912B (zh) | 一种包装设计语言模型的训练方法、装置、介质及设备 | |
CN115982429B (zh) | 一种基于流程控制的知识管理方法及系统 | |
CN114579606B (zh) | 预训练模型数据处理方法、电子设备及计算机存储介质 | |
Yang et al. | Knowledge-prompted estimator: A novel approach to explainable machine translation assessment | |
CN113946651B (zh) | 维修知识推荐方法、装置、电子设备、介质及产品 | |
CN115344755A (zh) | 数据标准中数据约束条件推荐方法及系统 | |
CN108733824B (zh) | 考虑专家知识的交互式主题建模方法及装置 | |
CN113590673A (zh) | 基于区块链深度学习的数据热度统计方法 | |
JP7009911B2 (ja) | 回答出力プログラム、回答出力方法および情報処理装置 | |
CN116228484B (zh) | 基于量子聚类算法的课程组合方法及装置 | |
US20230110007A1 (en) | Assessing if records from different data sources represent a same entity | |
CN117273259B (zh) | 在线课程学习路径推荐方法和装置 | |
KR101363335B1 (ko) | 문서 분류모델 생성장치 및 방법 | |
CN116703075B (zh) | 电力调度决策方法、装置、电子设备及存储介质 | |
CN113282336B (zh) | 一种基于质量保证框架的代码摘要集成方法 | |
CN112685324B (zh) | 一种生成测试方案的方法及系统 | |
Liu et al. | Clustering web surfers with probabilistic models in a real application | |
CN104361104B (zh) | 一种高效的图像检索结果质量评价方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |