软件可靠性的评价准则
软件部分可靠性评分标准

软件部分可靠性评分标准1. 引言本文档旨在为评估软件部分的可靠性提供评分标准。
可靠性评分的核心目标是衡量软件部分的稳定性、健壮性和容错性,以确保软件在各种条件下均能正常工作。
2. 可靠性评分指标以下是软件部分可靠性评分的关键指标:2.1 错误处理- 错误处理机制:软件部分是否具备完善的错误处理机制,能够正确捕获和处理各类错误,避免系统崩溃和数据损坏。
错误处理机制:软件部分是否具备完善的错误处理机制,能够正确捕获和处理各类错误,避免系统崩溃和数据损坏。
- 异常处理:软件部分是否能够正确处理异常情况,并提供恰当的反馈和补救措施。
异常处理:软件部分是否能够正确处理异常情况,并提供恰当的反馈和补救措施。
- 错误日志:软件部分是否能够记录错误信息并生成相应的错误日志,以便于后续排查和修复。
错误日志:软件部分是否能够记录错误信息并生成相应的错误日志,以便于后续排查和修复。
2.2 容错性- 输入验证:软件部分是否能够正确验证用户输入的数据,避免无效数据导致的系统故障。
输入验证:软件部分是否能够正确验证用户输入的数据,避免无效数据导致的系统故障。
- 资源管理:软件部分是否能够合理管理系统资源,避免资源泄漏和过度占用导致系统异常。
资源管理:软件部分是否能够合理管理系统资源,避免资源泄漏和过度占用导致系统异常。
2.3 可恢复性- 备份和恢复:软件部分是否能够支持数据备份和恢复功能,保证系统数据的安全和完整性。
备份和恢复:软件部分是否能够支持数据备份和恢复功能,保证系统数据的安全和完整性。
- 灾难恢复:软件部分是否能够应对意外灾难事件,如断电或系统故障等,并能够迅速恢复正常工作状态。
灾难恢复:软件部分是否能够应对意外灾难事件,如断电或系统故障等,并能够迅速恢复正常工作状态。
2.4 性能稳定性- 响应时间:软件部分的响应时间是否稳定,并在合理范围内满足用户需求。
响应时间:软件部分的响应时间是否稳定,并在合理范围内满足用户需求。
软件可靠性评估

测试过程中检测到的错误,都被排除,每次排错只排除一个 错误,排错时间可以忽略不计,在排错过程中不引入新的错 误;
程序的失效率在每个失效间隔时间内是常数,其数值正比于 程序中残留的错误数,在第i个测试区间,其失效率函数为
事实上,现有大多数软件可靠性模型要么可认为是其变形或 扩展,要么与其密切相关。该模型对软件可靠性定量分析技 术的建立和发展做出了重要的贡献,是软件可靠性研究领域 的第一个里程碑。
10
Jelinski-Moranda模型-假设与数据要求
假设与数据要求
程序中的固有错误数 N0 是一个未知的常数;
MTBFˆi
1 0.00685(32 i
1)
i=27时,MTBF=24.3309(日)
22
应用案例结果分析
程序在使用和再测试中发现的错误数共有34个,假定 程序的排错工作已经很彻底,可认为程序的固有错误 总数为34个,估计值32略低于实际值。
,
23
非指数分布的NHPP模型 ——Musa-Okumoto(M-O)对数泊松执行时间模型
24
Musa-Okumoto(M-O)模型-概述
模型概述
对数泊松模型是另一个被广泛使用的模型,它是由Musa和 Okumoto提出的。
该模型是失效强度函数随失效发生而指数递减的非均匀泊松 过程。
指数率递减反映了以下观点:早期发现的缺陷比晚期发现的 缺陷对失效强度函数的减小作用大。
之所以称之为对数泊松模型是因为期望的失效数是时间的对 数函数。
参数估计方法:模型输出中的某些值是无法直接得到 的,最常见的比如残留缺陷数,这就要求模型给出一 定的方法估计参数的值。
软件可靠性与安全性分析、评估方法及建议

