论文部分内容阅读
【摘 要】随着现代化科学技术的快速发展,软件被广泛的应用在各个领域,与此同时人们对于软件可靠性提出了更高的要求。因此要做好软件可靠性的测试分析,进一步进行优化和改进,不断提高软件的安全性和可靠性。本文分析了软件可靠性的定义,阐述了软件可靠性测试过程。
【关键词】软件可靠性 测试
近年来,计算机科学技术的快速发展,使得软件逐渐成为人们办公的重要工具,而软件故障也成为影响计算机系统稳定运行的关键因素。软件可靠性测试通过评估软件可靠性模型,可以及时发现软件的缺陷,从而进行完善和优化,保障软件的安全、稳定运行。
一、软件可靠性的定义
软件可靠性是指在一定的时间、一定的条件下,软件安全、稳定的运行不引起计算机系统故障的概率,这个概率是计算机系统输出和输入的关系函数,同时也是软件自身的缺陷函数。系统输入参数用来确定软件自身是否已经存在问题和缺陷。同时,软件可靠性还代表着在规定时间内,软件程序执行设计要求的基本能力。
二、软件可靠性测试过程
软件可靠性测试是一种最基本的软件测试形式,是评价和分析一个软件质量和性能的重要指标,利用测试用例来分析和测试软件可靠性,可以检测软件是否满足可靠性要求,及时发现软基系统在实施、测试、编码、设计、功能等多方面的缺陷和问题,为软件故障的维护和管理提供可靠、有效的数据。软件可靠性测试的流程为:确定可靠性目标、开发运行剖面、设计测试用例、实施测试、分析测试结果,软件可靠性测试流程如图1所示。
1.开发运行剖面。为了确保软件可靠性测试的准确性,在测试软件时要像真实操作和使用一样,运行剖面是定量和定性描述软件操作和使用方式的系统。开发软件的运行剖面,定义软件的使用条件,用在一定条件下或者在规定时间内可能发生的概率来描述软件系统的输入值,即运行剖面=[运行,发生的概率] 。
2.可靠性测试用例设计。软件可靠性测试用例主要包括测试软件的功能需求、判断准则、预期输出、操作步骤、测试输入、测试条件和环境、测试用例标识等内容。可靠性测试用例设计的主要目的是评估和分析软件的可靠性,除了设计可靠性测试用例之外,还要全面考虑影响软件可靠性的其他因素,例如软件模块失效、网络故障、数据可靠性、软件异常退出等。
3.实施可靠性测试。软件可靠性测试的关键在于测试用例的运行状态,在软件系统中,系统失效可以由时钟时间、CPU时间以及运行说明来客观定义,在软件应用模块中,在分析系统失效时,还要考虑到一些主观因素,软件程序不仅要满足使用说明要求,软件的相应功能和性能要满足用户的需求。软件可靠性的数据是评价软件可靠性的重要基础,可以在多台计算机上同时运行该软件,累计软件的运行时间,获取软件的可靠性数据。软件可靠性数据可以用时间来定义,例如,从分组时间起点到某个时间区间终点的累计失效数,各个分组时间段中的失效数,失效的间隔时间、失效时间数据等。在测试软件可靠性过程中,要规范地、真实地记录这些数据,从而客观、准确地测试软件可靠性。
4.软件可靠性评估。软件可靠性评估主要包括确定可靠性模型、采集可靠性数据、预测和评估可靠性这三部分内容。
(1)软件可靠性模型。软件可靠性模型由数据要求、参数估计方法、性能度量和模型假设组成。本文以广义软件指数模型为例,来详细分析软件可靠性评估。广义指数模型是当前计算机软件测试中最常用的一种可靠性评估模型,它结合了几个常见的可靠性模型,将其归纳总结为一个模型表,利用一组公式来计算存在故障危险的概率,从而简化软件可靠性建模过程。软件的危险函数为,残留故障数为 。公式中x是软件测试的资源变量,是软件程序的初始故障数,是消耗x单位的工作量或者时间,K是比例常数,时间单位或者资源单位,残留故障导致的失效数。
(2)采集可靠性数据。软件的可靠性数据是分析和评价一个软件可靠性性能的基础。采集软件可靠性数据要根据软件的可靠性模型,明确需要采集的系统失效数据,同时定义记录规范和术语,如失效严重度、失效、时间等,制定完善的软件可靠性数据采集计划,确保采集数据的完整性和准确性。
(3)预测和评估软件可靠性。预测和评估软件可靠性要依据软件可靠性模型,结合采集的可靠性数据,进一步修正、完善和补充可靠性模型,然后运用统计手段和技术分析可靠性数据,从而得出软件可靠性的测试结果。
三、结束语
软件可靠性是评估一个软件综合性能的重要指标,直接关系着软件系统能否安全、稳定、可靠的运行。软件在运行过程中容易受到多重因素的影响,因此要做好软件可靠性的测试分析,有针对性地完善和优化软件系统,使软件系统发挥更加重要的功能。
参考文献:
[1] 严进宝.软件可靠性加速测试技术的研究与实现[D].国防科学技术大学,2004.
[2] 刘剑豪,刘晓明,姚奕,黄松.构件软件的层次可靠性估计模型[J].应用科学学报,2007(02).
[3] 陈光宇,黄锡滋.软件可靠性学科发展现状及展望[J].电子科技大学学报(社科版),2002(03).
作者简介:
朱剑(1983-),女,江苏常州人,学历:本科,工作单位:江苏振邦智慧城市信息系统有限公司,测试部门主管,研究方向:医疗行业软件测试。
【关键词】软件可靠性 测试
近年来,计算机科学技术的快速发展,使得软件逐渐成为人们办公的重要工具,而软件故障也成为影响计算机系统稳定运行的关键因素。软件可靠性测试通过评估软件可靠性模型,可以及时发现软件的缺陷,从而进行完善和优化,保障软件的安全、稳定运行。
一、软件可靠性的定义
软件可靠性是指在一定的时间、一定的条件下,软件安全、稳定的运行不引起计算机系统故障的概率,这个概率是计算机系统输出和输入的关系函数,同时也是软件自身的缺陷函数。系统输入参数用来确定软件自身是否已经存在问题和缺陷。同时,软件可靠性还代表着在规定时间内,软件程序执行设计要求的基本能力。
二、软件可靠性测试过程
软件可靠性测试是一种最基本的软件测试形式,是评价和分析一个软件质量和性能的重要指标,利用测试用例来分析和测试软件可靠性,可以检测软件是否满足可靠性要求,及时发现软基系统在实施、测试、编码、设计、功能等多方面的缺陷和问题,为软件故障的维护和管理提供可靠、有效的数据。软件可靠性测试的流程为:确定可靠性目标、开发运行剖面、设计测试用例、实施测试、分析测试结果,软件可靠性测试流程如图1所示。
1.开发运行剖面。为了确保软件可靠性测试的准确性,在测试软件时要像真实操作和使用一样,运行剖面是定量和定性描述软件操作和使用方式的系统。开发软件的运行剖面,定义软件的使用条件,用在一定条件下或者在规定时间内可能发生的概率来描述软件系统的输入值,即运行剖面=[运行,发生的概率] 。
2.可靠性测试用例设计。软件可靠性测试用例主要包括测试软件的功能需求、判断准则、预期输出、操作步骤、测试输入、测试条件和环境、测试用例标识等内容。可靠性测试用例设计的主要目的是评估和分析软件的可靠性,除了设计可靠性测试用例之外,还要全面考虑影响软件可靠性的其他因素,例如软件模块失效、网络故障、数据可靠性、软件异常退出等。
3.实施可靠性测试。软件可靠性测试的关键在于测试用例的运行状态,在软件系统中,系统失效可以由时钟时间、CPU时间以及运行说明来客观定义,在软件应用模块中,在分析系统失效时,还要考虑到一些主观因素,软件程序不仅要满足使用说明要求,软件的相应功能和性能要满足用户的需求。软件可靠性的数据是评价软件可靠性的重要基础,可以在多台计算机上同时运行该软件,累计软件的运行时间,获取软件的可靠性数据。软件可靠性数据可以用时间来定义,例如,从分组时间起点到某个时间区间终点的累计失效数,各个分组时间段中的失效数,失效的间隔时间、失效时间数据等。在测试软件可靠性过程中,要规范地、真实地记录这些数据,从而客观、准确地测试软件可靠性。
4.软件可靠性评估。软件可靠性评估主要包括确定可靠性模型、采集可靠性数据、预测和评估可靠性这三部分内容。
(1)软件可靠性模型。软件可靠性模型由数据要求、参数估计方法、性能度量和模型假设组成。本文以广义软件指数模型为例,来详细分析软件可靠性评估。广义指数模型是当前计算机软件测试中最常用的一种可靠性评估模型,它结合了几个常见的可靠性模型,将其归纳总结为一个模型表,利用一组公式来计算存在故障危险的概率,从而简化软件可靠性建模过程。软件的危险函数为,残留故障数为 。公式中x是软件测试的资源变量,是软件程序的初始故障数,是消耗x单位的工作量或者时间,K是比例常数,时间单位或者资源单位,残留故障导致的失效数。
(2)采集可靠性数据。软件的可靠性数据是分析和评价一个软件可靠性性能的基础。采集软件可靠性数据要根据软件的可靠性模型,明确需要采集的系统失效数据,同时定义记录规范和术语,如失效严重度、失效、时间等,制定完善的软件可靠性数据采集计划,确保采集数据的完整性和准确性。
(3)预测和评估软件可靠性。预测和评估软件可靠性要依据软件可靠性模型,结合采集的可靠性数据,进一步修正、完善和补充可靠性模型,然后运用统计手段和技术分析可靠性数据,从而得出软件可靠性的测试结果。
三、结束语
软件可靠性是评估一个软件综合性能的重要指标,直接关系着软件系统能否安全、稳定、可靠的运行。软件在运行过程中容易受到多重因素的影响,因此要做好软件可靠性的测试分析,有针对性地完善和优化软件系统,使软件系统发挥更加重要的功能。
参考文献:
[1] 严进宝.软件可靠性加速测试技术的研究与实现[D].国防科学技术大学,2004.
[2] 刘剑豪,刘晓明,姚奕,黄松.构件软件的层次可靠性估计模型[J].应用科学学报,2007(02).
[3] 陈光宇,黄锡滋.软件可靠性学科发展现状及展望[J].电子科技大学学报(社科版),2002(03).
作者简介:
朱剑(1983-),女,江苏常州人,学历:本科,工作单位:江苏振邦智慧城市信息系统有限公司,测试部门主管,研究方向:医疗行业软件测试。