软件指标可分为三类 :
产品指标 : 描述产品的特征,例如尺寸,复杂性,设计特征,性能和质量水平.
流程指标 : 这些特征可用于改进软件的开发和维护活动.
项目指标 : 该指标描述了项目特征和执行.示例包括软件开发人员的数量,软件生命周期中的人员配置模式,成本,进度和生产率.
一些指标属于多个类别.例如,项目的流程内质量指标既是流程指标又是项目指标.
软件质量指标是关注的软件指标的子集产品,流程和项目的质量方面.与项目指标相比,这些指标与流程和产品指标的关系更密切.
软件质量指标可以进一步分为三类;
产品质量指标
进程内质量指标
维护质量指标
此指标包括以下 :
平均失败时间
缺陷密度
客户问题
客户满意度
这是故障之间的时间.该指标主要用于安全关键系统,如航空交通控制系统,航空电子设备和武器.
它测量缺陷相对于表示为代码行或功能点等的软件大小,即,它测量每单位的代码质量.该指标用于许多商业软件系统.
它衡量客户在使用产品时遇到的问题.它包含了客户对软件问题空间的看法,其中包括非缺陷导向问题以及缺陷问题.
问题度量通常用表示每个用户月的问题(PUM).
PUM =客户报告的总问题(真正的缺陷和非缺陷导向的 问题)一段时间+软件的许可证月份总额 期间
其中,
软件的许可证月数=软件的安装许可证数量和时间; 计算期内的月数
PUM通常是在软件发布到市场后的每个月计算的,也是月平均数的计算按年计算.
客户满意度通常通过客户调查数据按五分制和负数来衡量;
非常满意
满意
中立
不满意
非常不满意
对产品的整体质量及其具体尺寸的满意度是通常通过各种客户调查方法获得.基于五点量表数据,可以构建和使用具有轻微变化的若干度量,这取决于分析的目的.例如 :
完全满意客户的百分比
满意客户百分比
不满意客户百分比
非满意客户百分比
通常,使用此百分比满意度.
进程内质量指标处理正式机器中缺陷到达的跟踪测试一些组织.此指标包括 :
机器测试期间的缺陷密度
机器测试期间的缺陷到达模式
基于阶段的缺陷清除模式
缺陷清除效果
正式机器测试期间的缺陷率(代码集成到系统库中后的测试)与现场的缺陷率相关.测试期间发现的较高缺陷率表明软件在开发过程中经历了较高的错误注入,除非较高的测试缺陷率是由于特殊的测试工作造成的.
这个简单的度量标准每个KLOC或功能点的缺陷是质量的良好指标,而软件仍在测试中.监视同一开发组织中产品的后续版本特别有用.
期间的整体缺陷密度测试将仅提供缺陷的摘要.缺陷到达的模式提供了有关该领域不同质量水平的更多信息.它包括以下 :
在测试阶段按时间间隔(例如,周)报告的缺陷到达或缺陷.这里所有这些都不是有效的缺陷.
在对报告的问题进行问题确定时,有效缺陷到达的模式.这是真正的缺陷模式.
缺陷积压超时的模式.需要此指标,因为开发组织无法立即调查和修复所有报告的问题.这是工作量声明以及质量声明.如果缺陷积压在开发周期结束时很大并且许多修复尚未集成到系统中,则系统的稳定性(因此其质量)将受到影响.需要重新测试(回归测试)以确保达到目标产品质量水平.
这是测试期间缺陷密度指标的扩展.除了测试之外,它还会在开发周期的所有阶段跟踪缺陷,包括设计评审,代码检查和测试前的正式验证.
因为大部分编程缺陷是与设计问题相关,进行正式评审或功能验证以增强前端过程的缺陷去除能力减少了软件中的错误.基于相位的缺陷去除模式反映了开发过程的整体缺陷去除能力.
关于设计和编码阶段的指标,除了缺陷率,还有很多开发组织使用检查范围和检查工作等指标进行过程中的质量管理.
可以定义如下 :
$$ DRE = \ frac {缺陷\:删除\:在\期间:a \:development \:phase} {缺陷\:latent \:在\:the \:product} \ times 100 \%$$
此指标可以针对整个开发过程计算,对于代码集成前的前端和每个阶段.当用于特定阶段的前端和阶段有效性时,它被称为早期缺陷去除.度量值越高,开发过程越有效,缺陷越少,传递到下一阶段或现场.该指标是软件开发缺陷清除模型的关键概念.
尽管很难改变质量在此阶段的产品,以下是可以尽快消除缺陷并具有出色的固定质量的修复.
修复积压和积压管理索引
修复响应时间并修复响应能力
违约率百分比
修复质量
修复积压与缺陷到达率和费率有关报告问题的修复程序可用.这是每个月末或每周结束时报告的问题的简单计数.以趋势图的格式使用它,该指标可以为管理维护过程提供有意义的信息.
积压管理索引(BMI)用于管理未解决的问题积压.
$$ BMI = \ afrac {Number \:of \:problems \:closed \:在\期间:\:月} {Number \ :\:问题\:到达\:在\期间:\:月} \ times 100 \%$$
如果BMI大于100,这意味着积压减少了.如果BMI小于100,那么积压就会增加.
修复响应时间指标通常计算为从开放到结束的所有问题的平均时间.短期修复响应时间可以提高客户满意度.
修复响应的重要因素是客户期望,商定的修复时间以及满足客户承诺的能力.
计算如下 :
$ Percent \:Delinquent \:修正= $
$ \ frac {Number \:of \:fixes \:that \:beyond \:the \:response \:time \:criteria \:by\:ceverity \:level} {Number \:of \:fixes \:deliver \:in \:a \:指定\:time} \ times 100 \%$
修复质量或缺陷修复的数量是另一个重要的质量维护阶段的指标.如果修复程序没有修复报告的问题,或修复了原始问题但注入了新缺陷,则修复程序有缺陷.对于任务关键型软件,有缺陷的修复程序不利于客户满意度.缺陷修复百分比的度量标准是有缺陷的时间间隔内所有修复的百分比.
有缺陷的修复可以通过两种方式记录:在发现的月份记录或在修复程序交付的月份记录它.第一个是客户衡量标准;第二个是流程测量.两个日期之间的差异是缺陷修复的潜伏期.
通常,延迟越长,受影响的客户就越多.如果缺陷数量很大,则百分比度量的小值将显示乐观图片.当然,维护过程的质量目标是零缺陷修复,没有违法行为.