软件可靠性与安全性分析、评估方法及建议一、背景介绍随着产品技术的发展及数字化技术的应用,软件在产品中所占的比重越来越大,其规模和复杂性急剧增加,对产品的可靠性、安全性工作提出了严峻的考验。
为保证软件可靠性,需要对软件进行可靠性测试和评估工作,从而尽早发现并改进软件中影响产品质量的缺陷,有效提高软件可靠性。
为保障软件安全性,需要对软件进行安全性分析与验证工作。
目前,随着GJB Z 161-2012 军用软件可靠性评估指南、GJB 900A-2012 装备安全性工作通用要求、GJB 102A-2012军用软件安全性设计指南、ARP4761与民用机载系统安全性评估流程及DO-178B/C机载系统合格审定过程中的软件考虑等标准的颁布实施,以及空军航定〔2012〕4号《航空军用软件定型测评进入条件评估准则》中明确提出关键软件在进入定型测评前必须具备《软件失效风险分析报告》;空军装型〔2010〕131号《空军重点型号软件工程化要求》中也明确提出在软件研制阶段中,必须要开展软件安全性分析与验证工作等规定。
美国在70年代研制F/A-18飞机期间首次引入软件安全性技术。
在研制F-22和F-35飞机时,则明确要求按照MIL-STD-882和DO-178B开展机载软件安全性工作。
在民机领域,波音和空客均严格按照ARP-4761及DO-178B/C标准开展了软件安全性分析与验证,并作为适航审定的核心要素。
在高铁、核工业、汽车、医疗等领域,同样要求按照IEC 61508、EN50128、IEC60880、IEC 61513、ISO 14971等标准,对构建高安全性软件做出严格规定。
从上述可以看出,当前世界各国对于软件产品的可靠性评估、安全性分析验证工作都提高了一个新的高度,都提出了具体的要求。
二、何为软件可靠性评估根据国家标准GB11457,软件可靠性评估或软件可靠性评价是指“确定现有系统或系统部件可靠性所达到的水平的过程”。
软件系统可靠性评分标准

软件系统可靠性评分标准1. 引言软件系统可靠性评分旨在对软件系统的可靠性程度进行客观和综合的评估。
可靠性评分标准的制定对于软件系统的设计、开发和维护具有重要意义。
本文将介绍软件系统可靠性评分标准的基本原则和核心要素。
2. 可靠性评分原则软件系统可靠性评分应遵循以下原则:- 独立性原则:评分应该由独立的评估者进行,不受外部干扰和影响。
独立性原则:评分应该由独立的评估者进行,不受外部干扰和影响。
- 客观性原则:评分应基于客观、可量化的指标和数据。
客观性原则:评分应基于客观、可量化的指标和数据。
- 简洁性原则:评分要求简明扼要,避免复杂的法律纠纷和争议。
简洁性原则:评分要求简明扼要,避免复杂的法律纠纷和争议。
3. 可靠性评分要素软件系统可靠性评分的要素包括以下几个方面:- 功能稳定性:软件系统的功能是否稳定,能否正常运行以及在各种条件下的可靠程度。
功能稳定性:软件系统的功能是否稳定,能否正常运行以及在各种条件下的可靠程度。
- 性能可靠性:软件系统在各种负载和环境下的性能表现,包括响应速度、吞吐量等指标。
性能可靠性:软件系统在各种负载和环境下的性能表现,包括响应速度、吞吐量等指标。
- 容错能力:软件系统对于错误和异常情况的处理能力,是否具备恢复和备份机制。
容错能力:软件系统对于错误和异常情况的处理能力,是否具备恢复和备份机制。
- 安全性:软件系统对于数据的保护和访问控制的可靠性。
安全性:软件系统对于数据的保护和访问控制的可靠性。
- 用户体验:软件系统是否易用、界面友好,能否满足用户需求并提供良好的用户体验。
用户体验:软件系统是否易用、界面友好,能否满足用户需求并提供良好的用户体验。
4. 可靠性评分等级为了对软件系统的可靠性进行综合评价,可以结合以上要素,给出不同等级的可靠性评分。
以下是一个可靠性评分等级的示例:- 优秀:软件系统在各个方面表现出色,功能稳定、性能卓越、容错能力强、安全性高、用户体验良好。
程序设计员实操考核中的软件可靠性评估要求

