软件质量保证与测试PPT课件第4章软件可靠性度量和测试

上传人:夏** 文档编号:567662256 上传时间:2024-07-22 格式:PPT 页数:36 大小:355.52KB
返回 下载 相关 举报
软件质量保证与测试PPT课件第4章软件可靠性度量和测试_第1页
第1页 / 共36页
软件质量保证与测试PPT课件第4章软件可靠性度量和测试_第2页
第2页 / 共36页
软件质量保证与测试PPT课件第4章软件可靠性度量和测试_第3页
第3页 / 共36页
软件质量保证与测试PPT课件第4章软件可靠性度量和测试_第4页
第4页 / 共36页
软件质量保证与测试PPT课件第4章软件可靠性度量和测试_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《软件质量保证与测试PPT课件第4章软件可靠性度量和测试》由会员分享,可在线阅读,更多相关《软件质量保证与测试PPT课件第4章软件可靠性度量和测试(36页珍藏版)》请在金锄头文库上搜索。

1、软件质量保证与测试软件质量保证与测试第第4章章 软件可靠性度量和软件可靠性度量和测试测试 1内容提要内容提要p4.1软件可靠性软件可靠性l4.1.1 软件可靠性发展史l4.1.2 软件可靠性的定义l4.1.3 软件可靠性的基本数学关系l4.1.4 软件可靠性与硬件可靠性的区别l4.1.5 影响软件可靠性的因素l4.1.6 软件的差错、故障和失效p4.2可靠性模型及其评价标准可靠性模型及其评价标准l4.2.1 软件可靠性模型l4.2.2 软件可靠性模型参数l4.2.3 软件可靠性模型及其应用l4.2.4 软件可靠性模型评价准则2内容提要内容提要p4.3软件可靠性测试和评估软件可靠性测试和评估l4

2、.3.1 软件可靠性评测l4.3.2软件可靠性测试的具体实施过程p4.4提高软件可靠性的方法和技术提高软件可靠性的方法和技术l4.4.1 建立以可靠性为核心的质量标准l4.4.2 选择开发方法l4.4.3 软件重用l4.4.4 使用开发管理工具l4.4.5 加强测试l4.4.6 容错设计p4.5 软件可靠性研究的主要问题软件可靠性研究的主要问题p4.6小结小结34.1软件可靠性软件可靠性p用软件系统规模越做越大越复杂,其可靠性越来越难保证。用软件系统规模越做越大越复杂,其可靠性越来越难保证。应用本身对系统运行的可靠性要求越来越高,在一些关键应用本身对系统运行的可靠性要求越来越高,在一些关键的应

3、用领域,如航空、航天等,其可靠性要求尤为重要,的应用领域,如航空、航天等,其可靠性要求尤为重要,在银行等服务性行业,其软件系统的可靠性也直接关系到在银行等服务性行业,其软件系统的可靠性也直接关系到自身的声誉和生存发展竞争能力。自身的声誉和生存发展竞争能力。p特别是软件可靠性比硬件可靠性更难保证,会严重影响整特别是软件可靠性比硬件可靠性更难保证,会严重影响整个系统的可靠性。个系统的可靠性。p在许多项目开发过程中,对可靠性没有提出明确的要求,在许多项目开发过程中,对可靠性没有提出明确的要求,开发商(部门)也不在可靠性方面花更多的精力,往往只开发商(部门)也不在可靠性方面花更多的精力,往往只注重速度

4、、结果的正确性和用户界面的友好性等,而忽略注重速度、结果的正确性和用户界面的友好性等,而忽略了可靠性。了可靠性。p在投入使用后才发现大量可靠性问题,增加了维护困难和在投入使用后才发现大量可靠性问题,增加了维护困难和工作量,严重时只有束之高阁,无法投入实际使用。工作量,严重时只有束之高阁,无法投入实际使用。44.1.1 软件可靠性发展史软件可靠性发展史p软件工程的发展大体上可分为下列四个阶软件工程的发展大体上可分为下列四个阶段。段。l1950年1958年l1959年1967年l1968年1978年l1978年至今54.1.2 软件可靠性的定义软件可靠性的定义p1983年美国年美国IEEE计算机学

