论文部分内容阅读
随着计算机系统应用的范围越来越广泛、越来越深入,计算机软件系统也变得越来越复杂。因此,计算机软件的可靠性问题就越来越受到人们的关注和重视。软件可靠性的度量是以软件可靠性模型为基础对软件的可靠性行为进行评价和预测。目前的软件可靠性模型基本上都是以关于剩余在软件中的错误的性质、以及故障的随机行为的假设作为基础,而这些假设各有不同,由各个软件可靠性模型所表示的故障行为的类型的差异很大,造成了软件可靠性模型的不一致性问题。因此,选择一个合适的软件质量预测模型,一直是高可信软件领域研究的热点问题之一。训练好的神经网络能对软件的可靠性进行预测,它不需要前提和假设,所以适用于各种场合。人工神经网络在软件质量预测模型中的研究成果主要分为两个方面:一是以软件错误报告为基础,以软件失效时间作为神经网络输入的软件质量预测模型,二是以软件质量度量参数作为神经网络输入的软件质量预测模型。本文以软件质量度量参数作为神经网络输入,提出了两种软件可靠性预测模型。一种是基于学习矢量量化神经网络的软件模块风险性预测模型,它利用学习矢量量化神经网络不需要调整所有的权值系数、稳定性较好、实现有监督学习和给出分类信息作为指导信号的良好性能,提高了对软件模块风险性预测的精确度,实验结果表明此模型比基于BP神经网络的软件模块风险性预测模型在模块高风险性和模块低风险性预测中的预测精度分别提高了1倍和4倍。另一种是基于PCA—小波神经网络的软件质量预测模型,它通过主成分分析方法来剔除实验数据的多重共线性,减少了数据的维数,但是却保留了原始数据97%的信息量,简化了神经网络的结构,并采用遗传算法来优化小波神经网络,使小波神经网络的预测能力得到提高,以此来提高软件质量的预测精度;实验结果表明此模型所采用的方法获得了比基于BP神经网络的软件质量预测模型和基于广义回归神经网络的软件质量预测模型更好的预测准确度。