文档库 最新最全的文档下载
当前位置:文档库 › 浅析软件质量指标度量

浅析软件质量指标度量

浅析软件质量指标度量
浅析软件质量指标度量

软件质量指标度量

V 1.0

2012.3

目录

1综述 (3)

1.1编写目的 (3)

1.2阅读指南 (3)

2软件质量指标 (4)

2.1需求功能点覆盖率 (4)

2.2用例执行覆盖率 (4)

2.3缺陷修复率(截至于**年*月*日) (5)

2.4缺陷遗留个数(截至于**年*月*日) (5)

2.5缺陷分布统计(模块缺陷率) (5)

2.6缺陷分布统计(严峻缺陷率) (6)

2.7缺陷密度及收敛 (7)

3测试过程质量指标 (9)

3.1缺陷探测率 (9)

3.2有效缺陷率 (9)

3.1用例执行效率 (10)

3.2缺陷发觉率 (10)

4交付质量指标 (12)

4.1加载回退率 (12)

4.2故障回退率 (12)

5版本讲明 (13)

1综述

1.1编写目的

本文档要紧为测试经理、测试组长/测试人员、技术负责人、项目经理、开发人员等提供软件质量、测试质量、交付质量等衡量依据。通过不同指标的目标设定、过程跟踪、结果分析,为当期被测产品的质量提供可参考的数据,也为后续测试提供数据的基础积存,并作为制定方法流程的依据。

1.2阅读指南

●软件测试质量指标要紧针对研发项目、商务项目被测

产品出具数据度量。

●测试过程质量指标要紧为测试经理、测试组长对测试

人员的测试执行质量出具数据度量。

●交付质量要紧为新需求的交付质量出具数据度量。

三者可单独使用,也可结合使用。

2软件质量指标

2.1需求功能点覆盖率

【需求覆盖率】:计算测试用例总数之和除以与之一一对应的功能点数之和,要紧查看是否有功能点遗漏测试的情况。

【公式】:∑测试用例数(个) / ∑功能点(个)

讲明:用例覆盖需求矩阵,一个需求对应多个功能点。

【数据来源】:《联通集中集团客户业务支撑系统销售治理用户需求讲明书》《联通集中集团客户业务支撑系统销售治理需求跟踪矩阵》

【计算结果】需求覆盖率=113/8=14.13

2.2用例执行覆盖率

【用例执行覆盖率】:计算测试用例执行总数除以与之一一对应的测试数之和,要紧查看是否有测试用例执行遗漏或有效的情况。

【公式】:∑执行的测试用例个数(个) / ∑测试用例个数(个)*100%

【数据来源】:《iSMS测试进度跟踪表》

【计算结果】:用例执行覆盖率=100%

2.3缺陷修复率(截至于**年*月*日)

【缺陷修复率】计算已修复(关闭)的缺陷总数除以有效缺陷总数,要紧查看是否有测试用例执行遗漏或有效的情况。

【公式】:∑修复(关闭)的缺陷数量(个) / ∑有效缺陷数量(个)

【数据来源】:从公司内部缺陷治理系统中导出数据:

【计算结果】:缺陷修复率=206/216*100%=95%

2.4缺陷遗留个数(截至于**年*月*日)

【缺陷遗留个数】统计待分配、待修改、重新处理的缺陷数量

【公式】:待分配+待修改+reopen状态的缺陷

【数据来源】:从公司内部缺陷治理系统中导出数据

【计算结果】:缺陷遗留个数=10,且为C类以下bug(建议性缺陷)

2.5缺陷分布统计(模块缺陷率)

【模块缺陷率】:计算各模块的缺陷数除以总体缺陷之和,要紧查看模块的质量的情况。

讲明:此指标不能单纯看结果,要结合实际情况进行分析,如模块的粒度是否划分均匀,模块的重要性,模块包含的内容是否更容易发觉bug等。

【公式】:本模块的缺陷数(个) / ∑各模块的缺陷数(个)*100%

软件测试度量(精华)

软件测试度量(精华) 转至https://www.wendangku.net/doc/9014666705.html, 摘要: 任何过程的有效管理需要量化、测量和建模。软件度量为开发和软件过程模型的验证提供量化方法。度量帮助组织获得继续提高生产率、减少错误和提高过程接受率、产品、服务以及达到最终目标的信息。 这份白皮书发表了度量生命周期、各种软件测试度量元、度量元元素、过程评估以及达到理想的结果。 一、业务需要 在技术方面日益增加的竞争和飞跃,迫使公司采取创新的方法来评估自己的过程、产品和服务。这种评估将帮助他们改善业务,使他们能够取得成功,并且获得更多利益和较高的市场占有率。 度量是评估的基石也是任何业务改进的基础。 二、软件度量 度量是标准度量单位的量化结果。对于评估软件过程、产品以及服务使用的度量被称作软件度量。 Paul Goodman给出的软件度量定义: 软件度量是一中度量技术,这种技术应用在过程、产品和服务中用来支撑工程和管理信息,以及支持过程、产品以及服务的信息上的改进,如果需要的话。 三、度量的重要性 ● 度量是用来提高质量、产品生产力以及服务,从而达到客户满意度。 ● 对于管理组织很容易分析数据并且深入下去,如果需要的话。 ● 当过程不受控时有不同的度量方式作为监控者。

● 度量提供当前过程改进。 四、记忆要点 ● 度量那些可以收集的必须使用的准确以及完整数据。 ● 度量必须很容易解释以及评估。 ● 度量多样化使度量基准形式可以从组织到组织,也可以是个人到个人。 五、度量生命周期 建立度量时涉及的过程: 六、软件测试度量类型 基于测试执行的不同类型,下面就是软件测试度量的类型: 1、手工测试度量 2、性能测试度量 3、自动化测试度量 下面的图表展示了不同的软件测试度量

浅析软件质量指标度量

软件质量指标度量 V 1.0 2012.3