程序设计员实操考核中的软件可靠性评估要求引言在今天的软件行业中,软件可靠性评估是一个至关重要的方面。
程序设计员实操考核中对软件可靠性的评估要求,旨在确保软件在不同环境中的稳定性和可预测性。
本文将介绍程序设计员实操考核中的软件可靠性评估要求,包括评估范围、评估指标和评估方法等。
评估范围软件可靠性评估的范围通常包括以下几个方面:功能可靠性评估功能可靠性评估是指对软件功能的稳定性进行评估。
在程序设计员的实操考核中,需要对被评估的软件进行功能测试,确保软件的功能可以按照要求正常运行。
性能可靠性评估性能可靠性评估是指对软件性能的可靠性进行评估。
在程序设计员的实操考核中,需要对被评估的软件进行性能测试,确保软件在各种负载情况下的性能表现符合要求。
安全可靠性评估安全可靠性评估是指对软件安全性的可靠性进行评估。
在程序设计员的实操考核中,需要对被评估的软件进行安全测试,并确保软件在面对各种攻击和威胁时能够保持稳定和安全。
可维护性评估可维护性评估是指对软件可维护性的评估。
在程序设计员的实操考核中,需要对被评估的软件进行代码质量、可读性和可维护性等方面的评估,确保软件在今后的维护和更新过程中能够持续保持高质量。
评估指标在程序设计员实操考核中的软件可靠性评估中,需要使用一系列评估指标来对软件进行评估。
以下是几个常用的评估指标:失效率失效率是指在一定时间内软件发生故障或失效的概率。
失效率越低,软件的可靠性越高。
在程序设计员实操考核中,需要评估被评估软件的失效率,以确定其可靠性水平。
平均修复时间平均修复时间是指软件在出现故障后,从发现问题到修复问题所需要的平均时间。
平均修复时间越短,意味着软件的稳定性和可靠性越高。
在程序设计员实操考核中,需要评估被评估软件的平均修复时间。
可重复性可重复性是指在相同的环境和条件下,软件是否能够多次出现相同的结果。
在程序设计员实操考核中,需要评估被评估软件的可重复性,以确定软件的稳定性和可预测性。
评价软件质量的标准

评价软件质量的标准在当今信息化社会,软件已经成为人们生活和工作中不可或缺的一部分。
随着软件应用领域的不断扩大和软件功能的不断增强,软件质量成为了人们关注的焦点之一。
那么,如何评价软件的质量呢?下面将从几个方面来探讨评价软件质量的标准。
首先,稳定性是评价软件质量的重要标准之一。
稳定性指的是软件在运行过程中不会出现崩溃、死机等问题,能够长时间稳定运行。
一个稳定的软件能够有效地提高用户体验,保障用户的数据安全,提高工作效率。
因此,稳定性是评价软件质量的重要指标之一。
其次,安全性也是评价软件质量的重要标准之一。
随着网络的普及和信息的数字化,软件的安全性问题越来越受到人们的关注。
一个安全的软件能够有效地保护用户的隐私信息,防止恶意攻击和病毒侵入,确保数据的完整性和机密性。
因此,安全性是评价软件质量的重要指标之一。
再次,易用性也是评价软件质量的重要标准之一。
易用性指的是软件的界面设计简洁明了,操作简单方便,用户能够快速上手并且愉快地使用软件。
一个易用的软件能够提高用户的满意度,降低用户的学习成本,提高工作效率。
因此,易用性是评价软件质量的重要指标之一。
此外,性能也是评价软件质量的重要标准之一。
性能指的是软件在运行过程中的响应速度、处理能力等方面的表现。
一个高性能的软件能够快速响应用户的操作,高效地处理大量数据,提高工作效率。
因此,性能是评价软件质量的重要指标之一。
最后,兼容性也是评价软件质量的重要标准之一。
兼容性指的是软件能够在不同的操作系统、不同的硬件平台上正常运行,与其他软件能够良好地配合。
一个兼容性好的软件能够更好地满足用户的多样化需求,提高软件的适用范围。
因此,兼容性是评价软件质量的重要指标之一。
综上所述,稳定性、安全性、易用性、性能和兼容性是评价软件质量的重要标准。
一个优秀的软件应当在这几个方面都表现出色,才能够得到用户的认可和好评。
希望软件开发者在开发软件的过程中,能够充分重视这几个方面的指标,不断提升软件的质量,为用户提供更好的软件产品。
软件工程与软件可用性标准与评估

