1 / 7
文档名称:

软件可靠性模型综述.docx

格式:docx   大小:66KB   页数:7页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件可靠性模型综述.docx

上传人:飞行的大米 2022/10/5 文件大小:66 KB

下载得到文件列表

软件可靠性模型综述.docx

文档介绍

文档介绍:该【软件可靠性模型综述 】是由【飞行的大米】上传分享,文档一共【7】页,该文档可以免费在线阅读,需要了解更多关于【软件可靠性模型综述 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。....
软件靠谱性模型综述
靠谱性是权衡全部软件系统最重要的特色之一。不行靠的软件会让用户付出更多的时间
和金钱,也会使开发人员声誉扫地。IEEE把软件靠谱性定义为在规定条件下,在规准时间,
软件不发生无效的概率。该概率是软件输入和系统输出的函数,也是软件中存在故障的函数,
输入将确立能否会碰到所存在的故障。
软件靠谱性模型,对于软件靠谱性的评估起着核心作用,进而对软件质量的保证有侧重
要的意义。一般说来,一个好的软件靠谱性模型能够增添对于开发项目的效率,并对认识软
件开发过程供给了一个共同的工作基础,同时也增添了管理的透明度。所以,对于现在发展
快速的软件家产,在开发项目中应用一个好的软件靠谱性模型作出必需的展望,花销很少的
项目资源产生好的效益,对于公司的发展有必定的意义。
软件无效过程

当软件发生无效时,说明该软件不行靠,发生的无效数越多,发生无效的时间间隔越短,则该软件越不行靠。软件无效的机理如以下列图所示:
1)软件错误(Softwareerror):指在开发人员在软件开发过程中出现的失误,大意和错误,
包含启动错、输入围错、算法错和界限错等。
2)软件缺点(Softwaredefect):指代码中存在能惹起软件故障的编码,软件缺点是静态
存在的,只需不改正程序就向来留在程序中间。如不正确的功能需求,遗漏的性能需求等。
3)软件故障(Softwarefault):指软件在运转时期发生的一种不行承受的部状态,是软件
缺点被激活后的动向表现形式。
4)软件无效(Softwarefailure):指程序的运转偏离了需求,软件履行碰到软件中缺点可
能致使软件的无效。如死机、错误的输出结果、没有在规定的时间响应等。
1/7
....
从软件靠谱性的定义能够知道,软件靠谱性是用概率胸怀的,那么软件无效的发生是一个随机的过程。在使用一个程序时,在其余条件保持一致的前提下,有时相同的输入数据会获取不一样的输出结果。所以,在实质运转软件时,何时碰到程序中的缺点致使软件无效呈
现出随机性和不稳固性。
全部的软件无效都是因为软件中的故障惹起的,而软件故障是一种人为的错误,是软件
缺点在不停的测试和使用后才表现出来的,假如这些故障不可以获取与时有效的办理,便不行
防止的会造成软件无效。而一个软件中存在的软件错误和缺点总数是没法确立的,也不行能
被完好清除去,有时清除去一个故障甚至会惹起更多的故障。
所以在软件开发周期中,软件错误是不行防止的,但能够经过学习改良,不停汲取经验
教训,尽量减少程序中的错误特别是重要错误的数目。在测试阶段,测试人员应尽可能多的
检测并清除去软件中的故障,进而减少软件无效强度,提升软件的靠谱性和质量。

软件中的故障会致使软件功能不可以正常实现,降低了软件的靠谱度。软件故障一般是软
件开发各阶段人为造成的,大体包含需求剖析定义错误、设计错误、编码错误、测试错误和文档错误等。
所以要想获取高靠谱性的软件,就要和软件中的故障做斗争。有以下三种直接的方式来
减少软件故障,提升软件靠谱性:
1)软件故障预防
软件故障预防是指预防或许防止错误的发生或引入,进而减少故障检测和清除造成的花
费。增强软件开发员的教育和培训能够对减少故障起到必定的作用,此外在软件开发中能够
利用下边几个故障预防技术:软件开发方法,软件配置管理,软件靠谱性安全性设计和自动化故障预防等。
2)软件故障的检测和清除
故障检测和故障清除是指从数目上和严重程度上减少软件中的故障。这在软件测试顶用
得最多,测试人员要在限制的时间和花费发现并清除去尽可能多的故障,这是提升软件靠谱
性的主要门路。故障检测和清除技术能够分为静态方法和动向方法。
静态方法是在不实质运转软件的条件下检测软件的故障并进行清除,包含软件人工审察
技术,软件静态剖析技术和软件靠谱性剖析技术。
2/7
....
动向方法主假如经过运转软件来观察软件的无效,进而除去故障。动向测试技术主要包
括:白盒测试技术,黑盒测试技术与软件靠谱性测试技术。
3)软件故障的截止
软件故障截止也称容错技术,是指在错误存在的状况下,不致使软件无效,并还能达成
系统功能的能力。主要的软件容错技术主要包含恢复块技术和N版本编程技术。
软件靠谱性模型的概括
软件靠谱性工程使用的模型有两大种类:

