软件可靠性测评课件教学文稿_第1页
软件可靠性测评课件教学文稿_第2页
软件可靠性测评课件教学文稿_第3页
软件可靠性测评课件教学文稿_第4页
软件可靠性测评课件教学文稿_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件可靠性测评(cèpínɡ)第一页,共84页。提要(tíyào)软件可靠性测试软件可靠性模型(móxíng)软件可靠性评估第二页,共84页。测试—统计(tǒngjì)规则IBM关于缺陷与故障的统计(tǒngjì)研究数据客户所看到的57%以上的故障是由占缺陷总数2%以下的缺陷引起的;超过总数61%的缺陷只引起低于3%的客户将会经历的故障;不同的缺陷在所引发的故障率上存在高达4个数量级的巨大差异。第三页,共84页。测试(cèshì)—定义一种为了满足用户对软件的可靠性要求,通过对软件进行测试,发现并纠正软件中的缺陷,提高(tígāo)软件的可靠性水平,并验证它能否达到用户可靠性要求的软件测试方法。第四页,共84页。测试(cèshì)—优点需求(xūqiú)确认资源和进度预测有效并高效地测试量化测试管理可靠性预测第五页,共84页。测试(cèshì)—目的验证软件可靠性满足给定的要求评估软件可靠性水平预计软件可靠性水平实现(shíxiàn)软件可靠性增长第六页,共84页。测试(cèshì)—时机软件系统测试后期(hòuqī)软件可靠性测试与系统测试的关系第七页,共84页。测试(cèshì)—类别软件可靠性增长测试(SoftwareReliabilityGrowthTesting)在软件交付前进行,通过可靠性测试暴露软件缺陷,采取有效地措施排除(páichú)失效率较大的缺陷,以提高交付软件的可靠性软件可靠性验证测试(SoftwareReliabilityDemonstrationTesting)在软件确认阶段进行,验证软件需求规范中软件可靠性目标的满足情况,在测试过程中不进行软件缺陷消除第八页,共84页。测试—验证(yànzhèng)方案无失效运行时间间隔测试(Failure-FreeExecutionIntervalTest)要求在指定时间内测试给定数量的样品。如果在测试期间没有(méiyǒu)失效发生,则认为软件或系统满足可靠性要求定时截尾可靠性验证测试(Fixed-LengthReliabilityDemonstrationTest)序贯可靠性验证测试(Probability-RationSequentialReliabilityDemonstrationTest)第九页,共84页。测试(cèshì)—演示图12010862416140246810规格化的单位失效数继续接受拒绝Fail.No.McallsatFailureNormalizedUnits1230.003750.006250.0250.751.255