5、会对计算机学会对“软件可软件可靠性靠性”一词正式作出了如下的定义:一词正式作出了如下的定义:l在规定的条件下,在规定的时间内,软件不引起系统失效的概率,该概率是系统输入和系统使用的函数,也是软件中存在的错误的函数;系统输入将确定是否会遇到已存在的错误(如果错误存在的话);l在规定的时间周期内,在所述条件下程序执行所要求的功能的能力。6输入空间示意图输入空间示意图/离散型运行剖面离散型运行剖面图图/连续型运行剖面图连续型运行剖面图74.1.3 软件可靠性的基本数学关系软件可靠性的基本数学关系 84.1.4 软件可靠性与硬件可靠性的软件可靠性与硬件可靠性的区别区别 p软件和硬件在可靠性特征上的差异

6、,主要有以下几点软件和硬件在可靠性特征上的差异,主要有以下几点:l最明显的是硬件有老化损耗现象,硬件失效是物理故障,是器件物理变化的必然结果,有浴盆曲线现象;软件不发生变化,没有磨损现象,有陈旧落后的问题,没有浴盆曲线现象。l硬件可靠性的决定因素是时间,受设计、生产、运用的所有过程影响,软件可靠性的决定因素是与输入数据有关的软件差错,是输入数据和程序内部状态的函数,更多地决定于人。l硬件的纠错维护可通过修复或更换失效的系统重新恢复功能,软件只有通过重设计。l对硬件可采用预防性维护技术预防故障,采用断开失效部件的办法诊断故障,而软件则不能采用这些技术。l事先估计可靠性测试和可靠性的逐步增长等技术

7、对软件和硬件有不同的意义。l为提高硬件可靠性可采用冗余技术,而同一软件的冗余不能提高可靠性。l硬件可靠性检验方法已建立,并已标准化且有一整套完整的理论,而软件可靠性验证方法仍未建立,更没有完整的理论体系。l硬件可靠性已有成熟的产品市场,而软件产品市场还很新。l软件错误是永恒的,可重现的,而一些瞬间的硬件错误可能会被误认为是软件错误。94.1.5 影响软件可靠性的因素影响软件可靠性的因素p软件差错是软件开发各阶段潜入的人为错误:软件差错是软件开发各阶段潜入的人为错误:l需求分析定义错误。如用户提出的需求不完整,用户需求的变更未及时消化,软件开发者和用户对需求的理解不同等等。l设计错误。如处理的结

8、构和算法错误,缺乏对特殊情况和错误处理的考虑等。l编码错误。如语法错误,变量初始化错误等。l测试错误。如数据准备错误,测试用例错误等。l文档错误。如文档不齐全,文档相关内容不一致,文档版本不一致,缺乏完整性等。104.1.6 软件的差错、故障和失效软件的差错、故障和失效p异常异常。偏离期望的状态(或期望值)的任何情形都可称为异常。偏离期望的状态(或期望值)的任何情形都可称为异常。p缺陷缺陷。不符合使用要求或与技术规格说明不一致的任何状态常称。不符合使用要求或与技术规格说明不一致的任何状态常称为缺陷。为缺陷。p差错差错。从一般意义上说,差错有下面几个方面不同的含义:。从一般意义上说,差错有下面几

9、个方面不同的含义:l计算的、观测的或测量的值与真实的、规定的或理论上正确的值或条件之间的差别。l一个不正确的步骤、过程或数据定义。l一个不正确的结果。l一次产生不正确的结果的人的活动。p故障故障。在一个计算机程序中出现的不正确的步骤、过程或数据定。在一个计算机程序中出现的不正确的步骤、过程或数据定义常称为故障。上述义常称为故障。上述“差错差错”中的第二项属于故障。中的第二项属于故障。p失效失效。一个程序运行的外部结果与软件产品的要求出现不一致时。一个程序运行的外部结果与软件产品的要求出现不一致时称为失效。软件失效证明了软件中存在着故障。上述称为失效。软件失效证明了软件中存在着故障。上述“差错差