靠性构造模型是指用于反应系统构造逻辑关系的数学方程。借助这种模型,在掌握软件
单元靠谱性特色的基础上,能够对系统的靠谱性特色与其发展变化规律做出评论。软件靠谱
性构造模型包含串连系统模型、并联系统模型,以与硬-软件复合系统模型等。软件靠谱性
构造模型是软件系统靠谱性剖析的重要工具,既能够用于软件系统的靠谱性综合,也可用于
软件系统的靠谱性分解。

靠谱性估计模型实质上是一些描绘软件无效与软件错误的关系,描绘软件无效与运转剖
面的关系的数学方程。借助这种模型,能够对软件的靠谱性特色做出定量的估计或评估。例
如,能够估计开发过程中的靠谱性增添,估计或评估软件在预约工作时间的靠谱度,估计软
件在随意时刻发生的无效数的均匀值、软件在规定的时间间隔发生无效次数的均匀值、软件
在随意时刻的无效率、软件无效时间间隔的概率散布和软件预期的交托时间等。评估和估计
是两个有差别又有联系的看法。评估是指对软件现有的靠谱性水平做出评论。估计是指对软
件未来的靠谱性特色进行估计。一定指出,在使用数学模型进行估计时,包含的假定是,事
物发展规律在未来的一段时间保持不变。对于短期展望这个假定是合理的。可是,跟着展望
期的延伸,其近似性减弱。用靠谱性模型进行估计时,为了获取较正确的结果,假如发现软
件的无效规律有显然改变,应当对参数加以修正或从头采集无效数据,从头确立模型参数。
一般所说的软件靠谱性模型均指软件靠谱性估计模型。本文中,软件靠谱性模型均是指
3/7
....
软件靠谱性估计模型。
软件靠谱性模型的特色
与使用的程序设计语言没关。软件靠谱性的应用与采纳什么程序设计语言来编写软
件之间没有什么直接关系。但对于依据同一个规格说明书,不论你用什么程序设计语言软件来编写软件,同一个软件靠谱性模型应给出相同的估测结果。
与详细用到的软件开发方法没关。软件开发是一个十分复杂的过程,涉与到很多的
人为要素,进而使得对软件的质量难以进行展望。为了保证展望的精度,不如假定待估测的
软件系统是用最坏的软件开发方法开发出来的。
测试方法的选择问题。其实是没法经过完全的测试来获取完好靠谱的软件,所以
不得不采纳有限的测试,那么目标就是用最少的测试以求最大限度的软件靠谱性。能够用例
如界限值测试法、分类测试法、路径测试法等方法来达到。几乎全部的软件靠谱性模型都假定测试环境就是未来软件的运转环境,这限制了高靠谱性估计状况下的这些模型的可用性。
改错过程。实质上更正老的错误时常常会引人新的错误。
模型要表述的容。模型应当指出测试的输入能否已足够地覆盖了输入域,测试的条
件和数据能否已正确地模拟了操作系统、能否已足以查出那些近似的错误等。软件靠谱性模型假定测试的条件和数据与操作环境有着相同的散布,也就简捷地假定了上述要表述的容。
输入的散布问题。靠谱性估计密切地依靠于模型假定的输入散布。作为一个极端的
状况,假如输入是一个常数(比方说只用到一个输入),软件将或许犯错或许成功的履行,
于是就给出靠谱性相应地为0或为1。
(7)对于软件复杂性问题。大部分现有的软件靠谱性模型都没有考虑这个问题。实质上,
复杂的软件应当比简单的软件要求更多的测试。
模型的考证问题。经常因为缺少实质可用的足足数据,使得对模型的考证没法进行,且在整个软件寿命周期,软件几乎呈常数倍数地增添,致使靠谱性也相应地变化,软件靠谱性的考证工作也就更为复杂化。
对于时间问题。在软件靠谱性量测与硬件靠谱性量测综合起来对必定的系统环境进
行查核时,将CPU时间作为时间单位是必需的。
考虑模型所要求的数据能否简单采集。不然,因为数据问题,将会限制软件靠谱性的应用围。
4/7
....
软件靠谱性模型的分类
到当前为止,软件靠谱性模型的研究已有40多年的历史,外国已发布的软件靠谱性模型有近百种,但因为对软件靠谱性模型的研究还处在一个初步阶段,当前并无一个完好、
系统的科学分类方法。可是为了研究这些模型,又需要作些必需的分类。所以,许多专家学者提出了很多不一样的分类。总的来说,模型能够依照它们的假定、测试空间、软件构造、办理的方式方法等进行分类,或许依据模型自己的数学构造与使用的参数估计方法进行分类。
一些常有的分类方法有:
按随机分类法:依据随机过程的假定,如过程确实定性和非确立性、马氏过程、泊松过程等进行分类。
按软件出现的故障数进行分类:主要有错误计数模型和非计数模型,可数性或不行数(无量)模型。
按模型参数的估计方法进行分类:主要有Bayes方法或非Bayes方法,最大似然估计或最小二乘法,此外还有线性模型等。
按模型使用的时间方式分类:主要有日历时间和履行时间模型。
按修复过程分类:主要指对软件系统修复过程的一类模型,如完好修复型和不完好修复型,完好排错型和不完好排错型。
按对软件的部构造能否认识进行分类:可分为黑箱模型和白箱模型。对它们的分类主要依据对软件的部构造的认识程度以与对它们的构造能加以利用的程度来划分。
依据Shanthikumar的看法,与软件靠谱性相关的模型可分为四类:
第一类是软件靠谱性模型。
第二类是软件开释时间模型。用于确立软件何时能够开释,交托用户使用。软件靠谱性
是其考虑要素之一。
第三类是软件可用性模型。用于确立软件处于正常状态的时机大小,模型不单考虑软件
靠谱性,还要考虑软件保护性。
第四类是硬件/软件模型。用于确立混淆硬件-软件系统的靠谱性行为。
软件靠谱性模型往常依照以下四条准则之一进行分类,目的在于系统、深刻的理解软件
靠谱性模型。
(1)建模对象
5/7
....
建模对象指软件靠谱性数据与软件其余相关信息,比如与时间相关的信息(数据),与
时间没关的信息(数据)等。依照建模对象软件靠谱性模型总的来说分为两大类:静态模型
和动向模型。
模型建设可假定软件原有软件缺点为一确立的有限值,也可假定它是听从Poisson
散布的随机变量,甚至假定它为无穷量,这样可获取不一样种类的模型。
模型合用性
合用于测试阶段的模型称为增添模型,合用于确认阶段的模型称为确认模型。
数学方法
采纳概率方法的模型称为概率模型。采纳模糊方法的模型称为模糊模型。此外还有
Bayes模型与非Bayes模型等。
软件靠谱性模型的分类方法好多,这里我们采纳综合模型的假定、测试环境以与数理统计的分类方法,将模型大概分为:随机过程类模型和非随机过程类模型。详细分类如图:
马尔可夫过程二项模型(以JM模型为代表)
随机过
非齐次泊松过程模型(以GO模型为代表)
程模型
Musa履行时间模型
软件可
LV模型为代表)
靠性模
运用贝叶斯估计的模型(以

Seeding模型
鉴于输入域的模型(以
Nerson模型为代表)
非随机
非参数剖析
过程模
型型构造化模型()
其余方法
Cox比率风险函数模型表)
时间序列剖析理论
软件靠谱性模型的建模过程
为了知足软件靠谱性指标要求,需要对软件进行测试-靠谱性剖析-再测试-再剖析
改正的循环过程。软件靠谱性建模的目标是为了对软件中无效趋向和靠谱性进行有效展望,来判断软件能否达到公布要求。软件靠谱性模型的建模过程如以下列图
定义无效
6/7
....
生成测试用例
采集软件无效数据
对无效数据进行趋向剖析
选择一个适合的靠谱性
模型参数估计
获取拟合模型
N
拟合精度能否知足要求
Y
鉴于拟合的模型进行靠谱性展望
N
靠谱性能否知足要求
Y
停止测试
参照文件
勇软件靠谱性理论剖析与计算[D].东南大学学位论文,2004.
靖,王延斌软件靠谱性工程工业大学
光宇,[J].[M].清华大学,科学技术,1994
邹丰钟,海青,[J].大学学报
SoftwareProductEvaluation-QualityCharacteristicandGuidelinesforTheirUse[S].
2001.
7/7