软件集成是导致项目延误和预算超支的主要根源,是现代软件开发的主要风险之一。为了适应现代软件业务复杂、开发周期紧迫等特点,"持续集成"的软件集成模式在工业界被广泛应用。"持续集成"提倡频繁、快速、自动、反馈的集成机制,能够有效降低集成的风险。通过调研我们发现,在持续集成的过程中,集成的历史记录对未来的集成具有重要的指导意义。另一方面,对集成中发现的软件错误的有效反馈信息将有助于减轻调试的工作量和难度。目前,学术界对这两个问题研究甚少。基于现状,我们提出在回归测试的基础上,利用历史信息提高持续集成的效率;同时运用错误定位技术预测软件错误位置,提供有效反馈,减轻错误排查的工作量和难度。我们的研究将对持续集成中历史信息的利用和反馈数据的生成具有理论指导意义;同时对提高持续集成的速度和质量提出新的方法;并在已有的持续集成框架和工具集中,增强反馈信息的丰富性和准确度,以促进持续集成在业界的推广。
软件集成是现代软件开发的主要风险之一。本项目利用历史信息提高持续集成的效率;同时运用错误定位技术预测软件错误位置,减轻错误排查的工作量和难度。我们的研究从理论和实践两方面开展。.我们按照研究计划对申请书中所要求的两个方面内容进行深入研究,还根据具体研究需要和进度,从应用研究和方法研究两个角度对原有内容进行了相关扩展研究。按照预计的研究内容和其后补充的研究内容,分为以下几方面:.☆ 研究目前现有的错误定位技术,并比较不同程序因子对定位精确度的影响.☆ 研究基于程序执行信息,改良并提出新的方法或者策略提高错误定位的精确度.☆ 研究针对程序不同结构粒度建立不同框架.☆ 研究测试用例优先性,缩小测试用例集.☆ 构建降噪框架,减少回归测试中程序不同特性对后续测试的影响.☆ 构建BPEL框架,进行程序整合和错误整合,进而整合BPFL错误定位方法.在语言解析领域,我们还开发了Murphi语言解析系统V1.0版本,该系统已经获得软件著作权。同时在研究过程中,我们提出两种创新性的错误定位方法:以布尔表达式的求值序列为谓词单元的软件错误定位方法和一种基于马尔可夫模型的软件错误定位系统及错误定位方法。该两项创新性方法正在申请相关专利,且已受理。.通过本项目的研究,我们在以下两个方面取得了显著进展:.(1) 基于程序谱错误定位以及缩小回归测试代价的理论研究.(2) 将回归测试和错误定位技术应用到持续集成.在第一方面,我们主要获得了如下成果:.(1) 研究并提出仅依赖失败运行的错误定位方法;.(2) 研究并提出非参数化基于谓词的错误定位技术;.(3) 测试用例集的优先权整合研究.相关工作在《IEEE Computer》、《Journal of Systems and software》、《Journal of Information and Software Technology》等杂志上发表论文。.在第二方面,我们主要获得如下成果:.(1) 构建BPEL错误定位框架;.(2) 研究并开发了针对Java程序的通用性降噪框架系统.(3) 将MC/DC和控制流应用到紧密集成的测试和错误定位.相关研究在《Journal of Information and Software Technology》等杂志上。.相关的软件模块被EMC,云测、安全宝等公司试用。
{{i.achievement_title}}
数据更新时间:2023-05-31
基于MCPF算法的列车组合定位应用研究
二维FM系统的同时故障检测与控制
出租车新运营模式下的LED广告精准投放策略
天问一号VLBI测定轨技术
“阶跃式”滑坡突变预测与核心因子提取的平衡集成树模型
基于测试信息的交互式错误定位技术研究
纳米级集成电路软错误的分辨测试、分离分析与加固关键技术
基于深度强化学习的软件持续集成测试优化技术研究
面向真实错误程序的高阶变异错误定位技术研究