10、错”中中的第三项属于失效。的第三项属于失效。11可以更清楚地说明失效与故障之可以更清楚地说明失效与故障之间的区别间的区别 失失 效效故故 障障面向用户面向开发者软件运行偏离用户需求程序执行输出错误结果可根据对用户应用的严重性等级分类可根据定位和排除故障的难度分类如,3次失效/1000 CPU小时如,6个故障/1KLOC12软件差错、已纠正差错、故障及软件差错、已纠正差错、故障及失效的关系失效的关系 失效缺陷故障已纠正缺陷134.2可靠性模型及其评价标准可靠性模型及其评价标准p4.2.1 软件可靠性模型软件可靠性模型l为了对软件可靠性进行评估,除了进行软件测试之外,我们还需要借助软件可靠性模型的

11、帮助。软件可靠性模型(Software Reliability Model)是指为预计或估算软件的可靠性所建立的可靠性框图和数学模型。l建立可靠性模型可以将复杂系统的可靠性逐级分解为简单系统的可靠性,以便于定量预计、分配、估算和评价复杂系统的可靠性。14历史背景历史背景p软件可靠性建模是围绕着软件可靠性建模是围绕着20世纪世纪70年代的先驱年代的先驱工作者工作者Telinski、Moranda、Shooman和和Coutinbo等人的工作展开的。等人的工作展开的。p其基本方法是用过去的失效数据建立可靠性模型,其基本方法是用过去的失效数据建立可靠性模型,然后用所建立起来的模型估计现在和预测将来的

12、然后用所建立起来的模型估计现在和预测将来的软件可靠性。软件可靠性。p该方法使用的先验条件是给定过去某个时期内的该方法使用的先验条件是给定过去某个时期内的软件失效次数或软件的失效时间间隔。软件失效次数或软件的失效时间间隔。p因此,根据模型使用的这两种数据我们将模型分因此,根据模型使用的这两种数据我们将模型分成如下两类:成如下两类:l给定时间间隔内的失效数模型。l两相临失效间的时间间隔模型。15好模型的一般标准好模型的一般标准 p建立软件可靠性模型的目的是估计软件可靠性,提供开发状态、建立软件可靠性模型的目的是估计软件可靠性,提供开发状态、测试状态以及计划日程状态的参考定量数据,监视可靠性性能及测

13、试状态以及计划日程状态的参考定量数据,监视可靠性性能及其变化。其变化。p一个好的模型必须有适合具体项目开发过程的正确的假设。如果一个好的模型必须有适合具体项目开发过程的正确的假设。如果不知道哪个模型最适合当前项目,那么,一个聪明的办法就是在不知道哪个模型最适合当前项目,那么,一个聪明的办法就是在一个项目上执行一个以上的模型并且综合分析所得到的结果。一个项目上执行一个以上的模型并且综合分析所得到的结果。p在软件可靠性模型先驱者的工作成果的基础上,经过更多软件可在软件可靠性模型先驱者的工作成果的基础上,经过更多软件可靠性工作者近靠性工作者近40年的努力,软件可靠性模型到目前为止已经出年的努力,软件

14、可靠性模型到目前为止已经出现了很多种,最为常见且比较具有代表意义的模型不下现了很多种,最为常见且比较具有代表意义的模型不下20个。个。下面简单列举其中的几个:下面简单列举其中的几个:lMusa模型,包括基本模型和对数模型;lShooman模型;lGoel-Okumoto模型;l测试成功模型;l威布尔模型。16模型分类模型分类 pMusa和和Okumoto根据软件可靠性模型的五种根据软件可靠性模型的五种特征,对模型进行了下述分类:特征,对模型进行了下述分类:l时间域(Time Domain):按时钟时间、执行时间(或时间)分类;l类别(Category):根据软件在无限的时间内运行时可能经历的故

