软件度量基本概念理解

来源:互联网 发布:重庆最厉害的数据恢复 编辑:程序博客网 时间:2024/04/29 13:49

软件度量基本概念理解

转自: http://blog.edu.cn/user2/mindware/archives/2006/1091478.shtml

Roger S. Pressman 的《软件工程-实践者之路 》第四章:
 
4.1测度、度量和指标

虽然术语“measure”(测量)、“measurement”(测度)和“metrics”(度量)经常被互换地使用,但注意到它们之间的细微差别是很重要的。因为“measure”(测量)和“Measurement”(测度)即可以作为名词也可以作为动词,所以它们的定义可能会混淆。在软件工程领域中,“measure”(测量)对一个产品过程的某个属性的范围、数量、维度、容量或大小提供了一个定量的指示。“Measurement”(测度)则是确定一个测量的行为。IEEE的软件工程术语标准辞典(IEEE Standard Glossary of Software Engineering  Terms)[IEE93]中定义“metric”(度量)为“对一个系统、构件或过程具有的某个给定属性的度的一个定量测量”。

当获取到单个的数据点(如在一个模块的复审中发现的错误数)时,就建立了一个测量(measure)。测度(measurement)的发生是收集一个或多个数据点的结果(如调研若干个模块的复审,以收集每一次复审所发现的错误数的测量)。软件度量(metrics)在某种程度上与单个的测量相关(如每一次复审所发现的错误的平均数,或复审中每人/小时所发现的错误的平均数)。

软件工程师收集测量结果并产生度量,这样就可以获得指标“indicator”。指标是一个度量或度量的组合,它对软件过程、软件项目或产品本身提供了更深入的了解[RAG95]。指标所提供的更深入的理解,使得项目管理者或软件工程师能够调整开发过程、项目或产品,这样使事情进行得更顺利,能被更好地完成。

例如,四个软件小组共同完成一个大型软件项目。每一个小组必须进行技术复审,但允许其自行选择所采用的复审类型。检查度量结果——每人/小时所发现的错误数,项目管理者注意到采用更加正式的复审方法的两个小组,每人/小时所发现的错误数比起另外两个小组高40%。假设所有其他参数都相同,这就给项目管理者提供了一个指标:正式的复审方法比起其他复审方法在时间投资上能得到更大的回报。他可能会决定建议所有小组都采用更加正式的方法。度量给管理者提供了更深入的理解,而更深入的理解会产生更严谨、更正确的决策。

两个简单的个例子:

看一个人的肥胖程度,
 
measure: 身高,体重 (是两个单独的measure)
measurement: 拿着尺子去量身高,用秤去称体重的行为
metrics: 肥胖指数(不知是不是叫这个名字) =体重(kg) /(身高-105
indicator: 肥胖程度 (肥胖指数越大于1越胖)
 
这是一个indicator与单个metrics对应的例子。还有一个一个indicator与多个metrics对应的,比如:
 
FTR的正常性:
 
measure: 文档页数, 发现错误数,  每个人的准备时间
measurement: ....
metrics:  1. preparation rate = 总的准备时间 / 文档页数
                2. fault density = 错误数 / 文档页数
indicator:
                1. 准备程度:FTR是否准备充分 - 仅与prepation rate这一个metrics对应。
                2. 查错有效性:FTR发现错误的效果 - 仅与fault density这一个metrics对应。
                3. 正常程度:FTR是否正常: 这是一个与两个metrics都对应的indicator,也就是一个FTR是否正常(基于组织的历史数据,在统计意义上),是要在prep ratefault density两个metrics组成的二维空间里去判断的。

 如下图,一个点对应一次FTR 正常的 FTR fault density 应介于上下限之间(蓝线与灰线之间) prep rate 应大于下限(在绿线的右边)。也就是正常的FTR的点都在区域4别的区域的应该是有一定问题的,或者说是PM应该去关注一下的。

 区域1, 准备一点也不充分,错误倒发现了一大堆。呵呵,质量能放心吗?! 
 区域3, 准备很充分,错误也挺多,但是太多了一点,是否还有很多漏网之鱼?! 
 区域2, 或者准备不够,或者错误太少,如果二者俱备,用四川话讲,这个FTR显然是走过场噻就象此图中一样,左下角的密密麻麻的点点,都是在走过场, 还是在Review比较关键requirementPM该下课!^_^


 
原创粉丝点击