目录 1综述 (3) 1.1编写目的 (3) 1.2阅读指南 (3) 2软件质量指标 (4) 2.1需求功能点覆盖率 (4) 2.2用例执行覆盖率 (4) 2.3缺陷修复率(截至于**年*月*日) (5) 2.4缺陷遗留个数(截至于**年*月*日) (5) 2.5缺陷分布统计(模块缺陷率) (5) 2.6缺陷分布统计(严重缺陷率) (6) 2.7缺陷密度及收敛 (7) 3测试过程质量指标 (9) 3.1缺陷探测率 (9) 3.2有效缺陷率 (9) 3.1用例执行效率 (10) 3.2缺陷发现率 (10) 4交付质量指标 (12) 4.1加载回退率 (12) 4.2故障回退率 (12) 5版本说明 (13)

1综述 1.1 编写目的 本文档主要为测试经理、测试组长/测试人员、技术负责人、项目经理、开发人员等提供软件质量、测试质量、交付质量等衡量依据。通过不同指标的目标设定、过程跟踪、结果分析,为当期被测产品的质量提供可参考的数据,也为后续测试提供数据的基础积累,并作为制定方法流程的依据。 1.2 阅读指南 ●软件测试质量指标主要针对研发项目、商务项目被测产品出具数据 度量。 ●测试过程质量指标主要为测试经理、测试组长对测试人员的测试执 行质量出具数据度量。 ●交付质量主要为新需求的交付质量出具数据度量。 三者可单独使用,也可结合使用。

2软件质量指标 2.1 需求功能点覆盖率 【需求覆盖率】:计算测试用例总数之和除以与之一一对应的功能点数之和,主要查看是否有功能点遗漏测试的情况。 【公式】:∑测试用例数(个)/ ∑功能点(个) 说明:用例覆盖需求矩阵,一个需求对应多个功能点。 【数据来源】:《联通集中集团客户业务支撑系统销售管理用户需求说明书》《联通集中集团客户业务支撑系统销售管理需求跟踪矩阵》 【计算结果】需求覆盖率=113/8=14.13 2.2 用例执行覆盖率 【用例执行覆盖率】:计算测试用例执行总数除以与之一一对应的测试数之和,主要查看是否有测试用例执行遗漏或有效的情况。 【公式】:∑执行的测试用例个数(个)/ ∑测试用例个数(个)*100% 【数据来源】:《iSMS测试进度跟踪表》 【计算结果】:用例执行覆盖率=100%

第3章软件质量与评价

第3章软件质量与评价(软件测试标准) 1、质量的定义 质量是多维的概念,包括:实体、实体的属性和对实体的观点。 GB/T6583-ISO8404(1994版)《质量管理与质量保证术语》对质量的定义是:反映实体满足明确的隐含的需要的能力的特性的总和。 GB/T18905-ISO14598(1999版)《软件工程产品评价》定义: 2、测度与度量 在软件质量中用于测量的一种量化的标度和方法即为“测度”,而名词的“度量”用来指测量的结果。 影响软件质量可分为:可直接测量、间接度量 3、软件质量模型 ○1、McCall(麦考尔)质量模型 三个重要方面:操作特性(产品运行)、承受可改变能力(产品修订)、新环境适应能力(产品变迁)。 McCall等认为,特性是软件质量的反映,软件属性可用做评价准则,定量化地度量软件属性可知软件质量的优劣。 ②Boehm(勃姆)质量模型 提出了分层结构的质量模型,除了用户的期望和需要的概念,与McCall(麦考尔)质量模型相同外,还包括McCall模型中没有的硬件特性。 Boehm(勃姆)质量模型反映了对软件质量的理解,即软件做了用户要它做的;有效地使用系统资源;易于用户学习和使用;易于软件测试与维护。 ③ISO9126质量模型 GB/T16260-1996:六个影响质量的特性:功能性、可靠性、易使用性、效率、可维护性、可移植性;各个子特性(及其定义)要求要背 GB/T16260-1996出发点是软件最大限度地满足用户的明确的和潜在的需求。 国标16260中,在描述外部(内部)效率度量时,给出了若干针对计算机系统时间消耗的定义如下: ①响应时间是指从按动传送键到得到结果为止所需要的时间或响应时间包括处 理时间和传输时间 ②处理时间是指从接受一个消息到送出它的结果之间计算机的历时时间 ③ 周转时间是指从提出要求到得到结果所需要的时间 4、标准的发展 GB/T 16260-1996(ISO9126-1991)《软件产品评价-质量特性及其使用指南》已被两个相关的由多部分组成的标准:GB/T 18905-2002《软件工程产品评价》和GB/T 16260-2003(ISO9126-2001)《软件工程产品质量》所取代。 5、GB/T 18905产品评价 (一、GB/T 18905基本组成(6个部分组成) GB/T 软件工程产品评价第1部分: 概述 GB/T 软件工程产品评价第2部分: 策划和管理 GB/T 软件工程产品评价第3部分: 开发者用的过程

软件开发度量及考核方法精修订

软件开发度量及考核方 法 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

本人觉得如果要提高软件开发人员的开发质量,必须有相应的考核制度,有了制度后才能推动开发人员想方设法改善自已的开发质量。虽然目前很多公司有这方面的绩效考核,但是大多数没有对软件开发的过程进行细粒度的度量,所以不能依据有效的度量数据来考核开发人员的工作绩效,大部份只是凭考核人主观意志来考核,不能形成对被考核人有效的说服力。以下文档是本人根据以前经验和相关的资料所编写的度量方法和考核方法,希望能对公司改善考核制度有用。由于时间有限,有不足之处,请各位仁兄多提意见,谢谢! 1 目的 对软件开发的过程所产生的软件项的质量和过程进行定量的评价,用评价的结果指导软件的开发过程,不断地提高软件开发质量水平,并依据度量记录来考核软件开发人员的工作绩效。 2 软件项包括 1)技术文档:参照公司"软件工程产品集",所确定的配置项;主要包括:可行性分析报告、需求分析报告、软件功能规格说明、开发计划、质量计划、系统设计报告、测试文档、技术报告、用户手册、总结报告等; 2)计算机程序。 3 度量数据的来源 1)项目计划; 2)评审报告; 3)测试报告; 4)问题报告; 5)软件维护记录; 4 质量度量 度量指标 主要根据各类软件项检查表的检查指标来确定,例如,软件需求规格说明书检查表(见附录1),有10个检查指标,则根据具体项目检查侧重点不同,可从中选择相应的检查指标作为度量指标。 质量等级 1)软件项的质量等级的确定根据度量综合指标进行。 2)度量综合指标计算公式为:Total = ∑QiMi。 3)其中i=1,2,...n代表指标数量; 4)Q代表度量的指标; 5)M代表度量的指标Q在整个指标体系中所占的权重系数,对不同的开发项目可能不同,此系数根据开发的不同着重点给出。 度量指标权重系数表: 序号指标权重 1 指标1 权数1 2 指标2 权数2 3 指标3 权数3 4 指标4 权数4 5 指标5 权数5 加权平均分 6)质量评价:一般地,根据度量综合指标值,有以下评分标准。 质量评价计分标准表 序号得分质量评价 1 ~优质

