课件03-软件可靠性与安全性-指标分配
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
重要度分配法实例
计算系统失效率调节因子K
C1 1 C 2 2 C3 3 C4 4 C5 5 K T
=
83 12 45 (3)( 4) (1)(3)
5
= 12.2
重要度分配法实例
计算各 CSCI 非规格化失效率指标 ( 次失效 / 任 务小时 )
需要时软件可用的概率
计算
MTTF MTTF Availabili ty MTTF MTTR MTBF
提要
3 1
软件可靠性度量参数
3 2
软件可靠性指标分配方法
原则和因素
基于功能进行分配 选定指标
考虑因素
系统总的可靠性指标 总的任务时间 CSCI数量 各CSCI的拓扑结构/操作剖面/关键等级/复
1
4 8
重要度分配法实例
场景
软件系统的可靠性需求:λs =0.00025次
失效/任务小时
软件系统的CSCI数量:5个 系统的任务持续时间:T = 5小时
重要度分配法实例
CSCI标识 CSCI1 CSCI2
重要度因子 8 1
执行时间 3 2
CSCI3 CSCI4
CSCI5
4 4
1
5 3
③ 对于每个 CSCI, 确定它的复杂度因子 (Wi), CSCI的复杂度越高, Wi值越高
④ 确定系统的任务持续时间 (T) ⑤ 确定系统任务持续期内, 每个CSCI的活动时 间(τi)
⑥ 计算系统的失效率调节因子(K)
⑦ 计算每个CSCI分配的失效率指标(λi)
复杂度分配法计算方法
失效率调节因子
C1 K C2 2 S K C 3 S 3 K C 4 S 4 K C 5 S 5 K
1 S
= 0.00025(8/12.2) = 0.000164 = 0.00025(1/12.2) = 0.000020 = 0.00025(4/12.2) = 0.000082 = 0.00025(4/12.2) = 0.000082
软件可靠性与安全性
第三部分
软件可靠性指标及其 分配
提要
3 1
软件可靠性度量参数
3 2
软件可靠性指标分配方法
参数与指标
可靠性度量参数
是可靠性定量化描述的数学属性
可靠性参数体系
是某种软件产品可靠性的参数的集合
可靠性度量指标
是软件某一可靠性参数的要求值
可靠性指标体系
是某种软件所有可靠性参数的要求值
单位
失效次数/时间 失效次数/距离 失效次数/周期
例如
0.1次失效/CPU小时
失效率
在度量间歇性且不常发生的服务请求的可靠 性时, 可使用服务失效率(POFOD)
POFOD(Probability of failure on demand) 对于使用者提出的请求,系统无法提供服
当软件从时刻T1工作到时刻T2, 若发生了 n次 失效, 则:
MT BF
T2 T1 n 1
平均失效间隔时间
单位
时间
当量纲取距离时,可以用MDBF表示
量纲取周期时,可以用MCBF表示
是失效率的倒数
MTBF
1
平均失效间隔时间
MTBF = MTTF + MTTR
item1∩item2∩……∩itemn=Φ
p
i 1
n
i
1
使用失效率指标
操作剖面分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定确定整个软件系统的操作剖面(PF)
③ 对于每个功能,分配可靠性需求(λi)
i
S
pi
重要度分配法前提
基于对软件失效影响认知来分配失效率, 将重 要度等级与维持系统运行并且保持故障防护 能力联系起来 对于确定的操作模式或CSCI, 如果其重要度等 级高, 应分配较低的失效率, 如果其重要度等 级较低, 应分配高一些失效率 如果必须为某项特定的操作模式分配特别低 的失效率, 就需要采用容错或其它失效缓解设 计技术 使用失效率指标
当失效呈现指数分布时
F(t) = 1-exp (-t/MTTF) R(t) = exp (-t/MTTF)
平均失效间隔时间
定义(MTBF)
两次相继失效之间的时间间隔的均值 。
MTBF 在实际使用时通常是指当 n 很大时, 软件第n次失效与第n+1次失效之间的平均 时间
平均失效间隔时间
③ 对于每个功能, 确定它的重要度因子(Ci)
④ 确定系统的任务持续时间 (T)
⑤ 确定每个功能在系统任务期内活动时间(τi) ⑥ 计算系统的失效率调节因子(K) ⑦ 计算每个功能分配的失效率指标(λi) ⑧ 分级别累计每个CSCI的失效率指标(λcj)
指标分配的系统性考虑
分配与验证所选择的参数应保持一致
重要度分配法计算方法
失效率调节因子
K
Ci i
i1
N
T
每个CSCI分配的失效率指标
Ci i S K
重要度分配法
重要度 等级 说明 重要度 因子
直接影响系统使用安全和危 关键软件 及人员安全,或影响关键任 务完成的软件 不影响系统使用安全,但影 重要软件 响任务完成的软件 不影响系统使用安全和任务 一般软件 完成的软件
重要度分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 确定它的重要度因子 (Ci), 对 于系统更为重要CSCI, 赋予较低的Ci 值 ④ 确定系统的任务持续时间 (T) ⑤ 确定系统任务持续期内 , 每个 CSCI 的活动时 间(τi) ⑥ 计算系统的失效率调节因子(K) ⑦ 计算每个CSCI分配的失效率指标(λi)
可靠性分配是贯穿软件开发周期的工作 , 逐 步细分
不同系统顶层的分配可采用不同的分配方法 分配的最小粒度可确定为可靠性测试中可独 立验证和度量的功能
一个功能从多个来源获得分配的指标时 , 可 选择最高要求的指标
指标分配的若干问题
接口和交互的考虑 需求与实现的颗粒度
在划分时考虑
SF2: 477, 1048, 685, 396
SF3: 894, 1422
MTTFSF1 = 2594/7 = 370.57 MTTFSF2 = 2606/4 = 651.5 MTTFSF3 = 2316/2 = 1158
平均失效前时间
MTTF R x dx
0
使用功能规模调节因子
可靠性影响因素
期望的 实现的
软件可靠性与安全性
F (t ) P(T t )
与可靠度R(t)之间的关系
F (t ) 1 R(t )
失效强度
失效概率的密度函数
单位时间软件系统出现失效的概率
用f(t)表示
如果 F(t) 是可微分的 , 失效强度 f(t) 是 F(t) 关 于时间的一阶导数
dFt dR t f t dt dt
K
w i i
i 1
N
T
wi 每个CSCI分配的失效率指标 i S K
操作剖面分配法前提
软件可靠性是由用户的使用决定的 , 对于同 一个软件 , 用户不同的使用方式会导致软件 可靠性的变化。操作剖面用于定义软件的使 用模型, 刻画用户使用软件的模式
PF = {(item1,p1),(item2,p2), … (itemn,pn)}
几种常见的参数
可靠度(Reliability) 失效概率(Failure Probability)
失效强度(Failure Intensity)
失效率(Failure Rate) 平 均 失 效 前 时 间 (MTTF, Mean Time To Failure) 平 均 失 效 间 隔 时 间 (MTBF, Mean Time Between Failures) 可用性(Availability)
= 0.00025(1/12.2) = 0.000020
重要度分配法实例
规格化(次失效/任务小时) (0.00025/0.000368) =0.67935
1
= (0.000164)(0.67935) = 0.000111 = (0 000020)(0.67935) = 0 000014 = (0.000082)(0.67935) = 0.000056 = (0.000082)(0.67935) = 0.000056 = (0 000020)(0.67935) = 0 000014
使用失效率指标
复杂度分配法关键因素
为了保证分配的有效性 , 对于每个 CSCI 必须 采用相同的方法 选择的复杂度测量必须能按线性比例转化成 失效率(如: 如果CSCI复杂度为4倍, 失效率指 标应该是等高的比例) 复杂度更高的CSCI, 失效率指标也更高
复杂度分配法步骤
① 确定整个软件系统的可靠性需求(λs) ② 确定整个软件系统的CSCI数量(N)
2
3
4
5
重要度分配法改进
需要考虑的问题
系统中各CSCI的规模(如: 功能的数量)可
能存在较大差别, 规模大的CSCI对系统可 靠性影响大 同一个CSCI中的功能, 重要度等级不是完 全一样的
改进重要度分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的功能数量(N)
务的概率 适应于
偶尔有服务请求,并且若无法提供服务则
会造成严重后果的防护系统
安全关键系统的异常管理部件
平均失效前时间
定义(MTTF)
当前时间到下一次失效时间的均值
计算
MTTF
k 1
N
tk N
应用
度量软件可靠性和可用性
平均失效前时间
举例
SF1: 180, 675, 315, 212, 278, 503, 431
使用失效率指标
并行执行分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 分配可靠性需求(λi)
i
S
N
复杂度分配法前提
基于每个CSCI 的相应复杂度分配失效率
计算CSCI复杂度的方法
源代码行数
功能点
特wk.baidu.com点
Mean Time To Repair (MTTR)
维修包括
确定并修正导致失效的缺陷
通过重新启动系统, 恢复系统服务
Mean Time To Restore (MTTR) Mean Time To Disruption (MTTD)
可用性
定义(Availability)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 分配可靠性需求(λi)
i S
并行执行分配法前提
软件的各个CSCI是并行执行, 但这些CSCI代 表了整个软件的一系列的功能 , 任何一个 CSCI 的执行不依赖于其他 CSCI 的执行结果 , 所有CSCI执行时间均等于系统任务执行时间 任何一个CSCI失效意味着整个软件系统失效
可靠度
软件可靠性的基本定义
软件在规定条件下和规定时间内 , 完成规
定功能的概率 软件失效行为的概率描述
在 t = 0 时系统正常的条件下 , 系统在时间
区间[0,t]内能正常运行的概率
用R(t)表示
Rt PT t
失效概率
软件在规定条件下和规定时间内 , 丧失规定 功能的概率 用F(t)表示
失效率
软件在0~t时刻内没有发生失效的条件下, 在t 时刻软件系统的失效强度 又称为
条件失效强度 风险函数(hazard function)
用λ(t)表示
dFt f t dt t R t R t
失效率
失效率也是失效数与测试用例、操作事件或 操作时间总数的比
杂度
常用方法
顺序执行分配法
并行执行分配法
复杂度因子分配法
操作剖面分配法
重要度分配法
顺序执行分配法前提
软件的各个CSCI是顺序执行, 所有CSCI执行 时间之和等于系统任务执行时间
所有的CSCI都成功执行才能保证软件不失效 使用失效率指标
顺序执行分配法步骤
① 确定整个软件系统的可靠性需求(λs)
重要度分配法实例
计算系统失效率调节因子K
C1 1 C 2 2 C3 3 C4 4 C5 5 K T
=
83 12 45 (3)( 4) (1)(3)
5
= 12.2
重要度分配法实例
计算各 CSCI 非规格化失效率指标 ( 次失效 / 任 务小时 )
需要时软件可用的概率
计算
MTTF MTTF Availabili ty MTTF MTTR MTBF
提要
3 1
软件可靠性度量参数
3 2
软件可靠性指标分配方法
原则和因素
基于功能进行分配 选定指标
考虑因素
系统总的可靠性指标 总的任务时间 CSCI数量 各CSCI的拓扑结构/操作剖面/关键等级/复
1
4 8
重要度分配法实例
场景
软件系统的可靠性需求:λs =0.00025次
失效/任务小时
软件系统的CSCI数量:5个 系统的任务持续时间:T = 5小时
重要度分配法实例
CSCI标识 CSCI1 CSCI2
重要度因子 8 1
执行时间 3 2
CSCI3 CSCI4
CSCI5
4 4
1
5 3
③ 对于每个 CSCI, 确定它的复杂度因子 (Wi), CSCI的复杂度越高, Wi值越高
④ 确定系统的任务持续时间 (T) ⑤ 确定系统任务持续期内, 每个CSCI的活动时 间(τi)
⑥ 计算系统的失效率调节因子(K)
⑦ 计算每个CSCI分配的失效率指标(λi)
复杂度分配法计算方法
失效率调节因子
C1 K C2 2 S K C 3 S 3 K C 4 S 4 K C 5 S 5 K
1 S
= 0.00025(8/12.2) = 0.000164 = 0.00025(1/12.2) = 0.000020 = 0.00025(4/12.2) = 0.000082 = 0.00025(4/12.2) = 0.000082
软件可靠性与安全性
第三部分
软件可靠性指标及其 分配
提要
3 1
软件可靠性度量参数
3 2
软件可靠性指标分配方法
参数与指标
可靠性度量参数
是可靠性定量化描述的数学属性
可靠性参数体系
是某种软件产品可靠性的参数的集合
可靠性度量指标
是软件某一可靠性参数的要求值
可靠性指标体系
是某种软件所有可靠性参数的要求值
单位
失效次数/时间 失效次数/距离 失效次数/周期
例如
0.1次失效/CPU小时
失效率
在度量间歇性且不常发生的服务请求的可靠 性时, 可使用服务失效率(POFOD)
POFOD(Probability of failure on demand) 对于使用者提出的请求,系统无法提供服
当软件从时刻T1工作到时刻T2, 若发生了 n次 失效, 则:
MT BF
T2 T1 n 1
平均失效间隔时间
单位
时间
当量纲取距离时,可以用MDBF表示
量纲取周期时,可以用MCBF表示
是失效率的倒数
MTBF
1
平均失效间隔时间
MTBF = MTTF + MTTR
item1∩item2∩……∩itemn=Φ
p
i 1
n
i
1
使用失效率指标
操作剖面分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定确定整个软件系统的操作剖面(PF)
③ 对于每个功能,分配可靠性需求(λi)
i
S
pi
重要度分配法前提
基于对软件失效影响认知来分配失效率, 将重 要度等级与维持系统运行并且保持故障防护 能力联系起来 对于确定的操作模式或CSCI, 如果其重要度等 级高, 应分配较低的失效率, 如果其重要度等 级较低, 应分配高一些失效率 如果必须为某项特定的操作模式分配特别低 的失效率, 就需要采用容错或其它失效缓解设 计技术 使用失效率指标
当失效呈现指数分布时
F(t) = 1-exp (-t/MTTF) R(t) = exp (-t/MTTF)
平均失效间隔时间
定义(MTBF)
两次相继失效之间的时间间隔的均值 。
MTBF 在实际使用时通常是指当 n 很大时, 软件第n次失效与第n+1次失效之间的平均 时间
平均失效间隔时间
③ 对于每个功能, 确定它的重要度因子(Ci)
④ 确定系统的任务持续时间 (T)
⑤ 确定每个功能在系统任务期内活动时间(τi) ⑥ 计算系统的失效率调节因子(K) ⑦ 计算每个功能分配的失效率指标(λi) ⑧ 分级别累计每个CSCI的失效率指标(λcj)
指标分配的系统性考虑
分配与验证所选择的参数应保持一致
重要度分配法计算方法
失效率调节因子
K
Ci i
i1
N
T
每个CSCI分配的失效率指标
Ci i S K
重要度分配法
重要度 等级 说明 重要度 因子
直接影响系统使用安全和危 关键软件 及人员安全,或影响关键任 务完成的软件 不影响系统使用安全,但影 重要软件 响任务完成的软件 不影响系统使用安全和任务 一般软件 完成的软件
重要度分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 确定它的重要度因子 (Ci), 对 于系统更为重要CSCI, 赋予较低的Ci 值 ④ 确定系统的任务持续时间 (T) ⑤ 确定系统任务持续期内 , 每个 CSCI 的活动时 间(τi) ⑥ 计算系统的失效率调节因子(K) ⑦ 计算每个CSCI分配的失效率指标(λi)
可靠性分配是贯穿软件开发周期的工作 , 逐 步细分
不同系统顶层的分配可采用不同的分配方法 分配的最小粒度可确定为可靠性测试中可独 立验证和度量的功能
一个功能从多个来源获得分配的指标时 , 可 选择最高要求的指标
指标分配的若干问题
接口和交互的考虑 需求与实现的颗粒度
在划分时考虑
SF2: 477, 1048, 685, 396
SF3: 894, 1422
MTTFSF1 = 2594/7 = 370.57 MTTFSF2 = 2606/4 = 651.5 MTTFSF3 = 2316/2 = 1158
平均失效前时间
MTTF R x dx
0
使用功能规模调节因子
可靠性影响因素
期望的 实现的
软件可靠性与安全性
F (t ) P(T t )
与可靠度R(t)之间的关系
F (t ) 1 R(t )
失效强度
失效概率的密度函数
单位时间软件系统出现失效的概率
用f(t)表示
如果 F(t) 是可微分的 , 失效强度 f(t) 是 F(t) 关 于时间的一阶导数
dFt dR t f t dt dt
K
w i i
i 1
N
T
wi 每个CSCI分配的失效率指标 i S K
操作剖面分配法前提
软件可靠性是由用户的使用决定的 , 对于同 一个软件 , 用户不同的使用方式会导致软件 可靠性的变化。操作剖面用于定义软件的使 用模型, 刻画用户使用软件的模式
PF = {(item1,p1),(item2,p2), … (itemn,pn)}
几种常见的参数
可靠度(Reliability) 失效概率(Failure Probability)
失效强度(Failure Intensity)
失效率(Failure Rate) 平 均 失 效 前 时 间 (MTTF, Mean Time To Failure) 平 均 失 效 间 隔 时 间 (MTBF, Mean Time Between Failures) 可用性(Availability)
= 0.00025(1/12.2) = 0.000020
重要度分配法实例
规格化(次失效/任务小时) (0.00025/0.000368) =0.67935
1
= (0.000164)(0.67935) = 0.000111 = (0 000020)(0.67935) = 0 000014 = (0.000082)(0.67935) = 0.000056 = (0.000082)(0.67935) = 0.000056 = (0 000020)(0.67935) = 0 000014
使用失效率指标
复杂度分配法关键因素
为了保证分配的有效性 , 对于每个 CSCI 必须 采用相同的方法 选择的复杂度测量必须能按线性比例转化成 失效率(如: 如果CSCI复杂度为4倍, 失效率指 标应该是等高的比例) 复杂度更高的CSCI, 失效率指标也更高
复杂度分配法步骤
① 确定整个软件系统的可靠性需求(λs) ② 确定整个软件系统的CSCI数量(N)
2
3
4
5
重要度分配法改进
需要考虑的问题
系统中各CSCI的规模(如: 功能的数量)可
能存在较大差别, 规模大的CSCI对系统可 靠性影响大 同一个CSCI中的功能, 重要度等级不是完 全一样的
改进重要度分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的功能数量(N)
务的概率 适应于
偶尔有服务请求,并且若无法提供服务则
会造成严重后果的防护系统
安全关键系统的异常管理部件
平均失效前时间
定义(MTTF)
当前时间到下一次失效时间的均值
计算
MTTF
k 1
N
tk N
应用
度量软件可靠性和可用性
平均失效前时间
举例
SF1: 180, 675, 315, 212, 278, 503, 431
使用失效率指标
并行执行分配法步骤
① 确定整个软件系统的可靠性需求(λs)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 分配可靠性需求(λi)
i
S
N
复杂度分配法前提
基于每个CSCI 的相应复杂度分配失效率
计算CSCI复杂度的方法
源代码行数
功能点
特wk.baidu.com点
Mean Time To Repair (MTTR)
维修包括
确定并修正导致失效的缺陷
通过重新启动系统, 恢复系统服务
Mean Time To Restore (MTTR) Mean Time To Disruption (MTTD)
可用性
定义(Availability)
② 确定整个软件系统的CSCI数量(N)
③ 对于每个CSCI, 分配可靠性需求(λi)
i S
并行执行分配法前提
软件的各个CSCI是并行执行, 但这些CSCI代 表了整个软件的一系列的功能 , 任何一个 CSCI 的执行不依赖于其他 CSCI 的执行结果 , 所有CSCI执行时间均等于系统任务执行时间 任何一个CSCI失效意味着整个软件系统失效
可靠度
软件可靠性的基本定义
软件在规定条件下和规定时间内 , 完成规
定功能的概率 软件失效行为的概率描述
在 t = 0 时系统正常的条件下 , 系统在时间
区间[0,t]内能正常运行的概率
用R(t)表示
Rt PT t
失效概率
软件在规定条件下和规定时间内 , 丧失规定 功能的概率 用F(t)表示
失效率
软件在0~t时刻内没有发生失效的条件下, 在t 时刻软件系统的失效强度 又称为
条件失效强度 风险函数(hazard function)
用λ(t)表示
dFt f t dt t R t R t
失效率
失效率也是失效数与测试用例、操作事件或 操作时间总数的比
杂度
常用方法
顺序执行分配法
并行执行分配法
复杂度因子分配法
操作剖面分配法
重要度分配法
顺序执行分配法前提
软件的各个CSCI是顺序执行, 所有CSCI执行 时间之和等于系统任务执行时间
所有的CSCI都成功执行才能保证软件不失效 使用失效率指标
顺序执行分配法步骤
① 确定整个软件系统的可靠性需求(λs)