Failureintensityobjective:200failures/Mcalls第十页,共84页。测试(cèshì)—特征用系统的预期使用(shǐyòng)域作为模型来指导测试用例的选择或生成根据故障率的等级、功能使用(shǐyòng)频度和重要性来检测软件产品错误可靠性测试是面向故障的测试方法可靠性测试既有助于软件可靠性增长也可用于软件可靠性评价第十一页,共84页。测试(cèshì)—方法基于(jīyú)统计模型的可靠性测试测试用Markov链描述软件的使用结构构造和统计分配依据Markov模型上每个状态出边所关联的迁移概率,通过遍历使用模型的状态可以生成测试用例第十二页,共84页。测试(cèshì)—方法基于操作剖面的可靠性测试方法用操作剖面描述软件的使用分层建立操作剖面:客户剖面、用户剖面、系统模式(móshì)剖面、功能剖面和操作剖面每个操作对应若干个运行第十三页,共84页。测试(cèshì)—过程定义(dìngyì)“必要的”可靠性开发测试(cèshì)模型准备测试执行测试应用失效数据得到结论需求分析设计与实现集成与测试第十四页,共84页。测试—定义(dìngyì)指标失效严重程度分类一组单个出现时对用户产生相同影响的失效对失效指定严重程度,主要(zhǔyào)是为了结合失效频率来解决失效的优先级失效强度第十五页,共84页。测试—失效(shīxiào)分类举例1失效严重程度定义(经济损失)1>100000210000~10000031000~100004<1000第十六页,共84页。测试(cèshì)—失效分类举例2失效严重程度定义(对操作的影响)1用户不能进行一项或多项关键操作2用户不能进行一项或多项重要操作3用户不能进行一项或多项操作,但是有补救办法4一项或多项操作中的小缺陷第十七页,共84页。测试—操作剖面(pōumiàn)开发操作剖面是二维向量的集合,定义为:profile={(item1,p1),(item2,p2),…(itemn,pn)}itemi代表操作剖面中所包含(bāohán)的互不相交的元素中的一个,item1∩item2∩……∩itemn=Φpi代表第i个元素的权值或是发生的概率。第十八页,共84页。测试(cèshì)—建立操作剖面用操作剖面描述软件的使用分层建立(jiànlì)操作剖面客户剖面(CP,CustomerProfile)用户剖面(UP,UserProfile)系统模式剖面(SP,SystemmodeProfile)功能剖面(FP,FunctionProfile)操作剖面(OP,OperationalProfile)第十九页,共84页。测试—建立(jiànlì)操作剖面建立客户(kèhù)剖面CP={(c1,pc1),(c2,pc2),……,(cn,pcn)}为客户(kèhù)剖面中的客户(kèhù)构建用户剖面UPc1={(u1,pc1_u1),(u2,pc1_u2),……,(um,pc1_um)}UPc2={(u1,pc2_u1),(u2,pc2_u2),……,(um,pc2_um)}……Upcn={(u1,pcn_u1),(u2,pcn_u2),……,(um,pcn_um)}第二十页,共84页。测试(cèshì)—建立操作剖面对相同类型的用户进行合并,若用户ui有m个同类,则用户ui出现(chūxiàn)的概率为:得到用户剖面UP={(u1,pu1),(u2pu2),……,(umpum)}第二十一页,共84页。测试(cèshì)—建立操作剖面同理,可以得到系统模式剖面、功能(gōngnéng)剖面和操作剖面SP={(s1,ps1),(s2,ps2),……,(sn,psn)}FP={(f1,pf1),(f2,pf2),……,(fn,pfn)}OP={(o1,po1),(o2po2),……,(on,pon)}第二十二页,共84页。测试—操作(cāozuò)剖面实例确定操作模式确定操作的发起者选择表示方法(表格/图形(túxíng))创建操作表确定出现率确定出现概率考虑特殊情况第二十三页,共84页。测试(cèshì)—操作表例子操作发起者操作用户电话号码输入系统管理员增加用户删除用户电话网处理语音呼叫,无寻呼,有应答处理语音呼叫,无寻呼,无应答处理语音呼叫,有寻呼,有应答处理语音呼叫,有寻呼,有对寻呼的应答处理语音呼叫,有寻呼,无对寻呼的应答处理传真呼叫系统控制器审计电话号码数据库恢复硬件失效第二十四页,共84页。测试(cèshì)—操作出现率操作出现率(每小时操作个数)电话号码输入10000增加订户50删除订户50处理语音呼叫,无寻呼,有应答18000处理语音呼叫,无寻呼,无应答17000处理语音呼叫,有寻呼,有应答17000处理语音呼叫,有寻呼,有对寻呼的应答12000处理语音呼叫,有寻呼,无对寻呼的应答10000处理传真呼叫15000审计电话号码数据库900恢复硬件失效0.1第二十五页,共84页。测试—出现(chūxiàn)概率操作出现概率电话号码输入0.10增加订户0.0005删除订户0.0005处理语音呼叫,无寻呼,有应答0.18处理语音呼叫,无寻呼,无应答0.17处理语音呼叫,有寻呼,有应答0.17处理语音呼叫,有寻呼,有对寻呼的应答0.12处理语音呼叫,有寻呼,无对寻呼的应答0.10处理传真呼叫0.15审计电话号码数据库0.009恢复硬件失效0.000001第二十六页,共84页。测试(cèshì)—准备测试(cèshì)用例估计当前版本所需新测试用例的数量通过随机选取测试的操作,为每个操作对应若干个运行(yùnxíng)在被测系统之间分配新测试用例的数量在每个系统的操作之间分配新测试用例的数量指定新的测试用例将新测试用例加入测试用例集第二十七页,共84页。测试(cèshì)—充分性准则依据可靠性要求和评估的置信度确定的执行时间测试剖面(pōumiàn)和操作剖面(pōumiàn)吻合需求的覆盖第二十八页,共84页。测试(cèshì)—操作剖面特点优点通过分解,可以处理规模较大的系统测试用例的规模较均匀不足(bùzú)测试执行缺乏连续性高使用概率的功能被重复测试第二十九页,共84页。测试(cèshì)—Markov模型未激活终止准备状态1状态2状态3状态4S,1.00G,0.50B,0.30R,0.20G,1.00A,0.50B,0.40R,0.10R,0.30C,0.25D,0.50E,0.25F,0.70第三十页,共84页。测试—建立(jiànlì)Markov模型用Markov链描述软件的使用结构构造统计(tǒngjì)分配第三十一页,共84页。测试—结构(jiégòu)构造空装载(zhuāngzài)满Pop/EmptyStackExceptionPop[n>1]/returntop(x)Pop[n==1]/returntop(x)push(x)push(x)[n<max-1]Push/FullStackExceptionpush(x)[n==max-1]Pop/returntop(x)第三十二页,共84页。测试—统计(tǒngjì)分配空装载(zhuāngzài)满Pop/EmptyStackException,0.05Pop[n>1]/returntop(x),0.40Pop[n==1]/returntop(x),0.10push(x),0.95push(x)[n<max-1],0.40Push/FullStackException,0.05push(x)[n==max-1],0.10Pop/returntop(x),0.95第三十三页,共84页。测试(cèshì)—生成测试(cèshì)用例通过触发当前状态上的事件,完成期望的动作,产生状态转移(zhuǎnyí),来遍历使用模型,生成测试用例遍历使用模型时,依据当前状态上每个出边所关联的迁移概率,来确定需要触发的事件确定需要触发的事件时,需要同时考虑防护的作用第三十四页,共84页。测试(cèshì)—充分性准则依据可靠性要求和评估的置信度确定的执行时间(shíjiān)测试剖面和操作剖面吻合满足对状态图的覆盖要求第三十五页,共84页。测试—状态图覆盖(fùgài)要求所有状态至少(zhìshǎo)访问一次所有事件至少(zhìshǎo)触发一次所有转换至少(zhìshǎo)遍历一次(包括隐含)所有基本路径至少(zhìshǎo)覆盖一次(循环)对防护(guard)进行测试(MMC/DC、边界)第三十六页,共84页。测试(cèshì)—Markov模型特点优点便于自动化每次测试都是新的不足(bùzú)状态图的空间爆炸问题以正常测试为主第三十七页,共84页。测试(cèshì)—对模型的改进对于操作剖面分类剖面:功能剖面、数据剖面、环境(huánjìng)剖面对于Markov模型多层状态图第三十八页,共84页。测试(cèshì)—对模型的改进将UML用于刻画使用模型对UML进行改进(gǎijìn),加入统计分布特征用例图与类图、状态图、时序图等相结合,刻画嵌入式软件的各种运行特性,用于指导测试设计第三十九页,共84页。测试(cèshì)—测试(cèshì)准备测试用例准备估计当前版本所需新测试用例的数量(shùliàng)在被测系统之间分配新测试用例的数量(shùliàng)在每个系统的操作之间分配新测试用例的数量(shùliàng)指定新的测试用例将新测试用例加入测试用例集测试过程准备第四十页,共84页。测试(cèshì)—测试(cèshì)执行分配测试时间按次序(cìxù)执行测试标识系统失效分析测试输出的偏离确定哪些偏离是失败估计失效出现的时间测试记录的考虑第四十一页,共84页。测试(cèshì)—决策可靠性验证测试可靠性增长测试特殊情况(qíngkuàng)失效数据计算缺陷掩盖问题第四十二页,共84页。THANKYOUSUCCESS2023/1/1343可编辑(biānjí)第四十三页,共84页。测试(cèshì)—加速测试(cèshì)有效测试与无效测试通过(tōngguò)测试分类优化测试用例集稀有操作和关键操作非稀有关键操作稀有非关键操作稀有关键操作第四十四页,共84页。测试—稀有关键(guānjiàn)操作组合或缩减稀有(xīyǒu)操作根据操作的关键程度加权处理操作剖面按照关键类别将操作分类为稀有(xīyǒu)关键操作分配指定数量的测试用例第四十五页,共84页。测试(cèshì)—几个问题测试(cèshì)记录重复抽样充分性准则第四十六页,共84页。模型(móxíng)—基本情况基于对软件失效特征的理解,建立软件可靠性模型,试图量化软件可靠性自1970年代以来,已经开发了超过200种模型,但是在软件可靠性定量评价方面仍然遗留着大量(dàliàng)未解决的问题没有一个适应所有情况的单一模型,也没有任何模型是完备的,甚至是典型的第四十七页,共84页。模型—建模的基本(jīběn)思想测试(cèshì)时间失效(shīxiào)强度失效率目标值计划完成时间当前时间当前失效率说明失效过程对影响它的主要因素的通用依赖形式。第四十八页,共84页。模型—影响失效(shīxiào)的因素错误引入错误消除(xiāochú)操作环境第四十九页,共84页。模型—软件失效(shīxiào)的统计特性时间失效率硬件软件(理论)软件(实际)第五十页,共84页。模型(móxíng)—失效的随机性随机性的含义变量的值不确定,有许多可能的值,每个值都有相应的发生概率精确值不可预知(yùzhī),平均值和离差时可知的不与特定的概率分布相联系受测试强度和使用剖面等因素的影响第五十一页,共84页。模型—对不同类别(lèibié)失效处理分别评估(pínɡɡū)每类失效的强度和其他参数根据失效的严重程度对各类失效间的时间间隔加权,然后对数据集中处理评估(pínɡɡū)总失效强度时不考虑各类失效的严重程度,用总失效强度乘以每类失效出现的比例来确定每类失效的失效强度第五十二页,共84页。模型(móxíng)—建模的目的预测达到规定目标还需要多少测试时间预测测试结束时软件(ruǎnjiàn)的期望可靠性第五十三页,共84页。模型(móxíng)—用途项目预计估计时机开发早期测试运行期目的初始可靠性和失效率连续可靠性评价失效数据不依赖依赖输入数据过程或产品数据失效数据输出数据错误密度,总错误数全部可靠性相关度量性质静态动态推断方法直接换算直接可测实时性早期晚期精确度不确定更好第五十四页,共84页。模型(móxíng)—模型(móxíng)的典型构成模型(móxíng)假设模型(móxíng)因素数学函数描述可靠性与因素之间的关系通常为高阶指数或对数第五十五页,共84页。模型(móxíng)—参数估计方式评估通过系统失效数据进行统计推导预计根据软件产品属性(shǔxìng)和开发过程确定参数值第五十六页,共84页。模型(móxíng)—参数估计方法估计类别(lèibié)点估计区间估计估计方法最大似然法最小二乘法贝叶斯法LimitLimit第五十七页,共84页。模型(móxíng)—模型(móxíng)的评价论断的有效性—能给出未来失效行为(xíngwéi)的良好预测能力—计算出的量值是有用的测量参数的简易性基于合理的假设简单性被广泛使用对噪音的不敏感性第五十八页,共84页。模型(móxíng)—一般特性随机过程有错误清除(qīngchú)和无错误清除(qīngchú)确定参数第五十九页,共84页。模型(móxíng)—分类时间域(Timedomain)日历或执行时间类别(Category)在无限时间内发生(fāshēng)的失效是有限的还是无限的类型(Type)到指定时间发生(fāshēng)的失效数分布类(Class,仅适应于有限失效)失效强度的时间函数形式族(Family,仅适应于无限失效)失效强度的预期出现失效数的函数形式第六十页,共84页。模型(móxíng)—有限失效模型(móxíng)举例Yamada-Ohba-Osaki(1983)GammaLittlewood(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)指数其他二项式泊松

