资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,*,Zhu.K,软件质量保证和管理,-,Ch.7,软件可靠性度量和测试,gang901hotmail,.com,第,6,章 回顾,6.1,测量基础,测量原理、,标,标准、度量,过,过程及原则,6.2,软件度量,软件周期度,量,量活动、项,目,目度量、软,件,件规模度量,、,、代码行度,量,量法、功能,点,点分析法、,对,对象点度量,法,法,6.3,软件质量的,度,度量方法,分类、模型,、,、基于时间,的,的缺陷到达,模,模式、,PRT,、,Rayleigh,模型,6.4,软件产品的,质,质量度量,6.5,软件过程质,量,量度量,6.6,软件质量度,量,量的执行,第,7,章,软件可靠性,度,度量和测试,7.1,软件可靠性,7.2,可靠性模型,及,及其评价标,准,准,7.3,软件可靠性,测,测试和评估,7.1,软件可靠性,7.1.1,软件失效的,过,过程与类别,7.1.2,可靠性定义,7.1,软件可靠性,硬件系统故,障,障率与可靠,性,性,7.1,软件可靠性,软件系统故,障,障率与可靠,性,性,7.1.1,软件失效过,程,程与类别,软件不能完,成,成规定的功,能,能即“软件,失,失效”(,failure,)或称“软,件,件故障”。,如,如果软件存,在,在缺陷,它,将,将永远的潜,伏,伏在软件中,,,,直到它被,发,发现并得到,正,正确修正。,反,反过来如果,软,软件在一定,的,的环境下运,行,行正确,它,也,也将继续保,持,持这种正确,性,性,除非环,境,境发生变化,。,软件失效过,程,程,7.1.1,软件失效过,程,程与类别,系统失效,,主要是指由,于,于软件故障,的,的发生而导,致,致系统死机,、,、系统无法,启,启动、系统,挂,挂起及系统,运,运行完全失,去,去应有运行,轨,轨迹等。比,如,如:计算器,无,无法正确的,计,计算了或只,要,要执行计算,系,系统就出错,等,等。,局部失效,,主要是指系,统,统当中的某,一,一个或几个,模,模块的功能,失,失效,但并,不,不影响其它,模,模块的正常,使,使用。比如,:,:一个基于,网,网络的分布,式,式软件,由,于,于网络连接,模,模块的功能,失,失效使得系,统,统无法与服,务,务器进行数,据,据同步,但,由,由于该系统,支,支持离线工,作,作,一旦网,络,络连接故障,排,排除便可与,服,服务器进行,数,数据同步,,这,这种情形我,们,们可以视之,为,为软件系统,的,的局部失效,。,。,软件失效类,别,别,7.1.2,可靠性定义,规定的时间,“,运行时间”,包,包括软件系,统,统运行后工,作,作与挂起(,开,开启但空闲,),)的累计时,间,间。,规定的环境,条,条件,环境条件指,软,软件的运行,环,环境。,可靠性是产,品,品在规定的,条,条件下和规,定,定的时间内,完,完成规定功,能,能的能力,,对,对其无故障,的,的概率度量,称,称为可靠度,。,。,7.2,可靠性模型,及,及评价标准,7.2.1,可靠性模型,7.2.2,可靠性模型,评,评价标准,7.2.3,可靠性增长,模,模型和指数,模,模型,7.2.1,可靠性模型,软件可靠性,模,模型是用来,指,指导我们对,软,软件可靠性,进,进行评估和,预,预测的。正,确,确的选择与,运,运用可靠性,模,模型对于指,导,导软件可靠,性,性设计与测,试,试至关重要,。,。错误的或,不,不恰当的选,择,择不适合的,可,可靠性模型,将,将会带来错,误,误的预测值,从而错误地,指,指导软件过,程,程。,模型分类,动态模型和,静,静态模型,动态:统计,数,数据的来源,是,是缺陷数统,计,计分布。,例:软件生,命,命周期中被,发,发现的缺陷,数,数变化趋势,用,用来预测可,能,能潜伏在软,件,件中的缺陷,数,数参考依据,。,。,静态:统计,数,数据的来源,是,是项目其他,属,属性或程序,与,与模块的分,析,析数据。,例:模块的,复,复杂性,项,目,目的规模,模型建立,确定预测参,数,数、数据,搜,搜集与分析,、,、模型选,择,择、模型,测,测试与评价,、,、模型的,确,确定,7.2.1,可靠性模型,单元划分建,模,模的影响示,例,例,每天产品缺,陷,陷数,日期,(,单位,:,天,),缺陷数,日期,(,单位,:,天,),缺陷数,3,月,1,日,3,3,月,8,日,18,3,月,2,日,18,3,月,9,日,9,3,月,3,日,15,3,月,10,日,12,3,月,4,日,8,3,月,11,日,9,3,月,5,日,10,3,月,12,日,8,3,月,6,日,6,3,月,13,日,4,3,月,7,日,15,3,月,14,日,0,7.2.1,可靠性模型,单元划分建,模,模的影响示,例,例,对应的趋势,图,图,7.2.1,可靠性模型,单元划分建,模,模的影响示,例,例,每两天产品缺陷,数,数,日期,(,单位,:2,天,),缺陷数,3/1-3/2,21,3/3-3/4,23,3/5-3/6,16,3/7-3/8,33,3/9-3/10,21,3/11-3/12,17,3/13-3-14,8,7.2.1,可靠性模型,单元划分建模的,影,影响示例,对应的缺陷数变,化,化趋势图,7.2.2,可靠性模型评价,标,标准,基于合理的假设,181,页,预测的有效性,模型实现的可操,作,作性,预测的及时性,预测的覆盖率,7.2.3,可靠性增长模型,和,和指数模型,可靠性增长模型,时间间隔模型,变,变量为故,障,障之间的时间间,隔,隔,故障数目模型,以,以,CPU,执行的时间或日,历,历时间为一个特,定,定的时间间隔为,标,标准,观察缺陷,或,或故障数目。,指数模型,指数模型是,Weibull,系列(见表,6-8,连续分布数学模,型,型)的一个特例,,,,其形状参数为,1,。适合于单一衰,减,减速为渐进的统,计,计过程。其累积,分,分布函数,CDF,和概率分布函数,PDF,为:,CDF:F(t)=1-e-(t/c)=1-e,t,PDF:f(t)=(1/c)e-(t/c),Weibull,分布,又称韦伯,分,分布、韦氏分布,或,或威布尔分布,,由,由瑞典物理学家,WallodiWeibull,于,1939,年引进,是可靠,性,性分析及寿命检,验,验的理论基础。,7.2.3,可靠性增长模型,和,和指数模型,周,缺陷数目,指数模型,密度分布,7.2.3,可靠性增长模型,和,和指数模型,缺陷数目,指数模型,累计分布,7.,软件可靠性,测,测试和评估,7.3.1,影响软件可靠性,的,的因素,7.3.2,系统运行剖面与,可,可靠性关系,7.3.3,可靠性测试,7.3.4,可靠性测试结果,分,分析与评估,7.3.1,影响软件可靠性,的,的因素,软件规模,软件规模越大,,复,复杂度自然会增,加,加,隐藏在软件,当,当中的潜在问题,可,可能就会更多,,所,所以软件的规模,是,是影响软件可靠,性,性重要因素之一,运行剖面,件的,运行剖面,是用来描述软件,的,的实际可能发生,的,的操作路径的集,合,合。运行剖面,越,越多,潜伏在软,件,件当中遗漏的考,虑,虑不周全的问题,可,可能就越多,开发方法,开发人员素质,可靠性设计,软件可靠性不完,全,全是通过测试去,发,发现的,也不完,全,全是增强编码能,力,力可以达到的,,对,对软件的项目的,前,前期进行可靠性,设,设计也非常重要,结构化、面向对,向,向、形式化,开发的支持环境,开发过程中的各,阶,阶段的模拟真实,使,使用环境的拟合,程,程度,7.3.2,系统的运行剖面,与,与可靠性的关系,软件的,运行剖面,是用来描述软件,的,的实际可能发生,的,的操作路径的集,合,合。运行剖面是,否,否能代表、刻画,软,软件的实际使用,取,取决于可靠性工,程,程人员对软件的,系,系统模式、功能,、,、任务需求及相,应,应的输入的分析,,,,也取决于他们,对,对用户使用这些,系,系统模式、功能,、,、任务的概率的,了,了解。运行剖面,构,构造的质量将对,测,测试、分析的结,果,果是否可信产生,最,最直接影响。,7.3.3,可靠性测试,可靠性测试活动,构造运行剖面,选取测试用例,准备测试环境,测试执行,数据收集,数据分析,失效纠正,7.3.3,可靠性测试,可靠性增长测试,软件可靠性增长,测,测试是为了满足,用,用户对软件的可,靠,靠性要求、提高,软,软件可靠性水平,而,而对软件进行的,测,测试。是为了满,足,足软件的可靠性,指,指标要求,对软,件,件进行测试,可靠性分析,修改,再测试,再分析,再修改的循环过,程,程。,可靠性验证测试,软件可靠性验证,测,测试是为了验证,在,在给定的统计置,信,信度下,软件当,前,前的可靠性水平,是,是否满足用户的,要,要求而进行的测,试,试,即用户在接,收,收软件时,确定,它,它是否满足软件,规,规格说明书中规,定,定的可靠性指标,。,。,7.3.4,可靠性测试结,果,果分析和评估,推测错误的产,生,生频度,估算错误产生,频,频度的一种方,法,法是估算平均,失,失效等待时间,MTTF,(,Mean Time ToFailure,)。,MTTF,估算公式(,Shooman,模型),:,故障累积曲线,与,与故障检出曲,线,线,7.3.4,可靠性测试结,果,果分析和评估,估算软件中故,障,障总数,ET,(ErrorTotal),的方法,利用,Shooman,模型估算程序,中,中原来错误总,量,量,ET,利用植入故障,法,法估算程序中,原,原有故障总数,ET,捕获再捕获,抽,抽样法,Hyman,分别测试法,作业,第,7,章,1,、,3,Q&A,
展开阅读全文