15、障数是有限的还是无限的进行分类;l型式(Type):根据软件在运行时间t时的失效数分布来分类。其中主要考虑泊松分布和二项式分布。l种类(Class):根据软件发生故障的故障密度对时间的函数形式分类(仅对有限故障类)。l族(Family):根据软件的故障密度对它的期望故障数的函数形式分类(仅对无限故障类)。17可靠性度量可靠性度量 p常见的软件差错包括非法转移、误转移、死循环、常见的软件差错包括非法转移、误转移、死循环、空间溢出、数据执行和无理数据等。在软件可靠空间溢出、数据执行和无理数据等。在软件可靠性分析和设计中,常常利用故障模型来对不同的性分析和设计中,常常利用故障模型来对不同的故障表现进

16、行抽象。故障表现进行抽象。p故障模型可以建立在系统的各个级别上。建立的故障模型可以建立在系统的各个级别上。建立的级别越低,进行故障处理的代价就越低,但模型级别越低,进行故障处理的代价就越低,但模型所覆盖的故障也越少。所覆盖的故障也越少。p常用的故障模型有基于逻辑级、基于数据结构级常用的故障模型有基于逻辑级、基于数据结构级和基于系统级的故障模型。和基于系统级的故障模型。 18模型建立 p软件可靠性模型的建立是通过对所选模型关联参软件可靠性模型的建立是通过对所选模型关联参数的统计来确定失效情况、可靠性目标和实现这数的统计来确定失效情况、可靠性目标和实现这一目标的时间,并利用可靠性模型来制定测试策一

17、目标的时间,并利用可靠性模型来制定测试策略,同时确定软件交付的预期可靠性。略,同时确定软件交付的预期可靠性。p此外,它对经费估算、资源计划、进度安排和软此外,它对经费估算、资源计划、进度安排和软件维护等也很重要。软件可靠性建模可归结为模件维护等也很重要。软件可靠性建模可归结为模型的比较与选择、参数选择及模型应用。型的比较与选择、参数选择及模型应用。p模型参数取决于软件性能、过程特性、修改活动模型参数取决于软件性能、过程特性、修改活动和程序变化等。由于软件本身的特性,以及缺乏和程序变化等。由于软件本身的特性,以及缺乏可靠性数据,因此建立完全满足这些因素的可靠可靠性数据,因此建立完全满足这些因素的

18、可靠性模型非常困难,且难以验证。性模型非常困难,且难以验证。19模型统一模型统一 p从现有模型来预计软件可靠性,往往存在偏差。从现有模型来预计软件可靠性,往往存在偏差。当给定或已知数据的基本分布时,极大似然估计当给定或已知数据的基本分布时,极大似然估计是模型参数估计最基本的方法,它显然有利于对是模型参数估计最基本的方法,它显然有利于对预计的改进。最小二乘法能很好地代替极大似然预计的改进。最小二乘法能很好地代替极大似然估计,估计,p它通过故障强度拟合来估计模型参数。对中小样它通过故障强度拟合来估计模型参数。对中小样本的情况,它具有较小的偏差和较快的收敛性。本的情况,它具有较小的偏差和较快的收敛性

19、。pBayes分析方法提供了一种把先验知识综合到估分析方法提供了一种把先验知识综合到估计过程中的方法,为把不同数据源综合起来提供计过程中的方法,为把不同数据源综合起来提供了有效的手段,但其分析和计算极为复杂。了有效的手段,但其分析和计算极为复杂。204.2.2 软件可靠性模型参数软件可靠性模型参数 p正如前面所说,当今存在着由很多软件可正如前面所说,当今存在着由很多软件可靠性工作者开发的很多软件可靠性模型。靠性工作者开发的很多软件可靠性模型。p这些模型使用了由各个软件可靠性工作者这些模型使用了由各个软件可靠性工作者定义的各种各样的参数。定义的各种各样的参数。p因此,在本章讨论中,为了使变量名称