类型类第六十一页,共84页。模型(móxíng)—无限失效模型(móxíng)举例泊松T3T2T1

类型族Littlewood-Verrall(1973)线性倒数Littlewood-Verrall(1973)多项式倒数(二次)Crow(1974)幂Musa-Okumoto(1984)Moranda(1975)几何第六十二页,共84页。模型(móxíng)—应用的考虑没有普遍适用的可靠性增长(zēngzhǎng)模型可靠性增长(zēngzhǎng)与具体应用相关使用多个增长(zēngzhǎng)模型拟合观测数据,选取与数据最匹配的模型第六十三页,共84页。模型(móxíng)—推荐模型(móxíng)基本执行时间模型(móxíng)(Musa)(简称:基本模型(móxíng))对数泊松执行时间模型(móxíng)(Musa-Okumoto)(简称:对数模型(móxíng))第六十四页,共84页。评估—模型(móxíng)基本假设故障是独立的,并且被遇到的概率是均匀分布测试空间覆盖了使用空间(测试从完整(wánzhěng)的使用输入集中选取)每个运行的输入集是随机选取的所有的失效有明确的定义并易于观察导致失效的错误立即被修正,否则重复出现的失效不计算在内第六十五页,共84页。评估—基本(jīběn)模型第六十六页,共84页。评估—对数(duìshù)泊松模型第六十七页,共84页。评估—失效强度(qiángdù)比较(m)l0l0平均(píngjūn)预期失效数m失效(shīxiào)强度l(m)对数泊松模型基本模型λ:失效强度λ0:初始失效强度μ:在给定时间点上失效的总平均数v0:在无限时间范围内总失效数第六十八页,共84页。评估—失效(shīxiào)强度比较(t)l0l0执行时间t失效强度l(m)基本模型对数泊松模型λ:失效强度λ0:初始失效强度t:执行时间(shíjiān)v0:在无限时间(shíjiān)范围内总失效数第六十九页,共84页。评估(pínɡɡū)—平均失效数比较(t)tmv0基本模型对数泊松模型t:执行时间μ:在给定时间点上失效的总平均数v0:在无限(wúxiàn)时间范围内总失效数第七十页,共84页。评估(pínɡɡū)—模型参数参数模型基本模型对数模型初始失效强度λ0λ0失效强度变化总失效数υ0—失效强度衰减率—θ第七十一页,共84页。评估(pínɡɡū)—模型参数预测(1/3)初始(chūshǐ)失效强度λ0λ0=ƒKω0总失效数υ0υ0=ω0/B失效强度衰减率θ第七十二页,共84页。评估—模型(móxíng)参数预测(2/3)程序的线性执行频率(pínlǜ)ƒ程序的平均执行率γ/目标指令数I错误暴露率K导致失效的“程序段”所占的时间比第七十三页,共84页。评估—模型(móxíng)参数预测(3/3)固有错误数ω0错误播种通过测试确定错误密度,参照(cānzhào)软件规模、复杂度,根据经验公式推算错误衰减因子B错误将减少数/出现的失效数第七十四页,共84页。评估(pínɡɡū)—例1(基本模型)题:假定程序在无限的执行时间(shíjiān)里将经历100次失效,在最近的t时间(shíjiān)单位期间,发生50次失效。初始失效强度为10次失效/CPU小时。计算当前(在t)的失效强度:解:第七十五页,共84页。评估(pínɡɡū)—例2(基本模型)题:设0=10次失效/CPU小时,v0=100(在无限(wúxiàn)的执行时间里的失效数),求当=10CPU小时和=100CPU小时的失效数?解:第七十六页,共84页。评估—例3(基本(jīběn)模型)题:设0=10次失效/CPU小时,v0=100(在无限(wúxiàn)的执行时间里的失效数),求=10CPU小时和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论