《软件可靠性测评ppt课件》由会员分享,可在线阅读,更多相关《软件可靠性测评ppt课件(84页珍藏版)》请在金锄头文库上搜索。
1、Software Quality Specialists, Services, Solutions, Systems软件可靠性测评软件可靠性测评Software Quality Specialists, Services, Solutions, Systems提要提要软件可靠性测试软件可靠性测试软件可靠性模型软件可靠性模型软件可靠性评估软件可靠性评估Software Quality Specialists, Services, Solutions, Systems测试测试统计规则统计规则IBM关于缺陷与故障的统计研究数据关于缺陷与故障的统计研究数据v客客户户所所看看到到的的57%以以上上的的故
2、故障障是是由由占占缺陷总数缺陷总数2%以下的缺陷引起的;以下的缺陷引起的;v超超过过总总数数61%的的缺缺陷陷只只引引起起低低于于3%的客户将会经历的故障;的客户将会经历的故障;v不不同同的的缺缺陷陷在在所所引引发发的的故故障障率率上上存存在在高达高达4个数量级个数量级的巨大差异。的巨大差异。Software Quality Specialists, Services, Solutions, Systems测试测试定义定义一一种种为为了了满满足足用用户户对对软软件件的的可可靠靠性性要要求求,通通过过对对软软件件进进行行测测试试,发发现现并并纠纠正正软软件件中中的的缺缺陷陷,提提高高软软件件的的
3、可可靠靠性性水水平平,并并验验证证它它能能否否达达到到用用户户可可靠靠性性要要求求的的软软件件测试方法。测试方法。Software Quality Specialists, Services, Solutions, Systems测试测试优点优点需求确认需求确认资源和进度预测资源和进度预测有效并高效地测试有效并高效地测试量化测试管理量化测试管理可靠性预测可靠性预测Software Quality Specialists, Services, Solutions, Systems测试测试目的目的验证软件可靠性满足给定的要求验证软件可靠性满足给定的要求 评估软件可靠性水平评估软件可靠性水平 预计软
4、件可靠性水平预计软件可靠性水平 实现软件可靠性增长实现软件可靠性增长 Software Quality Specialists, Services, Solutions, Systems测试测试时机时机软件系统测试后期软件系统测试后期软件可靠性测试与系统测试的关系软件可靠性测试与系统测试的关系Software Quality Specialists, Services, Solutions, Systems测试测试类别类别软件可靠性增长测试软件可靠性增长测试(Software Reliability Growth Testing)v在在软软件件交交付付前前进进行行,通通过过可可靠靠性性测测试试
5、暴暴露露软软件件缺缺陷陷,采采取取有有效效地地措措施施排排除除失失效效率率较较大的缺陷,以提高交付软件的可靠性大的缺陷,以提高交付软件的可靠性软件可靠性验证测试软件可靠性验证测试(Software Reliability Demonstration Testing)v在在软软件件确确认认阶阶段段进进行行,验验证证软软件件需需求求规规范范中中软软件件可可靠靠性性目目标标的的满满足足情情况况,在在测测试试过过程中不进行软件缺陷消除程中不进行软件缺陷消除Software Quality Specialists, Services, Solutions, Systems测试测试验证方案验证方案无失效运
6、行时间间隔测试无失效运行时间间隔测试 (Failure-Free Execution Interval Test) v要要求求在在指指定定时时间间内内测测试试给给定定数数量量的的样样品品。如如果果在在测测试试期期间间没没有有失失效效发发生生,则则认认为为软软件或系统满足可靠性要求件或系统满足可靠性要求定时截尾可靠性验证测试定时截尾可靠性验证测试 (Fixed-Length Reliability Demonstration Test) 序贯可靠性验证测试序贯可靠性验证测试(Probability-Ration Sequential Reliability Demonstration Test)
7、 Software Quality Specialists, Services, Solutions, Systems测试测试演示图演示图12010862416140246810规格化的单位失效数继续继续接受接受拒绝拒绝Fail.No.Mcalls atFailureNormalizedUnits1230.003750.006250.0250.751.25 5 Failure intensity objective: 200 failures / McallsSoftware Quality Specialists, Services, Solutions, Systems测试测试特征特征用用
8、系系统统的的预预期期使使用用域域作作为为模模型型来来指指导导测测试用例的选择或生成试用例的选择或生成根根据据故故障障率率的的等等级级、功功能能使使用用频频度度和和重重要性来检测软件产品错误要性来检测软件产品错误可靠性测试是面向故障的测试方法可靠性测试是面向故障的测试方法可可靠靠性性测测试试既既有有助助于于软软件件可可靠靠性性增增长长也也可用于软件可靠性评价可用于软件可靠性评价Software Quality Specialists, Services, Solutions, Systems测试测试方法方法基于统计模型的可靠性测试测试基于统计模型的可靠性测试测试v用用Markov链描述软件的使用
9、链描述软件的使用v结构构造和统计分配结构构造和统计分配v依依据据Markov模模型型上上每每个个状状态态出出边边所所关关联联的的迁迁移移概概率率,通通过过遍遍历历使使用用模模型型的状态可以生成测试用例的状态可以生成测试用例Software Quality Specialists, Services, Solutions, Systems测试测试方法方法基于操作剖面的可靠性测试方法基于操作剖面的可靠性测试方法v用操作剖面描述软件的使用用操作剖面描述软件的使用v分分层层建建立立操操作作剖剖面面:客客户户剖剖面面、用用户户剖剖面面、系系统统模模式式剖剖面面、功功能能剖剖面面和和操操作剖面作剖面v每个
10、操作对应若干个运行每个操作对应若干个运行 Software Quality Specialists, Services, Solutions, Systems测试测试过程过程定义定义“必要的必要的”可靠性可靠性开发测试模型开发测试模型准备测试准备测试执行测试执行测试应用失效数据应用失效数据得到结论得到结论需求分析需求分析设计与实现设计与实现集成与测试集成与测试Software Quality Specialists, Services, Solutions, Systems测试测试定义指标定义指标失效严重程度分类失效严重程度分类v一一组组单单个个出出现现时时对对用用户户产产生生相相同同影影响的
11、失效响的失效v对对失失效效指指定定严严重重程程度度,主主要要是是为为了了结合失效频率来解决失效的优先级结合失效频率来解决失效的优先级失效强度失效强度Software Quality Specialists, Services, Solutions, Systems测试测试失效分类举例失效分类举例1失效严重程度失效严重程度定义定义(经济损失经济损失)1100000210000100000310001000041 /return top(x)Popn=1/return top(x)push(x)push(x)n1 /return top(x),0.40Popn=1/return top(x), 0
12、.10push(x),0.95push(x)nmax-1,0.40Push/FullStackException,0.05push(x)n=max-1,0.10Pop/return top(x), 0.95Software Quality Specialists, Services, Solutions, Systems测试测试生成测试用例生成测试用例通通过过触触发发当当前前状状态态上上的的事事件件,完完成成期期望望的的动动作作,产产生生状状态态转转移移,来来遍遍历历使使用用模模型,生成测试用例型,生成测试用例遍遍历历使使用用模模型型时时,依依据据当当前前状状态态上上每每个个出出边边所所关关联
13、联的的迁迁移移概概率率,来来确确定定需需要要触触发的事件发的事件确确定定需需要要触触发发的的事事件件时时,需需要要同同时时考考虑虑防护的作用防护的作用Software Quality Specialists, Services, Solutions, Systems测试测试充分性准则充分性准则依依据据可可靠靠性性要要求求和和评评估估的的置置信信度度确确定定的的执行时间执行时间测试剖面和操作剖面吻合测试剖面和操作剖面吻合满足对状态图的覆盖要求满足对状态图的覆盖要求Software Quality Specialists, Services, Solutions, Systems测试测试状态图覆盖
14、要求状态图覆盖要求所有状态至少访问一次所有状态至少访问一次所有事件至少触发一次所有事件至少触发一次所有转换至少遍历一次所有转换至少遍历一次(包括隐含包括隐含)所有基本路径至少覆盖一次所有基本路径至少覆盖一次(循环循环)对对防防护护(guard)进进行行测测试试(MMC/DC、边边界界)Software Quality Specialists, Services, Solutions, Systems测试测试Markov模型特点模型特点优点优点v便于自动化便于自动化v每次测试都是新的每次测试都是新的不足不足v状态图的空间爆炸问题状态图的空间爆炸问题v以正常测试为主以正常测试为主Software
15、Quality Specialists, Services, Solutions, Systems测试测试对模型的改进对模型的改进对于操作剖面对于操作剖面v分分类类剖剖面面:功功能能剖剖面面、数数据据剖剖面面、环环境剖面境剖面对于对于Markov模型模型v多层状态图多层状态图Software Quality Specialists, Services, Solutions, Systems测试测试对模型的改进对模型的改进将将UML用于刻画使用模型用于刻画使用模型对对UML进行改进,加入统计分布特征进行改进,加入统计分布特征用用例例图图与与类类图图、状状态态图图、时时序序图图等等相相结结合合,刻
16、刻画画嵌嵌入入式式软软件件的的各各种种运运行行特特性性,用于指导测试设计用于指导测试设计Software Quality Specialists, Services, Solutions, Systems测试测试测试准备测试准备测试用例准备测试用例准备v估计当前版本所需新测试用例的数量估计当前版本所需新测试用例的数量v在在被被测测系系统统之之间间分分配配新新测测试试用用例例的的数数量量v在在每每个个系系统统的的操操作作之之间间分分配配新新测测试试用用例的数量例的数量v指定新的测试用例指定新的测试用例v将新测试用例加入测试用例集将新测试用例加入测试用例集测试过程准备测试过程准备Software
17、Quality Specialists, Services, Solutions, Systems测试测试测试执行测试执行分配测试时间分配测试时间按次序执行测试按次序执行测试标识系统失效标识系统失效v分析测试输出的偏离分析测试输出的偏离v确定哪些偏离是失败确定哪些偏离是失败v估计失效出现的时间估计失效出现的时间测试记录的考虑测试记录的考虑Software Quality Specialists, Services, Solutions, Systems测试测试决策决策可靠性验证测试可靠性验证测试可靠性增长测试可靠性增长测试特殊情况特殊情况v失效数据计算失效数据计算v缺陷掩盖问题缺陷掩盖问题So
18、ftware Quality Specialists, Services, Solutions, SystemsTHANK YOUSUCCESS2024/7/2343可编辑Software Quality Specialists, Services, Solutions, Systems测试测试加速测试加速测试有效测试与无效测试有效测试与无效测试v通过测试分类优化测试用例集通过测试分类优化测试用例集稀有操作和关键操作稀有操作和关键操作v非稀有关键操作非稀有关键操作v稀有非关键操作稀有非关键操作v稀有关键操作稀有关键操作Software Quality Specialists, Services
19、, Solutions, Systems测试测试稀有关键操作稀有关键操作组合或缩减稀有操作组合或缩减稀有操作根据操作的关键程度加权处理操作剖面根据操作的关键程度加权处理操作剖面按照关键类别将操作分类按照关键类别将操作分类为为稀稀有有关关键键操操作作分分配配指指定定数数量量的的测测试试用用例例Software Quality Specialists, Services, Solutions, Systems测试测试几个问题几个问题测试记录测试记录重复抽样重复抽样充分性准则充分性准则Software Quality Specialists, Services, Solutions, Systems
20、模型模型基本情况基本情况基基于于对对软软件件失失效效特特征征的的理理解解,建建立立软软件件可靠性模型,试图量化软件可靠性可靠性模型,试图量化软件可靠性自自1970年年代代以以来来,已已经经开开发发了了超超过过200种种模模型型,但但是是在在软软件件可可靠靠性性定定量量评评价价方方面仍然遗留着大量未解决的问题面仍然遗留着大量未解决的问题没没有有一一个个适适应应所所有有情情况况的的单单一一模模型型,也也没有任何模型是完备的,甚至是典型的没有任何模型是完备的,甚至是典型的Software Quality Specialists, Services, Solutions, Systems模型模型建模的
21、基本思想建模的基本思想测试测试时间时间失效强度失效强度失效率目标值计划完成时间当前时间当前失效率说明失效过程对影响它的说明失效过程对影响它的主要因素的通用依赖形式。主要因素的通用依赖形式。Software Quality Specialists, Services, Solutions, Systems模型模型影响失效的因素影响失效的因素错误引入错误引入错误消除错误消除操作环境操作环境Software Quality Specialists, Services, Solutions, Systems模型模型软件失效的统计特性软件失效的统计特性时间时间失失效效率率硬件硬件软件软件(理论理论)软件
22、软件(实际实际)Software Quality Specialists, Services, Solutions, Systems模型模型失效的随机性失效的随机性随机性的含义随机性的含义v变变量量的的值值不不确确定定,有有许许多多可可能能的的值值,每个值都有相应的发生概率每个值都有相应的发生概率v精精确确值值不不可可预预知知,平平均均值值和和离离差差时时可可知的知的v不与特定的概率分布相联系不与特定的概率分布相联系v受测试强度和使用剖面等因素的影响受测试强度和使用剖面等因素的影响Software Quality Specialists, Services, Solutions, System
23、s模型模型对不同类别失效处理对不同类别失效处理分别评估每类失效的强度和其他参数分别评估每类失效的强度和其他参数根根据据失失效效的的严严重重程程度度对对各各类类失失效效间间的的时时间间隔加权,然后对数据集中处理间间隔加权,然后对数据集中处理评评估估总总失失效效强强度度时时不不考考虑虑各各类类失失效效的的严严重重程程度度,用用总总失失效效强强度度乘乘以以每每类类失失效效出出现的比例来确定每类失效的失效强度现的比例来确定每类失效的失效强度Software Quality Specialists, Services, Solutions, Systems模型模型建模的目的建模的目的预测达到规定目标还需
24、要多少测试时间预测达到规定目标还需要多少测试时间预测测试结束时软件的期望可靠性预测测试结束时软件的期望可靠性Software Quality Specialists, Services, Solutions, Systems模型模型用途用途项目项目预计预计估计估计时机时机开发早期开发早期测试运行期测试运行期目的目的初始可靠性和失效率初始可靠性和失效率连续可靠性评价连续可靠性评价失效数据失效数据不依赖不依赖依赖依赖输入数据输入数据过程或产品数据过程或产品数据失效数据失效数据输出数据输出数据错误密度,总错误数错误密度,总错误数全部可靠性相关度量全部可靠性相关度量性质性质静态静态动态动态推断方法推断
25、方法直接换算直接换算直接可测直接可测实时性实时性早期早期晚期晚期精确度精确度不确定不确定更好更好Software Quality Specialists, Services, Solutions, Systems模型模型模型的典型构成模型的典型构成模型假设模型假设模型因素模型因素数学函数数学函数v描述可靠性与因素之间的关系描述可靠性与因素之间的关系v通常为高阶指数或对数通常为高阶指数或对数Software Quality Specialists, Services, Solutions, Systems模型模型参数估计方式参数估计方式评估评估v通过系统失效数据进行统计推导通过系统失效数据进行统
26、计推导预计预计v根根据据软软件件产产品品属属性性和和开开发发过过程程确确定定参数值参数值Software Quality Specialists, Services, Solutions, Systems模型模型参数估计方法参数估计方法估计类别估计类别v点估计点估计v区间估计区间估计估计方法估计方法v最大似然法最大似然法v最小二乘法最小二乘法v贝叶斯法贝叶斯法LimitLimitSoftware Quality Specialists, Services, Solutions, Systems模型模型模型的评价模型的评价论论断断的的有有效效性性能能给给出出未未来来失失效效行行为为的良好预测的良
27、好预测能力能力计算出的量值是有用的计算出的量值是有用的测量参数的简易性测量参数的简易性基于合理的假设基于合理的假设简单性简单性被广泛使用被广泛使用对噪音的不敏感性对噪音的不敏感性Software Quality Specialists, Services, Solutions, Systems模型模型一般特性一般特性随机过程随机过程有错误清除和无错误清除有错误清除和无错误清除确定参数确定参数Software Quality Specialists, Services, Solutions, Systems模型模型分类分类时间域时间域(Time domain)日历或执行时间日历或执行时间类别类别
28、(Category)在无限时间内发生的失效是有限的还是无限的在无限时间内发生的失效是有限的还是无限的类型类型(Type)到指定时间发生的失效数分布到指定时间发生的失效数分布类类(Class, 仅适应于有限失效仅适应于有限失效)失效强度的时间函数形式失效强度的时间函数形式族族(Family, 仅适应于无限失效仅适应于无限失效)失效强度的预期出现失效数的函数形式失效强度的预期出现失效数的函数形式Software Quality Specialists, Services, Solutions, Systems模型模型有限失效模型举例有限失效模型举例Yamada-Ohba-Osaki (1983)G
29、ammaLittlewood (1981)ParetoSchick-Wlverton (1978)C1Schick-Wolverton (1973)Wagoner (1973)WeibullGoel-Okumoto (1978) Musa(1979)Keiller等等(1983)Jelinski-Moranda (1972)Shooman (1972)Musa(1975)Moranda (1975)Schneidewind (1975)Goel-Okumoto (1979)指数指数其他其他二项式二项式泊松泊松 类型类型类类Software Quality Specialists, Servic
30、es, Solutions, Systems模型模型无限失效模型举例无限失效模型举例泊松泊松T3T2T1 类型类型族族Littlewood-Verrall (1973)线性倒数线性倒数Littlewood-Verrall (1973)多项式倒数多项式倒数(二次二次)Crow(1974)幂幂Musa-Okumoto (1984)Moranda (1975)几何几何Software Quality Specialists, Services, Solutions, Systems模型模型应用的考虑应用的考虑没有普遍适用的可靠性增长模型没有普遍适用的可靠性增长模型可靠性增长与具体应用相关可靠性增长与
31、具体应用相关使使用用多多个个增增长长模模型型拟拟合合观观测测数数据据,选选取取与数据最匹配的模型与数据最匹配的模型Software Quality Specialists, Services, Solutions, Systems模型模型推荐模型推荐模型基基本本执执行行时时间间模模型型(Musa)(简简称称:基基本本模型)模型)对对 数数 泊泊 松松 执执 行行 时时 间间 模模 型型 (Musa-Okumoto) (简称:对数模型)(简称:对数模型)Software Quality Specialists, Services, Solutions, Systems评估评估模型基本假设模型基本
32、假设故故障障是是独独立立的的,并并且且被被遇遇到到的的概概率率是是均匀分布均匀分布测测试试空空间间覆覆盖盖了了使使用用空空间间(测测试试从从完完整整的使用输入集中选取的使用输入集中选取)每个运行的输入集是随机选取的每个运行的输入集是随机选取的所有的失效有明确的定义并易于观察所有的失效有明确的定义并易于观察导导致致失失效效的的错错误误立立即即被被修修正正, 否否则则重重复出现的失效不计算在内复出现的失效不计算在内Software Quality Specialists, Services, Solutions, Systems评估评估基本模型基本模型Software Quality Specia
33、lists, Services, Solutions, Systems评估评估对数泊松模型对数泊松模型Software Quality Specialists, Services, Solutions, Systems评估评估失效强度比较失效强度比较(m)l0l0平均预期失效数 m失效强度 l(m)对数泊松模型基本模型: 失效强度0: 初始失效强度: 在给定时间点上失效的总平均数v0: 在无限时间范围内总失效数Software Quality Specialists, Services, Solutions, Systems评估评估失效强度比较失效强度比较(t)l0l0执行时间 t失效强度 l
34、(m)基本模型对数泊松模型: 失效强度0: 初始失效强度t : 执行时间v0: 在无限时间范围内总失效数Software Quality Specialists, Services, Solutions, Systems评估评估平均失效数平均失效数比较比较(t)tmv0基本模型基本模型对数泊松模型对数泊松模型t : 执行时间: 在给定时间点上失效的总平均数v0: 在无限时间范围内总失效数Software Quality Specialists, Services, Solutions, Systems评估评估模型参数模型参数参参 数数模模 型型基本模型基本模型 对数模型对数模型初始失效强度初始
35、失效强度00失效强度变化失效强度变化总失效数总失效数0失效强度衰减率失效强度衰减率Software Quality Specialists, Services, Solutions, Systems评估评估模型参数预测模型参数预测(1/3)初始失效强度初始失效强度0 v0 K0 总失效数总失效数0 v0 0 /B失效强度衰减率失效强度衰减率Software Quality Specialists, Services, Solutions, Systems评估评估模型参数预测模型参数预测(2/3)程序的线性执行频率程序的线性执行频率 v 程序的平均执行率程序的平均执行率/ 目标指令数目标指令数I
36、错误暴露率错误暴露率Kv导致失效的导致失效的“程序段程序段”所占的时间比所占的时间比Software Quality Specialists, Services, Solutions, Systems评估评估模型参数预测模型参数预测(3/3)固有错误数固有错误数0 v错误播种错误播种v通通过过测测试试确确定定错错误误密密度度,参参照照软软件件规规模、复杂度,根据经验公式推算模、复杂度,根据经验公式推算错误衰减因子错误衰减因子Bv错误将减少数错误将减少数/出现的失效数出现的失效数Software Quality Specialists, Services, Solutions, Systems评
37、估评估例例1(基本模型基本模型)题题:假假定定程程序序在在无无限限的的执执行行时时间间里里将将经经历历100次次失失效效,在在最最近近的的 t 时时间间单单位位期期间间,发发生生50次次失失效效。初初始始失失效效强强度度为为10 次次失失效效/CPU小时。计算当前小时。计算当前(在在t) 的失效强度的失效强度:解:解:Software Quality Specialists, Services, Solutions, Systems评估评估例例2 (基本模型基本模型)题题: 设设 0 = 10 次次失失效效/CPU小小时时,v0 = 100 (在在无无限限的的执执行行时时间间里里的的失失效效数
38、数),求求当当 = 10 CPU 小时和小时和 = 100 CPU小时的失效数小时的失效数?解:解:Software Quality Specialists, Services, Solutions, Systems评估评估例例3 (基本模型基本模型)题题: 设设 0 = 10 次次失失效效/CPU小小时时,v0 = 100 (在在无无限限的的执执行行时时间间里里的的失失效效数数),求求 = 10 CPU 小时和小时和 = 100 CPU小时时的失效强度。小时时的失效强度。解:解:Software Quality Specialists, Services, Solutions, System
39、s评估评估例例4(对数模型对数模型)题题: 设设 0 = 10 次次失失效效/CPU小小时时, =0.02/失失效效, 已已经经经经历历了了50 次次失失效效( = 50),求求当当前前失效强度失效强度?解:解:Software Quality Specialists, Services, Solutions, Systems评估评估例例5 (对数模型对数模型)题题: 设设 0 = 10 次次失失效效/CPU小小时时, = 0.02 / 失失效效。求求 = 10 CPU 小小时时和和 = 100 CPU小时两个时刻的失效数小时两个时刻的失效数?解:解:Software Quality Spec
40、ialists, Services, Solutions, Systems评估评估例例6 (对数模型对数模型)题题: 设设 0 = 10 次次失失效效/CPU小小时时, = 0.02 / 失失效效,求求 = 10 CPU 小小时时和和 = 100 CPU小时两个时刻的失效强度。小时两个时刻的失效强度。解:解:(基本模型为3.68)(基本模型为0.000454)Software Quality Specialists, Services, Solutions, Systems评估评估数据处理示例数据处理示例总故障数总故障数: 136失效时间失效时间(CPU秒秒)数据数据v3, 33, 146,
41、227, 342, 351, 353,444, 556, 571, 709, 759, 836 ., 88682处理处理v将将失失效效数数每每个个分分为为一一组组,获获得得失失效效强强度度、累计累计失效分布和平均失效时间累计累计失效分布和平均失效时间v制表制表v绘图绘图Software Quality Specialists, Services, Solutions, Systems评估评估数据表数据表累计失效数累计失效数累计时间累计时间失效强度失效强度时间时间53420.014620171.00105710.021834456.50159680.012594769.502019840.004
42、9211476.002530980.0044882541.003050490.0025634073.503553240.0181825186.504063800.0047355852.004576440.0039567012.0050100890.0020458866.5055109820.00559910535.5060125590.00317111770.50Software Quality Specialists, Services, Solutions, Systems评估评估失效强度图示失效强度图示(t)Software Quality Specialists, Services, Solutions, SystemsTHANK YOUSUCCESS2024/7/2384可编辑