软件可靠化预估模型及在电力体系之应用

软件可靠化预估模型及在电力体系之应用

ID:10464484

大小:56.00 KB

页数:4页

时间:2018-07-06

软件可靠化预估模型及在电力体系之应用_第1页
软件可靠化预估模型及在电力体系之应用_第2页
软件可靠化预估模型及在电力体系之应用_第3页
软件可靠化预估模型及在电力体系之应用_第4页
资源描述:

《软件可靠化预估模型及在电力体系之应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、软件可靠化预估模型及在电力体系之应用第一章绪论1.1课题背景与意义在计算机技术的不断革新中,硬件技术飞速发展,以微处理器为例,从最初的单核到如今普遍使用的双核、四核,英特尔的第一代的微处理器4004的频率只为108000赫兹,而现在普通的奔腾4处理器的最初速度就高达1.5千兆赫兹,甚至英特尔已发布了六核处理器。与硬件技术飞速发展形成鲜明对比的是,软件技术发展严重滞后,因软件出错所产生的影响,造成诸多不便(如家用电器失灵),甚至带来严重的经济损失和引起混乱(如银行系统瘫痪),更有甚者,会危及生命(如医疗系统失灵)[2]。曾有一

2、项研究显示,一个有经验的程序设计员在每1000行程序中至少会隐藏6处以上的错误,也就是出错率约为6%。如果按照这一比例来推断,一个典型400000行左右的商用软件会隐藏有约2400处错误。在Feton(1997)的研究中显示,软件的错误数目会随着程序代码的增加呈现几何级倍数增加,如图1-1所示[3]。而寻找程序中的错误是一件极其复杂且代价高昂的工作,一个成熟的软件企业至少需要花费12个小时来找到并修正一处软件错误,根据这个比例看,发现一个典型商用软件中隐藏的约2400处错误至少需要消耗28800个小时。因此,软件可靠性逐渐发

3、展成为软件工程的一个重要分支。1988年,软件可靠性工程一词登上了学术舞台,Musa.J.D认为软件可靠性工程是一门以减少基于软件的系统在运行中不满足用户要求的可能性为目标的应用科学[4],准确地评估和预测软件系统的可靠性能降低软件开发的总成本,提高软件系统的可靠性。1.2国内外研究现状1.2.1国外研究现状国外关于软件可靠性模型的研究起步较早,始于20世纪70年代。最早提出的模型是Shooman(M.L.Shooman提出)和J-M(Jelinski-Moranda)两个模型[5],这两个模型基本假设如下:若软件中初始错误

4、数为N(N大于或等于零);故障率正比于软件中剩余的错误个数;一个错误一旦被发现,就能立即排除且排错不引入新的错误。这些假设被随后的许多软件可靠性研究者所接受。1973年是国外软件可靠性发展的重要一年,这一年中,J.D.Musar提出了Musa执行时间模型[6],建立了一系列与软件可靠性有关的参数,如:测试压缩因子,CPU时间,关于软件系统的初始MTTF。P.B.Moranda创建了几何泊松模型,K.Trividi和M.L.Shooman提出了第一个马尔科夫模型,而N.F.chneideogenousPoissonProces

5、s,NHPP)模型[7]。实际中,以非齐次泊松方程为基础的软件可靠性成长模型(Softperfectebugging)。且在测试过程中,测试环境也可能会由于测试人员、测试方法、测试策略或测试资源等发生改变,从而对软件可靠性产生影响[8]。总的来说,在过去30多年中,国外提出的几十个软件可靠性预测模型中,可以分为两大类,即确定型(Deterministic)和概率型(Probabilistic)两大类。确定型的软件可靠性模型主要是一句程序中的运算单元(Operand)、算子(Operator)以及分支(Branch)等的数目,

6、来判断程序可能会产生的错误,如HalsteadSoftaticomplexityMmetirc(McCabe,1976)[10]两种模型。前者主要是借用计算程序中不同的运算单元及算子的数目,来构造一个可以表示软件大小、长度及复杂度的关系式,并且还能预测这个软件在出错之前,原来还有多少错误仍留在软件系统之中。后者主要通过计算Cyclomatic数目(即程序中的分支数目),来评估软件设计的质量,也可预测出软件在未出错之前的错误数。当然,这样的模型也可用来判断某个软件是否具有较好的程序架构以及未来在除错时的难易度。第二章软件可靠性

7、预测模型相关概念人类社会已经跨入了21世纪,计算机系统的发展也经历了四个不同的阶段,但是,我们仍然没有彻底摆脱软件危机的困扰,软件已经成为限制计算机系统发展的关键因素。为了更有效地开发与维护软件,软件工在20世纪60年代后期开始认真研究消除软件危机的方法,从而逐渐形成了计算机科学技术领域中的一门新兴的工程学科软件工程。而软件测试阶段在整个软件工程占有举足轻重的地位,其根本目标就是为消除错误从而保证软件的可靠性。本章就将着重讨论一下软件可靠性及其预测模型问题。2.1软件可靠性2.1.1软件可靠性定义对于软件可靠性有许多不同的定

8、义,其中多数人承认的一个定义是[14]:软件可靠性是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。在上述定义中包含的随机变量是时间间隔。显然,随着运行时间的增加,运行时遇到程序错误的概率也将增加,即可靠性随着给定的时间间隔的加大而减少。根据IEEE的规定,术语错误的含义是由

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。