20、一因此,在本章讨论中,为了使变量名称一致,也为了书写和读者查阅方便,我们对致,也为了书写和读者查阅方便,我们对变量名称统一定义如下:变量名称统一定义如下:214.2.3 软件可靠性模型及其应用软件可靠性模型及其应用 pMusa模型模型p对数模型对数模型pGoel-Okumoto模型模型为达到目标还需检测出的缺陷数为达到故障率目标或MTTF目标必须要检出的累计缺陷数测试时间当前已检测出的累积缺陷数为达到目标需要的时间已检出的累计缺陷数22以上软件可靠性模型的适用条件以上软件可靠性模型的适用条件和阶段和阶段 模型模型假假设设适用适用阶阶段段难难易易度度Mussa基本模型优先固有缺陷数常数故障率指数

21、分布集成测试后EMussa对数模型无限固有缺陷数对数分布故障率随时间变化单元测试到系统测试EGoel-Ukumoto非时齐缺陷分布缺陷可能因修复而产生指数、Weibull分布集成测试后M234.2.4 软件可靠性模型评价准则软件可靠性模型评价准则 p模型拟合性模型拟合性p模型预计有效性模型预计有效性p模型偏差模型偏差p模型偏差趋势模型偏差趋势p模型噪声模型噪声单位斜率线图4-7 -结构图244.3软件可靠性测试和评估软件可靠性测试和评估p软件可靠性评价是软件可靠性工作的重要组成部分。软件软件可靠性评价是软件可靠性工作的重要组成部分。软件可靠性评测是主要的软件可靠性评价技术,它包括测试与可靠性评

22、测是主要的软件可靠性评价技术,它包括测试与评价两个方面的内容,既适用于软件开发过程,也可针对评价两个方面的内容,既适用于软件开发过程,也可针对最终软件产品。最终软件产品。p在软件开发过程中使用软件可靠性评测技术,除了可以更在软件开发过程中使用软件可靠性评测技术,除了可以更快速地找出对可靠性影响最大的错误,还可以结合软件可快速地找出对可靠性影响最大的错误,还可以结合软件可靠性增长模型,估计软件当前的可靠性,以确认是否可以靠性增长模型,估计软件当前的可靠性,以确认是否可以终止测试和发布软件,同时还可以预计软件要达到相应的终止测试和发布软件,同时还可以预计软件要达到相应的可靠性水平所需要的时间和测试

23、量,论证在给定日期提交可靠性水平所需要的时间和测试量,论证在给定日期提交软件可能给可靠性带来的影响。软件可能给可靠性带来的影响。p对于最终软件产品,软件可靠性评测是一种可行的评价技对于最终软件产品,软件可靠性评测是一种可行的评价技术,可以对最终产品进行可靠性验证测试,确认软件的执术,可以对最终产品进行可靠性验证测试,确认软件的执行与需求的一致性,确定最终软件产品所达到的可靠性水行与需求的一致性,确定最终软件产品所达到的可靠性水平。平。254.3.1 软件可靠性评测软件可靠性评测p本章所述的软件可靠性评测是指运用统计技术对软件可靠本章所述的软件可靠性评测是指运用统计技术对软件可靠性测试和系统运行

24、期间采集的软件失效数据进行处理并评性测试和系统运行期间采集的软件失效数据进行处理并评估软件可靠性的过程。估软件可靠性的过程。l软件可靠性评测的主要目的是测量和验证软件的可靠性,当然实施软件可靠性评测也是对软件测试过程的一种完善,有助于软件产品本身的可靠性增长。p软件测试者可以使用很多方法进行软件测试,如按行为或软件测试者可以使用很多方法进行软件测试,如按行为或结构来划分输入域的划分测试,纯粹随机选择输入的随机结构来划分输入域的划分测试,纯粹随机选择输入的随机测试,基于功能、路径、数据流或控制流的覆盖测试,等测试,基于功能、路径、数据流或控制流的覆盖测试,等等。等。l对于给定的软件,每种测试方法