常见的软件质量模型

常见的软件质量模型 关于软件质量模型,业界已经有很多成熟的模型定义,比较常见的质量模型有McCall 模型、Boehm 模型、FURPS 模型、Dromey 模型和 ISO9126 模型。 ?Jim McCall 软件质量模型(1977 年) ?Barry W. Boehm 软件质量模型(1978 年) ?FURPS/FURPS+ 软件质量模型 ?R. Geoff Dromey 软件质量模型 ?ISO/IEC 9126 软件质量模型(1993 年) ?ISO/IEC 25010 软件质量模型(2011 年) Jim McCall 软件质量模型(1977 年) Jim McCall 的软件质量模型,也被称为 GE 模型(General Electrics Model)。其最初起源于美国空军,主要面向的是系统开发人员和系统开发过程。McCall 试图通过一系列的软件质量属性指标来弥补开发人员与最终用户之间的沟壑。 McCall 质量模型使用 3 中视角来定义和识别软件产品的质量: 1.Product revision (ability to change). 2.Product transition (adaptability to new environments). 3.Product operations (basic operational characteristics).

McCall 模型通过层级的要素、标准和指标来详述这 3 个视角定义(产品修改、产品转移、产品运行)。 ?11 Factors (To specify):描述软件的外部视角,也就是客户或使用者的视角。 ?23 Criterias (To build):描述软件的内部视角,也就是开发人员的视角。 ?Metrics (To control):定义衡量指标和方法 下图中,左侧为 11 个质量要素,右侧为 23 个质量标准。

测试质量衡量标准

测试质量衡量标准 质量衡量标准(标尺) 可清晰量化的衡量产品质量 测试覆盖率-代码块覆盖,功能覆盖,用例覆盖....这么多覆盖率,每个覆盖率,合理的目标是多少?50%?80%100% 按照找到的缺陷数目,多少是被用户找到的,多少是被内部非测试团队找到的,多少是被测试团队找到的,以此为衡量质量的标尺之一? 重复发生的回归性缺陷数目 补丁和Service package数量,来衡量质量 我们有这么多可以用来衡量质量的标准,那么,哪些应该是核心的标准,最重要的普遍标准.怎么把各个标准和质量关联上? 制定发布的质量指标,怎样才是正确的指标,可以指导我们决定发布还是延迟发布产品直到我们达到该指标. 怎么定义测试效率?包括怎么衡量s变化对测试的影响.. 怎么定义测试"完成"了? 复杂领域产品测试: 音频和视频质量测试 "看起来效果对吗?" "听起来效果对吗?" 效果"好"吗? 各种主观类型的测试判断 测试工具对系统本身的影响(测不准原理?): 性能测试工具本身对机器性能的影响所导致的测不准效果. 如何确定一个软件的测试结束点 在软件消亡之前,如果没有测试的结束点,那么软件测试就永无休止,永远不可能结束。软件测试的结束点,要依据自己公司具体情况来制定,不能一概而论!个人认为测试结束点由以下几个条件决定: 1.基于“测试阶段”的原则:

每个软件的测试一般都要经过单元测试、集成测试、系统测试这几个阶段,我们可以分别对单元测试、集成测试和系统测试制定详细的测试结束点。每个测试阶段符合结束标准后,再进行后面一个阶段的测试。举个例子来说:单元测试,我们要求测试结束点必须满足“核心代码100%经过Code Review”、“功能覆盖率达到100%”、“代码行覆盖率不低于80%”、“不存在A、B类缺陷”、“所有发现缺陷至少60%都纳入缺陷追踪系统且各级缺陷修复率达到标准”等等标准。集成测试和系统测试的结束点都制定相关的结束标准,当然也是如此。 2.基于“测试用例”的原则: 测试设计人员设计测试用例,并请项目组成员参与评审,测试用例一旦评审通过,后面测试时,就可以作为测试结束的一个参考标准。比如说在测试过程中,如果发现测试用例通过率太低,可以拒绝继续测试,待开发人员修复后再继续。在功能测试用例通过率达到100%,非功能性测试用例达到95%以上,允许正常结束测试。但是使用该原则作为测试结束点时,把握好测试用例的质量,非常关键。 3.基于“缺陷收敛趋势”的原则: 软件测试的生命周期中随着测试时间的推移,测试发现的缺陷图线,首先成逐渐上升趋 势,然后测试到一定阶段,缺陷又成下降趋势,直到发现的缺陷几乎为零或者很难发现缺陷为止。我们可以通过缺陷的趋势图线的走向,来定测试是否可以结束,这也是一个判定标准。 4.基于“缺陷修复率”的原则: 软件缺陷在测试生命周期中我们分成几个严重等级,它们分别是:严重错误、主要错误、次要错误、一般错误、较小错误和测试建议6种。那我们在确定测试结束点时,严重错误和主要错误的缺陷修复率必须达到100%,不允许存在功能性的错误;次要错误和一般错误的缺陷修复率必须达到85%以上,允许存在少量功能缺陷,后面版本解决;对于较小错误的缺陷修复率最好达到60%~70%以上。对于测试建议的问题,可以暂时不用修改。 5.基于“验收测试”的原则: 很多公司都是做项目软件,如果这种要确定测试结束点,最好测试到一定阶段,达到或接近测试部门指定的标准后,就递交用户做验收测试。如果通过用户的测试验收,就可以立即终止测试部门的测试;如果客户验收测试时,发现了部分缺陷,就可以针对性的修改缺陷后,验证通过后递交客户,相应测试也可以结束。

软件项目量化管理方法

