论文部分内容阅读
科技发展日新月异,软件规模越来越庞大,软件发生失效的频率与日俱增。虽然软件测试技术在软件可靠性领域发展日渐成熟,可是一部分正式上线后的系统依旧会发生很多软件不稳定、健壮性差等问题,失效问题时有发生。因此研究一种能够有效预测在线系统失效事件的方法策略,依旧有很大的现实意义和研究价值。本文是在软件失效预测研究现状分析的前提工作下,提出了一种基于失效模式的软件失效预测框架,首先搜集历史错误日志记录以及对应的失效事件,进行数据的预处理,然后利用该数据构造错误传播签名,表示系统实时的错误状态,基于这些签名可以演绎失效发生的趋势,即失效模式。基于失效模式的数据进行回归分析可以构造针对每个失效模式的预测器,就可以对实时监测到的错误对未来的失效行为进行失效预测,以及在合适的时刻提前发出有效预警。本文主要工作如下:1.本文首先介绍了失效预测方法的国内外研究现状,以及对软件失效的机理、预测方法、评估度量进行了说明,然后系统介绍了回归分析技术的相关概念和模型,接着详细描述了失效模式的构造原理以及预测机制。2.针对传统预测机制的不足,本文研究并改进了现有的基于失效模式的预测机制,通过动态的失效模式匹配算法匹配当前系统的失效模式,在无法匹配到合适的即未知失效模式的情况下依然可以进行高效的失效预测;而且当匹配到单一失效模式或者多失效模式的情况下,随着模式库的完备性越高,预测精度也会明显增高。3.针对传统失效模式预测机制在预警工作方面的不足,在失效模式中加入新的维护时间成本度量,为当前发生高危概率事件时是否及时能处理该事件提供策略依据,当判断系统即将发生失效时,可以在合理的时刻提前发出有效预警,在资源消耗最小和时间充足的前提条件下,提醒相关人员采取应急行动,提前预防并避免失效的发生,有效的提高了失效避免率。4.在拥有很多组件的复杂软件系统中,考虑到针对内部复杂的依赖关系以及错误传播特性,可以通过对该组件系统基于失效模式建立预测模型,实时监测、预测内部组件以及整个软件系统的失效情况,可以对大型复杂结构化组件系统提高失效预测率以及降低失效避免率。