基于进化优化的大型软件演化中的错误定位
项目介绍
AI项目解读
基本信息
- 批准号:61673384
- 项目类别:面上项目
- 资助金额:60.0万
- 负责人:
- 依托单位:
- 学科分类:F0305.生物、医学信息系统与技术
- 结题年份:2020
- 批准年份:2016
- 项目状态:已结题
- 起止时间:2017-01-01 至2020-12-31
- 项目参与者:鞠小林; 王荣存; 张艳梅; 薛猛; 王兴亚; 于巧; 薄莉莉; 陈洁琼; 张妙;
- 关键词:
项目摘要
Fault Localization is one of the most expensive and time-consuming activities of software testing and debugging process. These characteristics of large software, such as large scale, high complexity, long term running, make fault localization more difficult in the process of continuous evolving... We aim to resolve the fault localization issues occurred in large software evolution, by using the techniques such as program analysis, machine learning and evolutionary computation. The research contents are listed as follows: (1) we will propose the method of definition and extraction of program features for large software, based on which to perform change impact analysis and predict the suspicious locations of faults in new version, thereby narrowing the search scope of faults; (2) we will study the impact analysis and measurement method of test suite during fault locating for large software evolving, and design the optimal objective functions and constraints oriented to fault localization. Based on multi-objective optimization, we then construct a model of test suite reduction and augmentation; (3) with program features obtained, we will propose the techniques for the individuals encoding, initial population constructing, and mutation operator designing that are suitable for large software, and then construct a framework of fault localization based on evolutionary optimization; (4) we will develop a supporting platform and conduct the experimental verification. .. This interdisciplinary project, combined with computer science, automation and applied mathematics, can provide important theoretical significance and practical application value.
软件错误定位是软件测试和调试过程中代价最昂贵和耗时的活动之一。大型软件的规模庞大、结构复杂、运行周期长等特点使得其在持续演化过程中的错误定位更加困难。..本项目基于进化优化思想,结合程序分析和机器学习技术,以期解决目前大型软件演化过程中的错误定位问题。研究内容包括:(1)研究大型软件中的程序特征定义与提取方法,在此基础上开展修改影响分析,并预测新版本中的错误可疑位置,缩小错误搜索范围;(2)研究大型软件演化中测试用例对错误定位的影响分析及度量方法,设计面向错误定位的目标函数及约束条件,建立基于多目标优化的测试用例集约简与扩增模型;(3)结合程序特征,研究适用于大型软件的个体编码方式、初始种群的构造方法、以及变异算子的设计方法,进而构建基于进化优化的软件错误定位框架;(4)支撑平台的开发和实验验证。..本项目是结合计算机科学、自动化与应用数学的交叉研究方向,具有重要的理论意义和实际应用价值。
结项摘要
软件错误定位是软件测试和调试过程中代价最昂贵和最耗时的活动。申请人及合作者针对大型软件演化过程中错误定位存在的问题进行了为期四年的深入研究,提出了一整套解决相关问题的理论和方法。主要体现在如下4个方面:. (1) 在软件错误可疑范围分析与预测方面,我们收集了大量软件演化信息和历史Bug数据,结合机器学习的方法对错误分布进行预测。对跨项目缺陷预测中的类不平衡、条件分布及边缘概率分布差异性、特征异构、类重叠的相关理论进行了深入研究,提出了若干基于迁移学习的跨项目缺陷预测方法。. (2) 在面向错误定位的多目标测试用例演化方面,我们首先提出了多邻域Kalman滤波粒子群测试数据生成方法。然后,针对数据流测试准则,提出了基于遗传算法的测试用例生成方法。最后,针对分支条件不能完全评价的问题,提出一种基于模式组合的粒子群优化测试用例生成方法。. (3) 在基于进化优化的错误定位模型构建方面,我们首先根据距离度量测试方法对测试用例进行约减,由此降低执行结果判断和运行时信息收集等过程的代价,提高错误定位效率。其次,针对多缺陷场景下缺陷定位技术进行理论建模,并对比分析了主流的缺陷定位技术的效率。同时,针对多个错误相互干扰影响错误定位的问题,提出了两种基于不同聚类方式的解决方法。最后,针对流行的基于频谱的错误定位技术中存在的问题,提出了基于路径分析和信息熵的错误定位方法。. (4) 为了验证我们前面提出的方法的有效性,我们构建了一个实验平台,从GitHub、 Mozilla、SourceForge、Defect4J、NASA、AEEEM、PROMISE、SOFTLAB、MORPH及ReLink等开源网站和不同的数据集中下载大型软件及其相关演化版本信息作为实验对象,通过大量的统计性实验来定量地分析和论证我们所提出方法的准确度和时空效率。. 研究成果深化和丰富了已有的错误定位方法,扩大了进化优化算法在软件工程中的应用范围,在软件工程领域具有重要理论意义和应用价值。. 项目资助共发表论文36篇,其中,SCI论文16篇,国内学报论文10篇。申请国内发明专利10项,其中授权4项。
项目成果
期刊论文数量(33)
专著数量(0)
科研奖励数量(1)
会议论文数量(3)
专利数量(10)
基于Chameleon聚类分析的多错误定位方法
- DOI:--
- 发表时间:2017
- 期刊:电子学报
- 影响因子:--
- 作者:曹鹤玲;姜淑娟
- 通讯作者:姜淑娟
A multi-level feedback approach for the class integration and test order problem
类集成和测试顺序问题的多级反馈方法
- DOI:10.1016/j.jss.2017.08.026
- 发表时间:2017
- 期刊:Journal of Systems and Software
- 影响因子:3.5
- 作者:Miao Zhang;Shujuan Jiang;Yanmei Zhang;Xingya Wang;Qiao Yu
- 通讯作者:Qiao Yu
A feature matching and transfer approach for cross-company defect prediction
用于跨公司缺陷预测的特征匹配和传输方法
- DOI:10.1016/j.jss.2017.06.070
- 发表时间:2017
- 期刊:Journal of Systems and Software
- 影响因子:3.5
- 作者:Qiao Yu;Shujuan Jiang;Yanmei Zhang
- 通讯作者:Yanmei Zhang
Evolutionary approach to generating test data for data flow test
为数据流测试生成测试数据的进化方法
- DOI:10.1049/iet-sen.2018.5197
- 发表时间:2018
- 期刊:IET Software
- 影响因子:1.6
- 作者:Shujuan Jiang;Jieqiong Chen;Yanmei Zhang;Junyan Qian;Rongcun Wang;Meng Xue
- 通讯作者:Meng Xue
A bidirectional trace simplification approach based on a context switch linked list for concurrent programs
一种基于上下文切换链表的并发程序双向跟踪简化方法
- DOI:10.1002/cpe.5423
- 发表时间:2019
- 期刊:Concurrency and Computation:Practice and Experience
- 影响因子:--
- 作者:Lili Bo;Shujuan Jiang;Rongcun Wang;Qiao Yu
- 通讯作者:Qiao Yu
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:{{ item.doi || "--"}}
- 发表时间:{{ item.publish_year || "--" }}
- 期刊:{{ item.journal_name }}
- 影响因子:{{ item.factor || "--"}}
- 作者:{{ item.authors }}
- 通讯作者:{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:{{ item.authors }}
数据更新时间:{{ patent.updateTime }}
其他文献
基于混杂偏倚消除的谓词统计错误定位方法
- DOI:--
- 发表时间:2016
- 期刊:计算机学报
- 影响因子:--
- 作者:王兴亚;姜淑娟;鞠小林;曹鹤玲
- 通讯作者:曹鹤玲
分类不平衡对软件缺陷预测模型性能的影响研究
- DOI:--
- 发表时间:2016
- 期刊:计算机学报
- 影响因子:--
- 作者:于巧;姜淑娟;张艳梅;王兴亚;高鹏飞;钱俊彦
- 通讯作者:钱俊彦
怀疑度计算公式受偶然正确性影响理论分析
- DOI:--
- 发表时间:2018
- 期刊:电子学报
- 影响因子:--
- 作者:曹鹤玲;姜淑娟;靳小波;杨卫东;薛猛
- 通讯作者:薛猛
不可达基路径的静态检测方法
- DOI:--
- 发表时间:--
- 期刊:计算机科学与探索
- 影响因子:--
- 作者:张艳梅;姜淑娟;王庆坛;赵雪峰
- 通讯作者:赵雪峰
基于分支相关性分析的不可达路径检测方法
- DOI:--
- 发表时间:2016
- 期刊:计算机研究与发展
- 影响因子:--
- 作者:姜淑娟;韩寒;史娇娇;张艳梅;鞠小林;钱俊彦
- 通讯作者:钱俊彦
其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:{{ item.doi || "--" }}
- 发表时间:{{ item.publish_year || "--"}}
- 期刊:{{ item.journal_name }}
- 影响因子:{{ item.factor || "--" }}
- 作者:{{ item.authors }}
- 通讯作者:{{ item.author }}
内容获取失败,请点击重试
查看分析示例
此项目为已结题,我已根据课题信息分析并撰写以下内容,帮您拓宽课题思路:
AI项目摘要
AI项目思路
AI技术路线图
请为本次AI项目解读的内容对您的实用性打分
非常不实用
非常实用
1
2
3
4
5
6
7
8
9
10
您认为此功能如何分析更能满足您的需求,请填写您的反馈:
姜淑娟的其他基金
基于程序切片和遗传算法的软件测试数据生成技术
- 批准号:60970032
- 批准年份:2009
- 资助金额:30.0 万元
- 项目类别:面上项目
相似国自然基金
{{ item.name }}
- 批准号:{{ item.ratify_no }}
- 批准年份:{{ item.approval_year }}
- 资助金额:{{ item.support_num }}
- 项目类别:{{ item.project_type }}
相似海外基金
{{
item.name }}
{{ item.translate_name }}
- 批准号:{{ item.ratify_no }}
- 财政年份:{{ item.approval_year }}
- 资助金额:{{ item.support_num }}
- 项目类别:{{ item.project_type }}