前面定量分析软件的可靠性时,使用失效强度来表示软件缺陷对软件运行的影响程度。然而在实际情况中,对软件运行的影响程度不仅取决于软件失效发生的概率,还和软件失效的严重程度有很大关系。这里引出另外一个概念一一失效严重程度类(Failure Severity Class)。
失效严重程度类就是对用户具有相同程度影响的失效集合。
对失效严重程度的分级可以按照不同的标准进行,最为常见的是按对成本影响、对系统能力的影响等标准划分软件失效的严重程度类。
对成本的影响可能包括失效引起的额外运行成本、修复和恢复成本、现有或潜在的业务机会的损失等。由于失效严重程度类的影响分布很广泛,为了按照一定数量的等级去定义失效严重程度类,通常用数量级去划分等级。
表9-1给出了一个按照对成本的影响划分失效严重程度类的例子,这个例子涉及的软件系统是某电子商务运营系统。
对系统能力的影响常常表现为关键数据的损失、系统异常退出、系统崩溃、导致用户操作无效等。对于不同性质的软件系统,相同的表现可能造成的失效严重程度是不同的,例如对可用性要求较高的系统,导致长时间停机的失效常常会划分到较高的严重级别中去。表9-2给出了一个按照对系统能力的影响划分失效严重程度类的例子,这个例子涉及的软件系统是某电信实时计费系统。
有了失效严重程度的划分,现在可以结合失效强度来定量地表示一个软件系统的可靠性目标了。可靠性目标是指客户对软件性能满意程度的期望。通常用可靠度、故障强度和平均失效时间(MTTF)等指标来描述,根据不同项目的不同需要而定。建立定量的可靠性指标需要对可靠性、交付时间和成本进行平衡。为了定义系统的可靠性指标,必须确定系统的运行模式,定义故障的严重性等级,确定故障强度目标。
例如,对于表9-1的例子,可以根据经验和用户的需求确定软件系统需要达到的可靠程度,按照前面的公式,换算成失效强度和平均无失效时间,如表9-3所示。
领取专属 10元无门槛券
私享最新 技术干货