当前位置:文档之家› 软件质量度量

软件质量度量

CFD total=顾客发现缺陷数/汇编等价总源代码大小
度量4.3b:顾客发现缺陷数delta(CFD delta)
CFD delta=有增量式软件开发引起的顾客发现缺陷数/汇 编等价总源代码大小
34
1、摩托罗拉
目标5:改进顾客服务
问题5.1:本月期间还未解决的新问题数是多少? 度量5.1:新未解决问题数(New Open Problems,NOP)
应用范围
MTTF—交通管制、航空电子学、武器系统 缺陷密度(率)—商业软件系统
3
1.缺陷密度(率)度量
缺陷率-软件大小
通常千行源代码数(KLOC) 功能点
4
例子:KLOC
KLOC-物理行计数?指令语句计数?是否 加数据定义?注解?首次发布与更新版 本后 当更新版本后: 更改标记法
LOC重新计数 缺陷跟踪—使用更改标记法(change flagging)
NOP=本月未解决的新发布后问题总数
问题5.2:本月末未解决的问题总数是多少? 度量5.2:未解决问题总数(Total Open Problems,TOP)
TOP=本月末仍未解决的新发布后问题总数
35
1、摩托罗拉
目标5:改进顾客服务
问题5.3:本月末未解决问题的平均寿命是多少? 度量5.3:未解决问题的平均寿命(Age of Open Problems,AOP)
需要确保收集的数据对项目、过程和质量管理提供有 用的数据,且不至于成为开发团队的负担。 收集方法,注意反馈和迭代:
1)建立数据收集的目标 2)开发感兴趣问题的清单 3)建立数据类别 4)设计和检验数据收集形式 5)收集并验证数据 6)分析数据
数据收集系统或开发跟踪系统的验证要素-非常重要
41
五、收集软件工程数据
EEA=实际项目工作量/估计项目工作量
29
1、摩托罗拉
目标2:提高缺陷遏制能力
问题2.1:发布前缺陷检测过程的当前已知有效性如 何? 度量2.1:全部缺陷遏制有效性(Total Defect Containment Effectiveness, TDCE)
TDCE=发布前缺陷数/(发布前缺陷数+发布后缺陷数)
18
3、基于阶段的缺陷排除模式
除测试外,还需跟踪开发周期所有阶段中的缺 陷,包括设计评审、代码审查、测试前的正式 验证 IBM开发项目的缺陷排除模式表明将缺陷排除 的重点放在前期则质量要好 缺陷排除的各个阶段:高层设计评审(I0),底 层设计评审(I1)、代码审查(I2)、单元测试 (UT)、部件测试(CT)、系统测试(ST)
1、机器测试期间的缺陷密度 2、机器测试期间的缺陷出现模式 3、基于阶段的缺陷排除模式 4、缺陷排除有效性
16
1、机器测试期间的缺陷密度
正式机器测试(将代码集成到系统库之 后的测试)期间的缺陷率,通常同现场 得到的缺陷率正相关 正相关:在测试中发现的缺陷越多,以 后发现的缺陷也越多
17
2、机器测试期间的缺陷出现模式
IPF=由增量式软件开发引起的过程中故障数/汇编等价的 delta源代码大小
度量4.1b:过程中缺陷数(In-process Defects,IPD)
IPD=由增量式软件开发引起的过程中缺陷数/汇编等价的 delta源代码大小
32
1、摩托罗拉
目标4:降低软件缺陷密度
问题4.2:交付给顾客软件的当前已知缺陷量是 多少? 度量4.2a:总发布缺陷数total(Total Released Defects total,TRD total)
软件质量度量
大纲:
一、产品质量度量 二、过程中质量度量 三、软件维护的度量 四、质量程序的例子 五、收集软件工程数据 六、小结
1
一、产品质量度量
1、缺陷密度度量 2、顾客问题度量 3、顾客满意度度量
2
产品质量度量
软件质量的实际定义
平均无失效时间(mean time to failure,MTTF) 缺陷密度 顾客问题 顾客满意度
9
例子:功能点
最后,得到了功能点数
FP=FC*VAF
已成为一个关键的生产率测度 主要应用于应用软件而非系统软件
10
2、顾客问题度量
来自顾客的视角
缺陷性问题(缺陷率度量) 非缺陷性问题(使用性问题、不明确的文档或者信 息、有据缺陷的重复出现)
采用PUM( problems per user month)表示
14
3.顾客满意度度量
5级尺度基础上,构造几种度量
完全满意顾客百分数 满意顾客百分数(满意和完全满意) 不满意顾客百分数(不满意和完全不满意) 非满意顾客百分数(一般、不满意和完全不满意)
通常使用第二个度量,某些时候为降低非满意 百分数,也使用第4个度量 也可使用加权指数法
15
二、过程中质量度量
24
4、修补质量
一个修补是有缺陷的:没有修补报告的 问题或者修补了原有问题同时又注入了 新的缺陷 将会严重影响顾客满意度 两种记录方式:发现它的月份或是按交 付修补的月份记录 维护过程的质量目标应当为无逾期的、 零有缺陷修补。
25
四、度量程序的例子
1、摩托罗拉 2、IBM Rochester
26
TRD total=发布缺陷数/汇编等价总源代码大小
度量4.2b:总发布缺陷数delta(TRD delat)
TRD delat=由增量式软件开发引起的发布缺陷数/汇编 等价总源代码大小
33
1、摩托罗拉
目标4:降低软件缺陷密度
问题4.3:交付给顾客软件的当前已知顾客发现的缺 陷量是多少? 度量4.3a:顾客发现缺陷数total(Customer-Found Defects total,CFD total)
收集过程采用的若干基本形式:报告表 格、专访和使用计算机系统的自动收集 为使数据收集高效并产生效果,应当把 它同配置管理或更改控制系统合并在一 起
42
缺陷类型的分类
接口缺陷:两个独立的逻辑片段通信的路线上的缺陷。它们是在 下列实体之间的通信中的错误:部件、产品、同一部件的模块和 子程序、以及用户界面
测试期间的总缺陷率是一个简明指示器,而失 效间隔则能给出更多信息。 测试期间缺陷出现模式
测试期间按时间间隔出现的缺陷数,原始数据,不 一定有效 有效缺陷出现的模式-当报告的问题得到确定时 缺陷超时累积模式:开发机构不能立即审查和修补 所有报告的问题。若开发周期结束时缺陷累积仍然 大,则需要回归测试才能保证系统稳定性和确保产 品质量等级
缺陷/KLOC
分子 有据且不同的产品 缺陷数
PUM
所有顾客问题(缺 陷性和非缺陷性, 首次的和重复的)
分母 测量角度 作用范围
产品大小(KLOC) 产品的顾客使用 (用户一月数) 生产者-软件开发机 顾客 构 内在产品质量 内在产品质量加上 其他因素
13
3.顾客满意度度量
5级尺度
非常满意 满意 一般 不满意 非常不满意
28
1、摩托罗拉
目标1:改进项目计划制定
问题1.1:估计项目进度实际值的准确度是多少? 度量1.1:进度估计准确度(Schedule Estimation Accuracy,SEA)
SEA=实际项目持续时间/估计项目持续时间
问题1.2:估计项目工作量实际值的准确度是多少? 度量1.2:工作量估计准确度(Effort Estimation Accuracy,EEA)
BMI=当月解决问题数/当月出现问题数 BMI>100,累积问题减少了 BMI<100,累积问题增加
22
2、修补响应时间
修补方针建立在时间限上 按照缺陷可能引起的风险的严重程度分 级,越严重越需要昼夜不停的修补问题
23
3、逾期修补百分数
对每个修补而言,如果修补所需时间超过了按 严重性的响应时间标准,它就被分类到逾期修 补 逾期修补百分数=超过按严重性等级的修补时 间标准的修补数/指定时间内交付的修补总数 只针对于已经解决的问题 若某一星期做了重大改进(减少了积累问题), 则将产生一个高的逾期指数
PUM=一个时段内的顾客报告的问题总数/在此期间软 件许可证月总数 许可证月总数=软件的安装许可证数*计算时段中的月 数
11
2、顾客问题度量
降低PUM措施
改进开发过程,减少产品缺陷 通过改进产品的所有方面(实用性及文档)、 顾客教育和支持减少非缺陷性问题 增加产品销量(安装许可证数)
12
缺陷率度量和顾客问题度量比较
问题3.1:软件失效率是多少?怎样随时间 变化? 度量3.1:失效率(Failure Rate, FR)
FR=失效率/执行时间
31
1、摩托罗拉
目标4:降低软件缺陷密度
问题4.1:过程中故障的规格化数目是多少?它和过 程中缺陷数相比如何? 度量4.1a:过程中故障数(In-process Faults,IPF)
问题2.2:对以具体软件项目而言,在软件开发的每 个构造阶段引入故障的当前一直遏制有效性如何? 度量2.2:阶段i的阶段遏制有效性(Phase Containment Effectiveness, PCEi)
PCEi=阶段i出错数/(阶段i出错数+阶段i缺陷数)
30
1、摩托罗拉
目标3:提高软件可靠性
19
4、缺陷排除有效性
缺陷排除有效性(DRE)定义:DRE=开 发阶段排除的缺陷数/产品中潜伏的缺陷 数 分母估计:在现阶段排出的缺陷数+以后 发现的缺陷数 该度量值越高,开发过程越有效
20
三、软ห้องสมุดไป่ตู้维护的度量
1、修补积累和积累管理指数 2、修补响应时间 3、逾期修补百分数 4、修补质量
21
1、修补积累和积累管理指数
5
例子:功能点
一个应用程序5个主要成分的加权总和
相关主题