软件项目量化管理方法 摘要:本文在对软件企业量化管理应用常见问题分析的基础上,以解决可操作性、可比性等问题为着眼点,识别出了量化管理中必须明确的四要素,表述了企业在量化四要素上采用的常见做法。 本文采用80/20原则,说明了企业在识别度量对象时应避免的问题;采用持续改进的理论,说明了企业在量化管理应遵循的客观规律。在结合平衡记分卡与目标驱动组合式的量化管理方法理论基础上,提出了软件企业的量化管理的具体应用步骤。 关键词:量化管理四要素80/20原则持续改进GQ(I)M 1. 引言 如今,很多国内软件企业选择采用能力成熟度系列模型(Capa bility Maturity Model, CMM)或其它模型来建立本企业的软件过程规范,欲通过提升软件过程的能力达到提高产品质量、降低开发风险、减少开发成本、保证产品按时交付等目的。将软件过程规范的一个目的就是使软件过程可视化,这个可视化则要求了对软件过程的量化;而产品质量是否提高、开发风险是否降低、开发成本是否减少、项目延期是否缩短,对这些问题的回答则要求了对软件项目的量化;软件过程改进与量化管理息息相关。

不少企业在将识别出的量化管理方法应用于软件项目管理过程时,发现不少问题。最为常见的是: 量化工作的可操作性不强,如:部分量化数据难以收集、难以统计投入的成本没有得到预期的产出。如:量化工作投入了成本,但形成的量化结果参考价值不高提供给管理层用于决策的支持数据也不够,数据缺乏可比性量化结果不是管理层所关心的,达不到管理层预期的过程可视化程度 针对此类问题,本文识别出了在量化管理中必须要考虑的四个方面,即:量化四要素,并从量化四要素对量化管理方法进行了分析,建议了软件企业采用的量化管理方法。 2. 量化四要素 “只有通过对产品、过程的度量,才能描述、评价、提高产品与过程”。 笔者认为,要度量,就要明确度量的对象;要度量对象,就要明确标识度量对象的计量单位;要产生度量结果,就要明确度量方法,包括度量技术和数据收集的方法;要评价度量对象,就要明确用于比对的基准指标,即表征度量对象目前情况的标尺,通过该标尺与度量结果的比对,得出对度量对象的评价。而度量对象(Object)、计量单位(Unit)、度量方法(Method)、基准指标(Benchmark),这就是笔者所说的量化四要素。

数据质量评价模型的建立和实现

[摘要] 本文提出了数据质量评价模型、质量校验与评价方法,论述了“数据质量分析评价系统”的程序实现流程、总体结构及功能,介绍了系统的关键技术及进一步的研究方向。 [关键词] 质量模型质量检验质量评价 数据作为一种资源,是支撑信息化建设和应用的主体,根据“进去的是垃圾,出来的也是垃圾”这条原理,为了支持正确决策,就要求我们所管理的数据可靠,没有错误,能够准确地反映采油厂的实际情况。胜利采油厂数据中心存放了5千万条的数据,还在以每天2万条的速度加载,如何使这些海量数据在生产管理、科学研究、企业决策中发挥应有作用,使用户能用、敢用、愿用,使数据真正为企业服务,这是几乎所有信息化企业亟需迫切解决的问题。为解决数据质量问题,各种管理手段、技术手段和新的数据评价体系不断被应用在数据的采集和加工过程中。 一、数据质量评价模型的提出背景 采油厂的数据资源具有:横跨专业多,数据采集密度大、频度高,数据处理流程复杂等特点,为了保证数据的可用性,数据管理人员在客户端、服务器端均设置了数据质量审核规则,但是依然不可避免存在比例较高的数据质量问题,典型的有记录不全、数据遗漏、数据错误、多义字段、矛盾值、违背业务规则、无法关联等。产生数据问题的根本原因可以归结为以下几个方面: 1.没有从数据资源的战略高度对数据质量进行统一完整的定义,导致数据的分析评估没有统一可靠的标准; 2.数据质量还停留在定性评价,不能实现精确的量化评价,只是在业务需要某个数据时,才到库里去手动统计,无法动态记录某个单位、某个月的真实数据质量发生情况,导致数据质量考核缺乏可信的数据依据,大大影响考核力度; 3.没有一个能同时面对用户、专业部门、数据管理人员的可视化的数据质量监控评价平台,三方无法共享一个平台,共同实行数据管控一体化,导致业务规则的变更滞后,问题数据在库中的长期滞留; 4.也许有了N个业务模型,但是没有把它放到时间轴上去控制流程,导致实际生产中应该发生的活动的部分生产数据遗漏; 虽然影响采油厂数据质量的原因是多方面的,但主要的原因还是集中在管理、制度和数据采集加工规范化方面。对于如何通过管理、制度、标准和流程来控制数据质量,提高数据可信度,我们提出建立采油厂统一的数据质量分析评价模型,使用管理手段和技术手段相结合的办法,建立一套完善的数据定义、控制、评估流程,依托科学严谨的数据监督和质量控制体系持续地改进数据质量。 二、数据质量分析评价模型构成 构成数据质量分析评估模型的要素分别为:基础模型、数据质量辅助模型、数据质量定义模型、数据质量控制模型、数据质量评价模型。 1.基础模型。基础模型部分是整个模型框架的支撑核心部分,其他质量模型的定义和控制必须以基础模型中的计划和标准为依据。基础模型主要是映射、定义数据采集标准,上载分单位的采集计划,同时纳入了约束规则定义规范、控制规则定义规范、模板定义规范。 数据标准:分两部分,一部分是直接映射应用中的标准,例如源数据库标准;另一部分是针对新增应用库和项目库标准的定义规范,包括代码定义标准、数据项定义标准(例如是取英文还是汉语拼音,取几个字符)、值域定义标准等等新增表准的建立规范; 采集计划:采集单位的每月上载的日度、月度、年度的采集计划;

软件测试之可测试性分析