25、都局限于暴露一定数量和一些类别的错误。p通过这些测试能够查找、定位、改正和消除某些错误,实通过这些测试能够查找、定位、改正和消除某些错误,实现一定意义上的软件可靠性增长。现一定意义上的软件可靠性增长。l但是,由于它们都是面向错误的测试,测试所得到的结果数据不宜用于软件可靠性评估。264.3.2软件可靠性测试的具体实施软件可靠性测试的具体实施过程过程p软件可靠性测试过程模型软件可靠性测试过程模型p测试目的测试目的p测试准备和执行测试准备和执行软件可靠性目标开发系统业务剖面准备测试软件可靠性定量评估软件可靠性模型执行测试收集、整理故障数据对比需求与构造设计和实现集成测试和确认测试接受或拒绝274.

26、4提高软件可靠性的方法和技术提高软件可靠性的方法和技术 p4.4.1 建立以可靠性为核心的质量标准建立以可靠性为核心的质量标准l在软件项目规划和需求分析阶段就要建立以可靠性为核心的质量标准。这个质量标准包括实现的功能、可靠性、可维护性、可移植性、安全性、吞吐率等等,虽然还没有一个衡量软件质量的完整体系,但还是可以通过一定的指标来指定标准基线。l软件质量从构成因素上可分为产品质量和过程质量。还可把质量分为动态质量和静态质量。还可把质量分为动态质量和静态质量。静态质量是通过审查各开发过程的成果来确认的质量,包括静态质量是通过审查各开发过程的成果来确认的质量,包括模块化程度、简易程度、完整程度等内容

27、。动态质量是考察模块化程度、简易程度、完整程度等内容。动态质量是考察运行状况来确认的质量,包括平均故障间隔时间(运行状况来确认的质量,包括平均故障间隔时间(Mean Time Between Failures,MTBF)、软件故障修复时)、软件故障修复时间(间(Mean Time To Repair Fault,MTRF)、可用)、可用资资源源的利用率。在许多实际工程中,人们一般比较重视动态质的利用率。在许多实际工程中,人们一般比较重视动态质量而忽视静态质量。量而忽视静态质量。28确定划分的各开发过程的质量度量 p需求分析质量度量需求分析质量度量p设计结果质量度量设计结果质量度量p测试结果质量

28、度量测试结果质量度量p验收结果质量度量验收结果质量度量294.4.2 选择开发方法选择开发方法p软件开发方法对软件的可靠性也有重要影响。软件开发方法对软件的可靠性也有重要影响。p目前的软件开发方法主要有目前的软件开发方法主要有Parnas方法、方法、Yourdon方法、面向数据结构的方法、面向数据结构的Jackson方法方法和和Warnier方法、方法、PSL/PSA方法、原型化方方法、原型化方法、面向对象方法、可视化方法、法、面向对象方法、可视化方法、ICASE方法、方法、瑞理开发方法等,其他还有瑞理开发方法等,其他还有BSP方法、方法、CSF方法方法等。这里特别要提一下的是等。这里特别要提

29、一下的是Parnas方法。方法。304.4.3 软件重用软件重用p软件重用不仅仅是指软件本身,也可以是软件重用不仅仅是指软件本身,也可以是软件的开发思想方法、文档,甚至环境、软件的开发思想方法、文档,甚至环境、数据等,包括三个方面内容的重用:数据等,包括三个方面内容的重用:l开发过程重用,指开发规范、各种开发方法、工具和标准等。l软件构件重用,指文档、程序和数据等。l知识重用,如相关领域专业知识的重用。314.4.4 使用开发管理工具使用开发管理工具 p开发一个大的软件系统,离不开开发管理工具,作为一个开发一个大的软件系统,离不开开发管理工具,作为一个项目管理员,仅仅靠人来管理是不够的,需要有

