论文部分内容阅读
随着信息时代的到来,计算机在国民经济、军事国防和社会生活的各个方面的应用越来越广泛和深入,计算机的灵魂——软件在其中起着举足轻重的作用,软件产品的质量自然地成为了人们关注的焦点。软件测试是软件开发过程中的关键步骤,是保证软件质量的重要手段和阶段,有着不可替代的地位。软件测试是一项昂贵的、资源密集型的工作,其成本可能占到整个项目成本的一半,因此在软件开发过程中,决定如何分配测试资源对于整个测试过程及测试结果来说非常重要。软件测试资源在软件模块之间的合理分配能缩短测试过程并提高可靠性。目前国内外还没有一种非常成熟的软件测试资源分配模型,资源分配的优化问题还没有引起足够多的重视。因此,研究新型的软件测试资源分配模型,特别是运用最优化方法,是非常有意义的。最优搜索理论是计算运筹学的统计决策理论的分支,最初由G. Kimball和B. Koopman等人在20世纪40年代提出,它研究的核心问题是在总搜索资源有限的情况下,如何分配搜索资源使得成功搜索到目标的可能性最大或花费的搜索代价最小。按照搜索空间的离散或者连续,目标是静止还是运动,将最优搜索问题可以分成几个不同的类型。本文主要研究离散空间中静止目标的搜索问题。在有限的测试时间内,软件测试人员不可能找出所有的缺陷。为了有效地利用软件测试过程中投入的测试资源,本文采用最优搜索理论对软件测试资源的分配过程进行优化。考虑到缺陷初始概率分布对最优搜索模型的重大影响,文章中重点讨论了缺陷分布概率密度的各种预测方法,此外,还介绍了软件可靠性增长模型,并根据非齐次泊松过程模型确定了探测函数,最终提出了一种基于最优搜索理论的测试资源分配策略。最后,我们通过软件测试资源分配仿真试验,模拟了真实的资源分配和测试过程。结果表明,在资源有限的情况下,我们的最优资源分配策略有效的降低了软件的失效概率,对软件测试资源的分配策略具有切实的优化作用。