代码大数据驱动的大规模软件故障诊断技术研究

基本信息
批准号:61872373
项目类别:面上项目
资助金额:63.00
负责人:李姗姗
学科分类:
依托单位:中国人民解放军国防科技大学
批准年份:2018
结题年份:2022
起止时间:2019-01-01 - 2022-12-31
项目状态: 已结题
项目参与者:刘晓东,尹良泽,贾周阳,周书林,郦旺,王腾,牛旭,李云峰,池书琪
关键词:
日志代码大数据软件故障诊断配置
结项摘要

Modern large-scale software always have complex logic, and hard to debug when encounter failures. Despite of its requirement in high reliability, it’s not impossible but difficult for traditional program analysis method to ensure the reliability of software due to the limitation of analysis capability in scalability. In this project, we try to explore the software failure diagnose techniques from the perspective of “big code”. By mining knowledge and patterns in different levels from source code based on big data analysis techniques, such as statistics and machine learning, we are going to study how to effectively combine big code driven method with traditional program analysis method. The main topic of our project consists of two dimensions. The horizontal dimension focus on log. Based on the characteristics of logging behavior in source code as well as in evolving history, we can automatically improve logging practices; Then we dig out the relationship between software defects and related logs to prune the possible paths in postmortem failure diagnose; Besides, we extend the pattern mining from log to error handling in software, thus improving the failure diagnosis capability for software. The vertical dimension is towards a typical software failure diagnose, misconfiguration. we first focus on automatic understanding of configuration constraints to improve software capabilities for misconfiguration prevention and diagnosis. Based on the empirical studies on many software configurations, we will study a comprehensive classification for configuration options, and propose an injection-based method to evaluate and enhance system reaction abilities. Furthermore, we will investigate an method to generate test case for configuration testing, as well as a reverse diagnosis method based on abnormal log sequence. In conclude, we will implement the related automatic tools, to support the quality assurance of large-scale software.

现代大规模软件具有自身逻辑复杂、出错后难以分析调试等特点,已有的程序分析方法受限于软件规模,难以保证软件的可靠性。课题从代码大数据入手,基于统计分析和机器学习等方法,在代码中挖掘不同层面的知识和模式,研究“大代码”和程序分析的相结合的故障诊断新技术。研究分纵横两个维度,横向围绕故障诊断的重要手段日志展开,从软件版本和演化历史中分析和挖掘日志特征,增强日志代码质量;建立软件缺陷与出错日志的关联关系,指导故障诊断中的路径剪枝;并从日志扩展到一般的出错处理模式,提升软件的故障诊断能力;纵向选取典型的软件配置故障,研究配置约束理解技术,实现自动化配置约束分析与提取,提升配置故障的预防和诊断能力;分析和总结全面的配置类型,提出基于故障注入的系统反应能力评估与增强方法;在此基础上,设计面向配置的测试用例生成方法和基于异常日志序列的反向诊断方法。实现相应的自动化工具,为大规模软件质量保证提供有效手段。

项目摘要

本课题针对大规模软件系统代码缺陷多、交互易出错、配置管理难等问题,研究软件故障诊断问题,探索了代码大数据分析和动静态程序相结合的手段,主要从诊断信息增强和配置管理两方面构建了创新技术体系。具体如下:(1)提出基于演化历史的故障诊断信息分析和增强方法,增强日志代码质量和诊断能力,日志演化能力提升50%;在此基础上,研究了软件错误处理规则自动化挖掘方法,在包括Linux在内的数十款软件中检测并修复上百个错误处理缺陷,准确率超过90%;(2)研究了配置缺陷检测问题,分析和总结配置相关的性能属性,提出配置缺陷检测的测试框架和测试预言,检测准确率超过80%;(3)设计了配置依赖理解和自动化提取方法,准确率相比已有方法提升25%;分析和总结配置依赖代码模式,提出了跨软件配置依赖提取方法,准确率接近90%;(4)研究了配置调优问题,针对多软件资源竞争场景和多意图调优场景,设计和实现了相应的配置推荐和调优方法,有效检测和消解软件冲突,支持用户在性能调优时兼顾其他软件意图;(5)完成了配置演化实证研究,对云环境软件的配置演化历史展开源代码级别的深入研究,分析总结了16种代码模式;(6)设计了配置故障自动化生成和注入方法,分析和评估系统对于配置故障的反应能力,并提出了对应的增强方法。本课题共发表论文22篇,包括CCF A类会议和期刊论文10篇,CCF B类5篇,进入SCI检索7篇,EI检索19篇,一篇获ICPC最佳论文提名,实现了系列工具集原型,申请和授权国家发明专利10项。培养博士研究生8人,硕士研究生7人, 一人获全军优秀博士论文,一人获CCF优秀博士论文提名。申请人获2019 CCF NASAC青年软件创新奖,2021 CCF技术发明二等奖和2019湖南省技术发明一等奖。