软件工程与软件可用性标准与评估软件工程是一个广泛的领域,它旨在应用工程原理和方法来开发和维护软件系统。
然而,软件工程的成功不仅取决于系统的功能和性能,还包括软件的可用性。
软件可用性是指用户能够轻松地学习、使用和理解软件系统的程度。
本文将探讨软件工程与软件可用性标准与评估之间的关系,并介绍一些常用的标准和评估方法。
一、软件可用性的定义和重要性软件可用性是指软件系统对最终用户的易用性和满意度。
一个可用性良好的软件系统应该具有以下特点:1. 易学性:用户能够快速学习系统的功能和操作方式;2. 效率:用户能够高效地完成任务;3. 易记性:用户能够轻松地记住系统的功能和操作方式;4. 错误防御:系统应该设计能够尽可能避免用户的操作错误;5. 用户满意度:用户对系统的整体满意度。
软件可用性对于用户体验和软件系统的成功至关重要。
一款易用的软件系统可以提高用户满意度和用户黏性,减少培训成本和用户的操作错误。
因此,软件工程师应该将软件可用性纳入设计和开发的考虑因素之中。
二、软件可用性标准为了评估和改进软件系统的可用性,业界制定了一系列的软件可用性标准。
以下是一些常用的标准:1. ISO 9241-11:这是国际标准化组织发布的关于软件人机交互的通用指南。
该标准介绍了软件界面设计和用户需求分析等方面的要求和原则。
2. ISO 9126-1:这是另一个国际标准化组织的标准,它定义了软件质量的各个特性,包括可用性。
该标准将可用性定义为软件系统在预定的上下文中被特定的用户群体所实现的容易理解、学习、操作和有吸引力的程度。
3. Nielsen's heuristics:尼尔森的启发式评估是一种常用的可用性评估方法。
它由Nielsen在1994年提出,包括一系列关于用户界面设计的启发式规则。
通过检查系统是否符合这些规则,可以发现潜在的可用性问题。
三、软件可用性评估方法为了评估软件系统的可用性,并发现和解决潜在的问题,可以使用以下方法:1. 用户调查:通过问卷调查的方式收集用户对软件系统的满意度和意见。
GBT14394-93计算机软件可靠性和可维护性管理