软件测试之可测试性分析 在理想的情况下,软件工程师在设计计算机程序、系统或产品时应该考虑可测试性,这就使得负责测试的人能够更容易地设计有效的测试用例,但是,什么是“可测试性”呢? JamesBach②这样描述可测试性: 软件可测试性就是一个计算机程序能够被测试的容易程度。因为测试是如此的困难,因此,需要知道做些什么才能理顺测试过程。有时,程序员愿意去做对测试过程有帮助的事,而一个包括可能的设计点、特性等等的检查表对他们是很有用的。 肯定存在可用于在很多方面测度可测试性的度量,有时,可测试性被用来表示一个特定测试集覆盖产品的充分程度。在军方还用它来表示工具被检验和修复的容易程度。这两种意义都略不同于“软件可测试性”。下面的检查表提供了一组可测试软件的特征: 可操作性。“运行得越好,被测试的效率越高。” ●系统的错误很少(错误加上测试过程中的分析和报告开销)。 ●没有阻碍测试执行的错误。 ●产品在功能阶段的演化(允许同时的开发和测试)。 可观察性。“你所看见的就是你所测试的。” ●每个输入有唯一的输出。 ●系统状态和变量可见,或在运行中可查询。 ●过去的系统状态和变量可见,或在运行中可查询(例如:事务日志)。 ●所有影响输出的因素都可见。 ●容易识别错误输出。 ●通过自测机制自动侦测内部错误。

●自动报告内部错误。 ●可获取源代码。 可控制性。“对软件的控制越好,测试越能够被自动执行与优化。” ●所有可能的输出都产生于某种输入组合。 ●通过某种输入组合,所有的代码都可能被执行。 ●测试工程师可直接控制软件和硬件的状态及变量。 ●输入和输出格式保持一致且有结构。 ●能够便利地对测试进行说明、自动化和再生。 可分解性。“通过控制测试范围,能够更快地分解问题,执行更灵巧的再测试。” ●软件系统由独立模块构成。 ●能够独立测试各软件模块。 简单性。“需要测试的内容越少,测试的速度越快。” ●功能简单性(例如:特性集是满足需求所需的最小集合) ●结构简单性(例如:将体系结构模块化以限制错误的繁殖)。 ●代码简单性(例如:采用代码标准为检查和维护提供方便)。 稳定性。“改变越少,对测试的破坏越小。 ●软件的变化是不经常的。 ●软件的变化是可控制的。 ●软件的变化不影响已有的测试。 ●软件失效后能得到良好恢复。 易理解性。“得到的信息越多,进行的测试越灵巧。” ●设计能够被很好地理解。

软件质量度量指标v1.0

软件质量指标度量 1综述 (2) 1.1编写目的 (2) 1.2阅读指南 (2) 2软件质量指标 (3) 2.1需求功能点覆盖率 (3) 2.2用例执行覆盖率 (3) 2.3缺陷修复率(截至于**年*月*日) (4) 2.4缺陷遗留个数(截至于**年*月*日) (4) 2.5缺陷分布统计(模块缺陷率) (4) 2.6缺陷分布统计(严重缺陷率) (5) 2.7缺陷密度及收敛 (5) 3测试过程质量指标 (8) 3.1缺陷探测率 (8) 3.2有效缺陷率 (8) 3.1用例执行效率 (9) 3.2缺陷发现率 (9) 4交付质量指标 (11) 4.1加载回退率 (11) 4.2故障回退率 (11) 5版本说明 (12)

1综述 1.1编写目的 本文档主要为测试经理、测试组长/测试人员、技术负责人、项目经理、开发人员等提供软件质量、测试质量、交付质量等衡量依据。通过不同指标的目标设定、过程跟踪、结果分析,为当期被测产品的质量提供可参考的数据,也为后续测试提供数据的基础积累,并作为制定方法流程的依据。 1.2阅读指南 ●软件测试质量指标主要针对研发项目、商务项目被测产品出具数据 度量。 ●测试过程质量指标主要为测试经理、测试组长对测试人员的测试执 行质量出具数据度量。 ●交付质量主要为新需求的交付质量出具数据度量。 三者可单独使用,也可结合使用。

2软件质量指标 2.1需求功能点覆盖率 【需求覆盖率】:计算测试用例总数之和除以与之一一对应的功能点数之和,主要查看是否有功能点遗漏测试的情况。 【公式】:∑测试用例数(个) / ∑功能点(个) 说明:用例覆盖需求矩阵,一个需求对应多个功能点。 【数据来源】:《联通集中集团客户业务支撑系统销售管理用户需求说明书》《联通集中集团客户业务支撑系统销售管理需求跟踪矩阵》 【计算结果】需求覆盖率=113/8=14.13 2.2用例执行覆盖率 【用例执行覆盖率】:计算测试用例执行总数除以与之一一对应的测试数之和,主要查看是否有测试用例执行遗漏或有效的情况。 【公式】:∑执行的测试用例个数(个) / ∑测试用例个数(个)*100% 【数据来源】:《iSMS测试进度跟踪表》 【计算结果】:用例执行覆盖率=100%

软件测试过程的度量

软件测试过程的度量 1)测试度量的作用 A:为制定测试计划时提供依据 需要多长时间?需要什么物质条件?需要多少人,什么素质的人?在规定的时间内能完成到什么程度? 哪些模块及功能需要重点关注?测试工作量占整个项目的比例?测试结束后我们能达到什么样的目标?等等 ( 这些数据是我们在项目启动过程中,制定测试计划,尤其在规划资源的过程中,一些必要的参考值。不同项目可能会有其特殊性,但从总体上看,他们还是有一些规律可寻的,过去的经验数据可以作为一个大概估算,如果项目经验丰富,那么可以从历史数据中找出和新项目类似的情况,以能更为准确的完成计划。) B:提高测试流程可控性 提高测试效率和质量 提高测试人员的成就感 2)在测试哪个过程做度量 (产品早期的市场评估、测试策略分析、可测试性需求分析、测试工具分析、用例设计阶段、执行阶段和FOA 阶段) 我们需要在测试的几个关键阶段做度量,它们分别是:用例设计阶段、执行阶段和FOA 阶段。测试用例设计阶段包括测试方案的最终确定、测试工具的设计、测试用例编写等,测试执行阶段很明显,即我们测试的各个过程,如集成测试、系统测试、性能测试、回归测试等,也包括开发人员完成的单元测试的度量工作。FOA 阶段是检验测试质量的第一步,通过FOA 我们可以获得很多为产品质量做贡献的度量,这也是体现测试价值的度量。看起来几乎包括了测试过程的全部。其实这里包括的只是测试的具体工作阶段。 3)测试度量的内容 两种度量类型: A:项目度量:规模、测试工作量、测试进度、测试生产率 B:质量度量:缺陷率(阶段)、缺陷排除率、可靠性等 四个基本度量项:规模、工作量、进度、缺陷 4) 测试用例设计阶段的度量 A:规模:测试方案数量、测试用例数量、测试工具设计数量、测试用例/人月 B:工作量:文档的草稿编写工作量、评审前阅读工作量、评审工作量、修改工作量 C:进度:每件具体工作的计划开始结束时间、实际开始结束时间、计划工时数、实际工时数、计划完成率 D:缺陷:评审过程中出现的错误数量、缺陷数量,级别 5)测试执行阶段的度量: ? 测试用例执行率? 测试用例通过率 ? 测试用例问题发现率? BUG数量 ? BUG级别统计? BUG分布统计(模块) ? BUG分布统计(阶段)? BUG密度 ? BUG关闭率? 人均BUG发现效率 ? 测试用例执行工作量项目? 回归测试执行工作量