30、开发管理项目管理员,仅仅靠人来管理是不够的,需要有开发管理工具来辅助解决开发过程中遇到的各种各样的问题,以提工具来辅助解决开发过程中遇到的各种各样的问题,以提高开发效率和产品质量。高开发效率和产品质量。p如如Intersolv公司的公司的PVCS软件开发管理工具,在美国市软件开发管理工具,在美国市场占有率已超过场占有率已超过70,使用,使用PVCS可以带来不少好处:可以带来不少好处:l规范开发过程,缩短开发周期,减少开发成本,降低项目投资风险;自动创造完整的文档,便于软件维护;管理软件多重版本;管理和追踪开发过程中危及软件质量和影响开发周期的缺陷和变化,便于软件重用,避免数据丢失,也便于开发人

31、员的交流,对提高软件可靠性,保证质量有很大作用。324.4.5 加强测试加强测试p测试规范包括以下三类文档:测试规范包括以下三类文档:l测试设计规范:详细描述测试方法,规定该设计及其有关测试所包括的特性。还应规定完成测试所需的测试用例和测试规程,规定特性的通过/失败判定准则。l测试用例规范:列出用于输入的具体值及预期输出结果。规定在使用具体测试用例时对测试规程的各种限制。l测试规程规范:规定对于运行该系统和执行指定的测试用例来实现有关测试所要求的所有步骤。p测试的方法多种多样:测试的方法多种多样:l走查(Walk-through),即手工执行,由不同的程序员(非该模块设计者)读代码,并进行评论

32、。l机器测试,对给定的输入不会产生不合逻辑的输出。l程序证明或交替程序表示。l模拟测试,模拟硬件、I/O设备等。l设计审查,关于设计的所有各方面的小组讨论会,利用所获得的信息,找出缺陷及违反标准的地方等。334.4.6 容错设计容错设计p提高可靠性的技术一般可以分为两类,一类是避免故障,提高可靠性的技术一般可以分为两类,一类是避免故障,在开发过程中,尽可能不让差错和缺陷潜入软件,这类常在开发过程中,尽可能不让差错和缺陷潜入软件,这类常用的技术有:用的技术有:l算法模型化,把可以保证正确实现需求规格的算法模型化。l模拟模型化,为了保证在确定的资源条件下的预测性能的发挥,使软件运行时间、内存使用量

33、及控制执行模型化。l可靠性模型,使用可靠性模型,从差错发生频度出发,预测可靠性。l正确性证明,使用形式符号及数学归纳法等证明算法的正确性。l软件危险分析与故障树分析:从设计或编码的结构出发,追踪软件开发过程中潜入系统缺陷的原因。l分布接口需求规格说明:在设计的各阶段使用形式的接口需求规格说明,以便验证需求的分布接口实现可能性与完备性。344.5 软件可靠性研究的主要问题软件可靠性研究的主要问题p观点、方法和工具问题观点、方法和工具问题p软件可靠性模型问题软件可靠性模型问题p软件可靠性模型的应用问题软件可靠性模型的应用问题p数据问题数据问题p件测试用例的自动生成问题件测试用例的自动生成问题p硬硬-软件混合系统可靠性问题软件混合系统可靠性问题354.6小结小结p软件可靠性是指在规定的条件下和规定的软件可靠性是指在规定的条件下和规定的时间内,软件不引起系统故障的能力。时间内,软件不引起系统故障的能力。p软件可靠性不但与软件中存在的缺陷有关,软件可靠性不但与软件中存在的缺陷有关,而且与系统输入和系统使用有关。而且与系统输入和系统使用有关。p软件可靠性是软件质量特性中重要的固有软件可靠性是软件质量特性中重要的固有特性和关键因素。特性和关键因素。p软件可靠性反映了用户的质量观点。软件可靠性反映了用户的质量观点。36

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号