项目成果
{{index+1}}

{{i.achievement_title}}

{{i.achievement_title}}

DOI:{{i.doi}}
发表时间:{{i.publish_year}}

暂无此项成果

数据更新时间:2023-05-31

其他相关文献

1

论大数据环境对情报学发展的影响

论大数据环境对情报学发展的影响

DOI:
发表时间:2017
2

圆柏大痣小蜂雌成虫触角、下颚须及产卵器感器超微结构观察

圆柏大痣小蜂雌成虫触角、下颚须及产卵器感器超微结构观察

DOI:10.3969/j.issn.1674-0858.2020.04.30
发表时间:2020
3

资源型地区产业结构调整对水资源利用效率影响的实证分析—来自中国10个资源型省份的经验证据

资源型地区产业结构调整对水资源利用效率影响的实证分析—来自中国10个资源型省份的经验证据

DOI:10.12202/j.0476-0301.2020285
发表时间:2021
4

多源数据驱动CNN-GRU模型的公交客流量分类预测

多源数据驱动CNN-GRU模型的公交客流量分类预测

DOI:10.19818/j.cnki.1671-1637.2021.05.022
发表时间:2021
5

混采地震数据高效高精度分离处理方法研究进展

混采地震数据高效高精度分离处理方法研究进展

DOI:10.3969/j.issn.1000-1441.2020.05.004
发表时间:2020

李姗姗的其他基金

批准号:61379146
批准年份:2013
资助金额:73.00
项目类别:面上项目
批准号:51906032
批准年份:2019
资助金额:25.00
项目类别:青年科学基金项目
批准号:41274029
批准年份:2012
资助金额:70.00
项目类别:面上项目
批准号:81100036
批准年份:2011
资助金额:23.00
项目类别:青年科学基金项目
批准号:31700816
批准年份:2017
资助金额:26.00
项目类别:青年科学基金项目
批准号:11805241
批准年份:2018
资助金额:28.00
项目类别:青年科学基金项目
批准号:51505123
批准年份:2015
资助金额:21.00
项目类别:青年科学基金项目
批准号:60903224
批准年份:2009
资助金额:18.00
项目类别:青年科学基金项目
批准号:81770054
批准年份:2017
资助金额:55.00
项目类别:面上项目

相似国自然基金

1

基于大规模数据驱动的轧钢过程故障诊断及自愈控制

批准号:51634002
批准年份:2016
负责人:张殿华
学科分类:E0410
资助金额:290.00
项目类别:重点项目
2

数据驱动的代码注释自动生成方法研究

批准号:61902441
批准年份:2019
负责人:黄袁
学科分类:F0203
资助金额:29.00
项目类别:青年科学基金项目
3

基于软件基因的恶意代码检测与分析技术研究

批准号:61802435
批准年份:2018
负责人:刘福东
学科分类:F0205
资助金额:23.00
项目类别:青年科学基金项目
4

数据驱动的大规模图像自动标注关键技术研究

批准号:61271394
批准年份:2012
负责人:丁贵广
学科分类:F0116
资助金额:88.00
项目类别:面上项目