如何进行有效的软件度量

- 如何进行有效的软件度量 什么是软件度量 软件度量(Software Measurement)是通过各种不同的量度(metric)对软件生命周期中的各个元素进行度量(Measure),它能够为项目管理者提供有关项目的各种重要信息,同时也是进行大多评估活动的基础。 "软件度量"是一个包含很多完全不同的活动的术语。它主要包括:费用和工作量估计模型和度量、生产率度量模型和标准、质量控制和保证、数据收集、质量模型和度量、可靠性模型、性能评价和模型、算法/计算复杂性度量、结构和复杂性度量、GQM法(Goal/Question/Metric)、其他等。 通常度量程序是由一些软件工程组在组织中进行实施,而这种用于量化软件过程的决策手段实际上能为所有涉及软件的人或部门带来好处: 1.项目经理得益于在计划及控制软件项目时作出相关决策; 2.项目成员能聚焦于工作的改进; 3.软件配置管理组能关注于产品的完整性; 4.软件质量保证组则能专注于过程的保证; 5.当然用户则关于软件产品的最终使用; 6.除此以外,其他涉及并关心软件过程及产品的职能部门都能以此作出相关决策。为什么需要软件度量 在软件开发中,软件度量的根本目的是为了管理的需要,利用度量来改进软件过程。 在软件开发的历史中,我们可以意识到,在60年代末期的大型软件所面临的软件危机反映了软件开发中管理的重要性。而对于管理层人员来说:没有对软件过程的可见度就无法管理;而没有对见到的事物有适当的度量或适当的准则去判断、评估和决策,也无法进行优秀的管理。 我们说软件工程的方法论主要在提供可见度方面下工夫。但仅仅是方法论的提高并不能使其成为工程学科,这就需要使用度量。 度量是一种可用于决策的可比较的对象。度量已知的事物是为了进行跟踪和评估。对于未知的事物,度量则用于预测。 事实上现在在软件工程的主流里度量却被忽略了。现在的情况是: ■当我们在设计和开发软件产品的时候,我们并未能制定出度量的目标。例如:我们保证说我们将使用户界面友好、可靠、易于维护;而并未使用度量的术语来详细说明它们的具体含义。Gilb曾经说过:所谓模糊目标定理,就是没有明确目标的项目将不能明确地达到它的目标。 ■我们未能对构成软件项目实际费用的各个不同的部分进行有效的度量。譬如:通常我们并不知道,和测试阶段相比,设计阶段花费时间多大。 ■我们并未试图使我们开发的产品的各种质量合格。因此我们未能使用术语(如:在一段时间里使用故障的可能性、把产品安装到新环境中需花费的工作量等)向潜在的用户说明产品的可靠性很高。 ■我们总是试图说服自己使用另一种新的革新的开发技术和方法进行软件开发 事实上,我们在软件度量方面做的工作很少很少,而且所作的度量方面的工作也与一般科学意义上的度量相分离。我们经常会看到诸如此类的话:"软件的费用有80%花费在维护上。"或"软件每一千行程序中平均有55个Bugs。"。但是这些话并没有告诉我们这样的结果是怎样产生的、试验是怎样设计、执行的、度量的是那个实体、及错误的框架是什么等等。没有这些东西,我们就不能在我们自己的环境中客观地进行反复度量,重现度量的结果

三种常见质量模型的对比

常见软件质量模型的对比 J. A. McCall等人将质量模型分为三层:因素、衡量准则、度量,并对软件质量因素进行了研究,认为软件质量是正确性、可靠性、效率等构成的函数,而正确性、可靠性、效率等被称为软件质量因素,或软件质量特征,它表现了系统可见的行为化特征。每一因素又由一些准则来衡量,而准则是跟软件产品和设计相关的质量特征的属性。例如,正确性由可跟踪性、完全性、相容性来判断;每一准则又有一些定量化指标来计量,指标是捕获质量准则属性的度量。McCall认为软件质量可从两个层次去分析,其上层是外部观察的特性,下层是软件内在的特性。McCall定义了11个软件外部质量特性,称为软件的质量要素,它们是正确性、可靠性、效率、完整性、可使用性、可维护性、可测试性、灵活性、可移植性、重复使用性和连接性。同时,还定义了23个软件的内部质量特征,称之为软件的质量属性,它们是完备性、一致性、准确性、容错性、简单性、模块性、通用性、可扩充性、工具性、自描述性、执行效率、存储效率、存取控制、存取审查、可操作性、培训性、通信性、软件系统独立性、机独立性、通信通用性、数据通用性和简明性,软件的内部质量属性通过外部的质量要素反映出来。然而,实践证明以这种方式获得的结果会有一些问题。例如,本质上并不相同的一些问题有可能会被当成同样的问题来对待,导致通过模型获得的反馈也基本相同。这就使得指标的制定及其定量的结果变得难以评价。 Boehm模型是由Boehm等在1978年提出来的质量模型,在表达质量特征的层次性上它与McCall模型是非常类似的。不过,它是基于更为广泛的一系列质量特征,它将这些特征最终合并成19个标准。Boehm提出的概念的成功之处在于它包含了硬件性能的特征,这在McCall模型中是没有的。但是,其中与McCall模型类似的问题依然存在。 ISO9126质量模型主要从三个层次来分析即内部质量,外部质量和使用质量,这三者之间都是互相影响互相依赖。其中内在质量和外在质量的六个特征,它们还可以再继续分成更多的子特征。这些

软件质量国家标准GB(质量管理度量)