1主要内容与适用范围本标准规定了软件在其生存周期内如何选择适当的软件可靠性和可维护性管理要素,并指导软件可靠性和可维护性大纲的制定和实施。
本标准适用于软件产品生存周期的各个阶段。
2引用标准GB 6992 可靠性与维修性管理GB 8566 计算机软件开发规范GB/T 11457 软件工程术语3术语和定义本标准将采用GB/T 11457中术语和定义。
此外强调给出下列术语和定义。
3.1软件可靠性 software reliabilitya.在规定环境下,在规定时间内软件不引起系统失效的概率。
b.在规定的时间周期内所述条件下程序执行所要求的功能的能力。
3.2软件可维护性 software maintainability与进行规定的修改难易程序有关的一组属性。
3.3软件生存周期 software life cycle软件产品从形成概念开始,经过开发、使用和维护,直到最后不再使用的整个过程。
3.4软件可靠性和可维护性大纲(以下简称大纲)softwarereliabilityandmaintainabilityprogram为保证软件满足规定的可靠性和可维护性要求制订的一套管理文件。
4软件生存周期4.1软件生存周期各阶段对可靠性和可维护性要求本标准按GB 8566划分软件生存周期。
强调各个阶段软件可靠性和可维护性要求。
4.1.1可行性研究与计划阶段——进行项目可行性分析。
制订初步项目开发计划,提出软件可靠性和可维护性目标、要求及经费,并列入合同(或研制任务书,下同)。
4.1.2需求分析阶段——将合同的技术内容细化为具体产品需求。
分析和确定软件可靠性和维护性的目标,制定大纲及其实施计划。
4.1.3概要设计阶段——进行软件可靠性和可维护性目标分配,进行可靠性和可维护性概要设计,并明确对详细设计的具体要求。
4.1.4详细设计阶段——进行软件可靠性和可维护性详细设计,编写相应的设计说明,明确对实阶段的具体要求。
4.1.5实现阶段——进行单元测试,分析和验证有关软件可靠性和可维护性的部分要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件可靠性的评价准则迄今为止,尚无一个软件可靠性模型对软件的不同特性和不同使用环境都有效。
已公开发表的100余种软件可靠性模型,表达形式不同,适应性各异,与实际的软件开发过程有较大差异。
而且,新模型还在不断发表。
因此,在进行软件可靠性预计、分析、分配、评价和设计之前,对软件可靠性模型进行评价及选择与软件项目相符或相近的模型非常重要。
通过建立有效的评价准则,在考虑它们与各种软件的关系的基础上,对拟评价的可靠性模型就有效性、适应性和模型能力等进行评价,判定它们的价值,比较它们的优劣,然后选择有效的软件可靠性模型。
另一方面,在可接受的模型之间无法做出明确的选择时,可根据模型的使用环境等,在模型评价准则的基础上,进行模型择优。
当然,软件可靠性模型的评价不仅依赖于模型的应用,还依赖于理论的支持和丰富的、高质量可靠性数据的支持。
软件可靠性模型的评价最早始于1984年Iannino、Musa、Okumoto和Littlewood所提出的原则。
根据这一原则,结合后人的工作,形成了基本的软件可靠性评价准则集。
它们是软件可靠性模型比较、选择和应用的基础。
准则一:模型预测有效软件可靠性模型最重要的评价指标是模型预测的有效性。
它根据软件现在和过去的故障行为,用模型预测软件将来的故障行为和可靠性水平。
它主要通过能有效描述软件故障随机过程特性的故障数方式对模型进行描述与评价。
基于软件故障时间特性的随机过程也是一种常用的方法,而且这两种方法相互重叠。
要确定软件可靠性模型预测的有效性,首先要比较模型预测质量。
这种比较通常通过相对误差法、偏值、U图法、Y图法、趋势法等方法进行。
故障数度量是一种在工程上被广泛应用的方法。
此外,还可以通过比较不同数据集合所做出的中位线图形来评价模型预测的有效性。
如果一个模型产生的曲线最接近于0,则该模型是最优的。
而且,这种有效性测定方法有效地克服了规范化图形评价与具体软件项目之间的联系,保证了它的独立性。
用给定可靠性数据对软件可靠性模型进行比较时,必须考察拟合模型与观察数据的一致性和符合性。
当然,根据拟合模型进行采样,是否可以获得足够的观察数据非常重要。
拟合优度检验是一种系统地表达并证明观察数据和拟合模型之间全局符合性的方法,使用最广泛的是x2检验。
1.准确性软件可靠性模型预测的准确性可用前序似然函数来测定。
设观察到的失效数据对应于软件相继失效之间的时间序列t1,t2,..,ti-1,并用这些数据来预测软件在未来可能的Ti,即希望得到Ti的真实概率密度函数Fi(t)的最优估计值。
假设以t1,t2,...,ti-1为基础预测Ti的分布Fi(t)的概率密度函数@@42D11000.GIF;表达式1@@对Ti+1,Ti+2,...,Ti+n的这种向前一步预测,即进行了n+1次预测之后的前序似然函数为@@42D11001.GIF;表达式2@@由于这种度量常常接近于0,所以常用其自然对数进行比较。
假定比较的两个软件可靠性模型分别为A和B,则对它们进行n次预测之后的前序似然比为@@42D11002.GIF;表达式3@@这个比率表示一个模型将比另一个模型给出更准确的预测的可能。
如果@@42D11003.GIF;表达式4@@则表明模型A比模型B预测的准确性高,模型A的有效性优于模型B。
如果有c>0且@@42D11004.GIF;表达式5@@即随着预测次数的无限增加,两个模型A和B的前序似然比趋于一个常量,则表明两个模型A和B的预测结果是等价的,即两个模型的预测准确性或有效性是等价的。
2.偏倚在软件可靠性模型的应用过程中,如果用模型得到预期预测结果的时间和观测到的软件失效时间不一致,就认为该模型是有偏的。
为了测定模型的偏倚量,可计算在单位斜率线和i 时刻真实概率密度的估计Fi(ti)概率积分变换值之间的最大垂直距离。
Fi(ti)是在各个观察到的失效时间点上计算出来的模型分布函数值。
同时,这一模型的分布函数值还表明了模型偏倚的方向。
当Fi>0时,表示模型趋向于乐观,反之则表示模型趋向悲观。
无论哪种情况绝对值越小,模型固有的偏倚就越小。
3.趋向有时,模型在早期的预测值集是令人乐观的,但这种乐观有可能随着预测的不断进行而丧失。
它说明所描述的偏倚检验将均化这些影响,因而模型显得是无偏的。
在这种情况下,重要的是分析Fi(ti)的趋向。
它被定义为单位斜率线和yi的累积分布函数之间的科尔马高洛夫距离。
趋向表示模型偏倚的一致性。
趋向值越小,意味着模型更能适应软件可靠性数据的变化,因而能产生更好的预测有效性。
4.噪声在软件可靠性模型中,通常将噪声假设为白噪声。
实际情况并非总是如此,而且软件可靠性模型对各种噪声并非均具有较好的适应性和不敏感性。
一般地,我们可用经典统计学中的均方差来检验模型中的噪声。
无论哪种情况,我们都希望得到尽量小的噪声度量值。
它不仅指模型预测中的噪声小,还指模型具有较好的平滑性。
噪声为无穷大时,表示模型可预测的软件失效率为0。
准则二:模型假设合理且易于测试在软件可靠性模型的建立过程中,针对不同的对象和使用环境导入了一些假设条件。
这些假设有时仅仅是为了理论推导和证明的需要,甚至是为了某些特殊目的而引入的。
纵观现有的各种模型假设,不仅数量多,且有泛滥的趋势。
而模型假设左右着模型质量。
因此,模型假设是否合理、假设质量的高低、假设的可测试性等无疑成了模型能力与有效性度量的一个重要指标。
模型假设的局限性太多,有碍于软件可靠性模型研究与应用的发展。
在软件可靠性模型中所做的一般假设有:·模型中的初始错误数是一个常数或与故障率成正比。
·每个软件错误导致相同的软件故障率。
·一次可排除一个错误,排除时不引入新错误,错误最终将被完全排除。
·故障发生率服从分布。
·故障间隔时间服从负指数分布。
·软件中的剩余错误数正比于最后一次测试的时间长度。
·测试输入随机地遇到故障。
·所有失效的影响相互独立。
·测试空间覆盖使用空间。
·所有的失效都是一出现就被看到。
软件可靠性模型的评价准则对模型假设的基本要求是,模型假设应能真实地描述模型对象与运行环境,不做无谓的假设,且所有假设都应是可测试、可证明的。
在对模型的假设质量进行评价、并由此选择模型时,如果对假设能进行完全测试,则有数据支持的假设的优先级应高于其它假设,所有采用该假设的模型都应优先选用。
如果假设的测试很困难、甚至不可能进行,则应借助于一致性观点或软件工程经验,对其继续考察。
此外,还必须对模型假设的清晰性和明确性进行判断,这将有助于判断一个具体模型是否适用于当前的软件项目。
准则三:模型能力与可靠性参数测定应满足用户要求软件可靠性模型固有的能力是对与软件可靠性有关的量的估计能力。
它涉及到模型能否有效地应用于软件设计人员、管理人员制订软件开发计划、实施软件可靠性工程设计与管理、尤其是能否以令人满意的精确度实现对软件可靠性的预计、分析、分配和评价等。
软件可靠性模型能力度量的量包括:·当前的可靠性、失效率、平均故障间隔时间、可用度,以及这些量的分布。
·所有估计参数的分布与置信区间。
·实现可靠性目标的期望时间。
·实现可靠性目标的资源和费用开销。
模型能力的测定通过对软件开发环境和运行剖面等方面的研究来完成,对这些量的数量和重要性在软件生命周期中逐个加以评价。
除了在测试和运行阶段进行软件可靠性能力的测定外,在软件设计和早期开发阶段,模型能力的测定也很重要。
软件可靠性模型参数测定的难易程度,是衡量模型有效性和模型能力的一个重要指标,它涉及模型的参数个数及估计这些参数的困难。
大多数模型包含两个以上的参数。
根据经验软件可靠性模型要求的可靠性数据至少是待估计参数的5倍。
参数较多的模型,其有效性与模型能力优于参数较少的模型。
但对软件可靠性预测模型来说,这并不普遍正确。
如果两个模型显示出较好的预测能力,应选用参数较少的模型。
因为具有较少参数的模型更容易应用,而且开发人员能更好地解释参数的物理意义,以便向软件开发过程提供适当的反馈。
准则四:模型应具有较强的适用性通常,软件可靠性模型都有一个有限的使用范围,如特定的软件可靠性数据、软件开发过程等。
对软件可靠性模型的适用性,可通过各种不同的大小、结构、功能和应用领域来分析。
一个特定模型的优点,在于它在不同的开发和运行环境中,以及在不同生命周期阶段的适用性。
应用软件可靠性模型时,下列情况应该用模型进行处理:·软件过程的进化与发展。
·软件故障分类。
·能处理不完全的可靠性数据。
·能在不同的软硬件平台上移植。
·能适应开发环境和应用环境的不一致。
总之,对软件可靠性模型的适用性,可采用各种不同大小、不同结构、不同功能的软件产品对它们进行比较、评价与判断,以确定其适用性水平。
另外,还应将模型应用于不同的开发环境、操作运行环境,以及不同的软件生命周期阶段,以判定其适用性。
准则五:模型的推导、描述、应用应简明简洁性是对所有模型的共同要求。
只有推导、证明、描述和应用简单明了的模型,才能在软件可靠性工程实践中发挥作用,才会有广阔的应用前景。
软件可靠性模型的简洁性涉及到可靠性数据采集过程、模型假设、模型描述、模型推导、模型证明,以及用软件工程工具来实现模型。
在数据采集方面,简明性可减少测定费用、提高数据准确性,并使它更易于模型应用。
模型假设、推导、描述和证明等方面的简洁性,使人们更容易理解模型假设、估计参数、应用模型和解释结果,可提高模型能力和模型的有效性。
模型实现方面的简洁性,可促进对软件工程工具的有效使用,以推动模型的应用。
在选择软件可靠性模型时,应充分重视其简单性。
尤其在尚未对可靠性估计进行多次实践的情况下,既不能保证较复杂模型的质量,一般也没有数据来支持较复杂的模型。
准则六:模型应有足够的可靠性数据的支持在软件可靠性模型的应用中,可靠性数据始终是一个重要的、非常突出的问题。
没有足够多的可靠性数据,便企图应用模型去分析、估计软件的可靠性水平,以及用它们来进行预测和决策是极其困难的,甚至是不可能的。
事实上,软件可靠性数据的数量、质量及完整性等对软件可靠性模型的影响远远大于软件可靠性模型中的假设,以及其它许多问题对模型能力和模型有效性等的影响。
针对软件可靠性数据的现状,加速可靠性数据的收集是首要的,但绝非一蹴而就。
因此,我们只能反过来对软件的可靠性模型做更多的要求。
一些软件可靠性模型在开发时就充分重视了对可靠性数据的收集,使它们的应用不但得心应手,而且非常有效。
相反,有些软件可靠性模型没有对可靠性数据的支持给予充分的重视,因而导致了应用上的困难。