软件质量国家标准GB-T8566--2001G,软件质量要素: 1.功能性-与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能.包含: a.完备性-软件功能完整,齐全有关的软件属性. b.正确性-能否得到正确或相符结果或效果有关的软件属性 2.可靠性-在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性.包含: a.可用度-软件运行后在任一随机时刻需要执行规定任务或完成规定功能时,软件处于可使用状态的概率. b.初期故障率-软件在初期故障期(一般为软件交付用户后的3个月)内单位时间(100小时)的故障数. c.偶然故障率-软件在偶然故障期(一般为软件交付用户后的4个月以后)内单位时间的故障数. d.平均失效前时间(MTTF)-软件在失效前正常工作的平均统计时间. e.平均失效间隔时间(MTBF)-软件在相继两次失效之间正常工作的平均统计时间.一般民用软件大体在1,000小时左右. f.缺陷密度(FD)-软件单位源代码(1,000行无注释)中隐藏的缺陷数量.典型统计表明,开发阶段平均50-60个缺陷/千行源码, 交付后平均15-18个缺陷/千行源码. g.平均失效恢复时间(MTTR)-软件失效后恢复正常工作所需的平均统计时间. 3.易用性-由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性.包含: a.易理解性-用户认识软件的逻辑概念及其应用范围所花的努力有关的软件属性. b.易学习性-用户为学习软件(运行控制,输入,输出等)所花的努力有关的软件属性. c.易操作性-用户为操作和运行控制所花的努力有关的软件属性 4.效率性-与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性.包含: a.输出结果更新周期-软件相邻两次输出结果的间隔时间. b.处理时间-软件完成某项功能(辅助计算或决策)所用的处理时间(不含人机交互的时间). c.吞吐量-单位时间软件的信息处理能力(各种目标的处理批数). d.代码规模-软件源程序的行数(不含注释), 属于软件的静态属性 5.可维护性-与进行指定的修改所需的努力有关的一组属性 6.可移植性-与软件从一个环境转移到另一个环境的能力有关的一组属性. 影响软件系统质量的4个关键技术要素 1.技术平台的寿命 2.试运行期 3.对于现有系统的迁移 4.技术扩展

软件规模度量方法介绍

软件规模度量方法介绍 作者 学号 班级 摘要软件规模度量是一项困难度很高的任务。文章介绍了国际上广泛采用的一种软件规模度量的办法———IFPU G功能点度量方法,说明了该方法的基本原理和具体计算方法,并分析了它的优缺点。同时对国际上其他几个颇有影响的软件规模度量方法,也作了简要的介绍。 关键词软件项目项目计划进度进度计划 1、引言 软件度量是指对软件规模、软件项目工作量、软件生产率、软件项目开发成本、软件质量、软件的上线日期等事项进行量化,使复杂的软件过程通过数字的描述让相关人员能够正确理解和管理。软件度量满足了三方面的需要:首先是满足了项目管理的需要。项目经理根据软件度量的数据可以对有关资源进行合理部署和分配,有效地对项目的进度和执行情况进行监控,确定软件产品是否符合质量的要求等。其次,满足了组织的需要。依照度量的数据,组织可以清楚地了解开发的效率和质量的总体水平,从而可以更好地进行产品组合、判定资金的投向,策划、管理或验证软件开发的活动。第三是满足了用户的需要。用户可以根据度量的数据比较正确地判定投入的资金,项目交付的合理期限以及判定递交项目的质量等。因此,研究软件的度量有着十分重要的社会意义和应用意义。在软件度量的课题中,软件规模度量是其他软件度量工作的基础与关键。要对软件的规模进行度量,首先就要求确定一种度量的单位。用软件的源代码行数作为软件规模的度量是一个比较传统的度量方法。它的度量单位是K LO C(千条源代码)。例如,一个软件有15000 条源代码行数时,它的规模就用15K LO C 来表示。这种方法的优点是,比较直接、简单。但是,它的结果与使用的程序语言密切相关,尤其在开发人员大量使用第四代语言以上的工具进行 软件开发时,用K LO C 描述一个软件的规模就显得非常不准确。而且,用这种方法只能在软件开发完成之后才能进行源代码行数的准确度量。现在,除了套用某些经验公式进行软件工作量的估算时 人们还用到这种度量方法外,K LO C 几乎不再被使用。因此,本文着重介绍国际上比较流行的IFPU G 功能点度量方法,同时,也简要地介绍其他两个国际上比较有影响的软件规模度量方法。 2、FPUG 功能点介绍法 2.1功能点分析法的基本原理 功能点分析是把应用系统按组件进行分解,并对每类组件以IFPU G 定义的功能点为度量单位进行计算,从而得到反映整个应用系统规模的功能点数。功能点分析从用户对应用系统功能性需求出发,对应用系统两类功能性需求进行分析:一类是数据功能性需求,另一类为交易功能性需求。数据功能性需求又分为:内部逻辑文件(ILF:Internal Logical Files)和外部接口文件(EIF:External Interface Files)两类。交易功能性需求则分为:外部输入(EI:External Inputs),外部输出(EO :ExternalO utputs),外部查询(EQ :External Inquiry)三类。所以,应用系统一共可以按五类

评标专家工作质量评价模型

评标专家工作质量评价模型-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

评标专家工作质量评价模型 杨正超林琳王毅 摘要:评标活动是工程招标投标的重要环节,评标专家的水平直接影响着招标投标决策的科学性,建立科学合理的评标专家工作质量综合评价体系对于招标投标管理活动具有重要的意义。本文基于近年来出现的电子化评标系统,通过分析系统积累的历史数据资源,初步建立了评标专家的工作质量评价模型,设计了评标专家评价指标体系,以作为评价评标专家工作质量之抛砖引玉之用。 引言 《招标投标法》等相关法律法规赋予了评标委员会对投标文件的评审权和自由裁量权。作为评标委员会的主要成员——评标专家的业务素质、职业道德、客观公正等要素直接影响招标投标的成效。建立一支专业素养强、职业道德好、专业分类合理的评委专家队伍是招标投标活动高质有效开展的基本要求,建立一套科学合理的评标专家评价体系是保证评标专家队伍优胜劣汰、评标行为客观公正的迫切需要。 多年来,招标投标管理机构一直在探索和研究评标专家工作评价机制。一些地区采用管理部门对评标专家主观评分的方式进行评价,评价结论一般只反映评标专家外在的工作表现、工作态度,不能正确表达评标行为是否客观公正,评标结果是否科学合理。2004年,江苏省在评标活动中首先开展了计算机辅助评标,实现了经济标评审的电子化操作。2008年又在全省全面推行网上远程异地评标,实现了完整投标文件评审的电子化操作,从而建立了具有分析意义的评标专家评审行为数据库,积累了大量的数据。通过对历史数据的分析,建立了一套基于远程异地评标系统数据库的评标专家工作质量评价体系,为招标投标管理部门评价评标专家工作质量提供了重要的参考依据。 一、建立评标专家工作评价指标体系的必要性 评标专家在工程招标投标中承担着裁判的角色,是招标投标工作中的关键环节,是确保招标投标公正的关键因素。无论哪一方市场主体,想达到操纵招标的目的,都需要有专家的参与才能实现。因此,评标专家往往成为了不法者的公关焦点。常见的情况主要为以下几种: 一是投标人想尽办法及时摸清楚参加评标的专家,亲自出面做工作,采用不法手段获得评标专家的支持。二是对于专业性较强的项目,评标专家数量少。投标人平时就与这些评标专家联系建立感情。评标的时候,这些评标专家自然会给出感情分。三是先做好招标单位的工作,利用评标委员会中的招标单位代表,采用明示暗示等方式,让评标专家们知道招标人希望让哪一家企业中标,评委顺理成章打出了“感情分”,“关系分”,致使这家企业中标。

软件开发度量及考核方法

软件开发度量及考核方法 一、引言 如果要提高软件开发人员的开发质量,必须有相应的考核制度,有了制度后才能推动开发人员想方设法改善自已的开发质量。虽然目前很多公司有这方面的绩效考核,但是由于软件开发行业的特殊性,大多数公司没有对软件开发的过程进行细粒度的度量,所以不能依据有效的度量数据来考核开发人员的工作绩效,大部份只是凭考核人主观意志来考核,不能形成对被考核人有效的说服力。所以根据以前经验和相关的资料编写了适用于本部门的度量和考核方法。该考核方法是技术支持部软件开发人员和测试人员的试行版本。 二、目的 对软件开发的过程所产生的软件项的质量和过程进行定量的评价,用评价的结果指导软件的开发过程,不断地提高软件开发质量水平,并依据度量记录来考核软件开发人员的工作绩效。 三、考核实施办法 1、定义 1.1 、软件项包括 1)、技术文档:"软件工程产品集"所确定的配置项。主要包括:用户需求文档、需求分析文档、概要设计文档、详细设计文档、开发计划、测试文档、用户手册、总结报告等。 2)、计算机程序。 1.2 、度量数据的来源 1)、项目计划:过程度量中及时度考核数据的主要依据。 2)、测试文档:计算机程序质量考核数据主要依据。 3)、软件维护记录:主要是指软件产品投入用户使用后产生的软件维护记录。

2、质量度量 2.1度量指标 主要根据各类软件项检查表的检查指标来确定。例如,详细设计说明书检查表有10个检查指标,则根据具体项目检查侧重点不同,可从中选择相应的检查指标作为度量指标。(本文末尾附了各工作阶段的考核检查指标表) 2.2质量等级 1)软件项的质量等级的确定根据度量综合指标进行。 2)度量综合指标计算公式为: Total =刀QiMi。 3)其中i=1,2,...n 代表指标数量; 4)Q代表度量的指标; 5)M代表度量的指标Q在整个指标体系中所占的权重系数,对不同的开发项目可能不同,此系数根据开发的不同着重点给出。

测试度量指标

1、测试度量的目的 测试度量活动首要考虑的是目的,测试中的度量一般有如下目的: ● 判断测试的有效性 ● 判断测试的完整性 ● 判断工作产品的质量 ● 分析和改进测试过程 2、度量内容 度量的数据构成一个层次化的体系,就是度量框架。框架的上层是度量指标(Factor),下层是直接度量(Metrics)。度量指标表示产品或过程的特征,需要从直接度量计算而来。而直接度量是可以直接收集到的数据。下面分别说明系统测试中需要测量的度量内容,注意区分其中的度量指标和直接度量。 1)进度(时间)度量 a) 计划的测试开始、结束时间 b) 实际的测试开始、结束时间 c) 执行测试用例的时间。 2)成本度量 a) 计划投入测试的工作量(人时) b) 计划投入测试的资金 c) 实际投入测试的工作量(人时) d) 实际投入测试的资金 e) 评审投入的工作量(人时) f) 缺陷修正成本(提交缺陷、研究缺陷、改正缺陷、验证等所需时间) g) 累积测试时间。对每一个发布的版本,累积测试时间等于该版本在演变过程中经历的所有测试的测试时间之和。包括完整测试、验证测试和回归测试。 3)规模度量

a) 被测对象的规模(功能点、代码行(有效代码行,注释行)等) b) 系统需求数目 c) 测试用例数目(总用例数、计划执行数、实际执行数) 4)测试质量(效率)度量 a) 测试覆盖率 需求覆盖率:需求覆盖率=至少被测试用例覆盖一次的需求数/系统总需求数 测试用例覆盖率:测试用例覆盖率=计划执行的测试用例数/测试用例总数 测试用例执行率:测试用例执行率=实际执行的测试用例数/计划执行的测试用例数 测试用例通过率:测试用例通过率=(实际执行的测试用例数-测试执行不通过的测试用例数)/实际执行的测试用例数 b) 缺陷检测率对某一版本,某一个环节(阶段)的缺陷检测率=(A/(A+B))*100%。 其中: 测试人员查找出的不包括重复缺陷的数量。 用户(包括下一环节的部门)报告的不包括重复缺陷的数量。 c) 测试过程能力 单位缺陷开销=测试投入的工作量(人时)/缺陷总数 5)产品质量度量 a) 版本发布前缺陷数 b) 版本发布后缺陷数 c) 评审发现的缺陷数 d) 缺陷修正率:缺陷修正率=发布前已修正的缺陷数/发布前已知的缺陷总数。 e) 缺陷密度:千行代码缺陷率=测试和评审中发现的缺陷数/被测目标的代码的规模(KL)

相关文档