13.8 - 软件测试工作量及成本估算 3.9 - 软件测试成本估算示例

目录

一、软件测试成本构成

1、直接成本

(1)概念

(2)直接成本分

2、间接成本

(1)概念

(2)间接成本的分类因子

3、注意

二、软件测试成本调整因子

1、软件复杂度

2、软件完整性

3、测试风险度

4、回归测试

5、加急测试

6、现场测试

7、评测机构资质

三、软件测试工作量及成本估算

1、软件测试成本度量的实施步骤

(1)第一步

(2)第二步

(3)第三步

(4)第四步

(5)第五步

2、软件测试成本度量

(1)人工成本工作量计算:UW=TW+SR+DR

(2)软件测试的调整因子:DF=C*I*R*U*X*A*(1+n*Tr)

(3)测试人工成本:LC=UW*DF*S

(4)测试工具成本:IC=OT+RT

(5)测试直接成本:DC=LC+EC+IC

(6)测试间接成本:不宜超过个DC的20%

(7)测试成本:STC=DC+IDC

四、软件测试成本估算示例

1、软件测试成本的各项成本及各因子 系数示例

2、软件测试的人工成本工作量计算

3、软件测试成本调整因子

4、测试人工成本计算

5、测试工具成本计算

6、无租借设备

7、总的测试工具成本

8、软件测试直接成本计算

9、软件测试成本


一、软件测试成本构成

GB/T 32911-2016提出的《软件测试成本度量规范》中规定了软件测试成本度量,以满足软件产业发展对测试成本度量的需求。讲软件成本分为直接成本和间接成本。

1、直接成本

(1)概念

  • 是为了完成软件测试项目所支出的人工资源和工具资源的总和。

(2)直接成本分

  • 测试人工成本:软件测试过程中进行评审时的人工成本。主要包含:产品说明评审、用户文档评审、软件测试评审。
  • 测试环境成本:要实现测试,要去搭建基于测试的环境的人工成本。
  • 测试工具成本:测试用到的硬件和软件属于工具成本。工具成本一般可以按照折旧、或者提供租赁的服务费来进行计算。

2、间接成本

(1)概念

  • 是指服务于软件测试项目的管理的组织成本。
  • 这种能够成本可能会跨越、超过测试周期。

(2)间接成本的分类因子

  • 办公成本:场地、会议、交通、印刷等都属于办公成本。
  • 管理成本:组织管理成本、测试文档管理成本、做测试计划的管理成本、测试过程控制的管理成本等。

3、注意

  • 进行成本计算时,计算间接成本时,会按照直接成本的比例进行计算。
  • 一般间接成本不超过直接成本的20%。

二、软件测试成本调整因子

软件测试成本调整因子在不同的测试环境下,对测试成本的影响会不一样。
考虑直接成本时,首先应该将对成本造成影响的因子列出来,然后在估算出来的、未经调整的工作量的基础上再去加以调整因子的影响,然后才会形成直接成本出来。

1、软件复杂度

  • 主要是从软件的规模、难度和结构等方面,来进行度量。
  • 一般根据软件是否符合几个固定的特性来度量这个软件的复杂程度。几个固定的特性:是否存在大量的控制和安全措施、系统规模比较大、子规模比较多而且相互之间有影响、是否需要与其他系统对接使用、语言是否是母语、是否存在大量逻辑处理或者处理逻辑比较复杂、是否存在大量的数学处理、算法是否比较复杂等。
  • 软件复杂程等级是 中、高、低。如果软件 不符合上面特性中的任何一个,那么软件复杂度定义为 ,复杂因子为 1.0符合特性中的 一个,那么软件复杂度定义为 ,复杂因子范围为 1.1~1.2;如果软件 符合特行证的 2个或2个以上,那么软件复杂度定义为 ,复杂因子范围为 1.3~1.5
  • 复杂软件的测试成本高于简单软件的测试成本。

2、软件完整性

  • 依据GB/T 18492-2001,给出了软件完整性级别调整因子,一般与系统的风险等级有关系,系统面临的风险等级越高,软件完整性因子就会越大。
  • 系统风险等级的评估,可以参考国家标准, 系统风险等级一般分为高、中、低、微小四个等级系统风险性高,软件完整性定义为A,软件完整性因子在1.6~1.8;系统风险性中,软件完整性定义为B,完整性因子范围是1.3~1.5;系统风险性低,软件完整性定义为C,完整性因子范围是1.1~1.2;系统风险性微小,软件完整性定义为D,完整性因子范围是1.0;
  • A级完整度的软件测试成本高于D级软件测试的成本。

3、测试风险度

  • 软件测试过程中会存在一些风险,依据这些风险测度对测试风险度评级。例如所测软件所属领域有一些特殊的要求(高风险)、需求不明确(中风险)、被测软件与相关文档之间存在不一致(中风险),测试过程中测试方法与开发方因沟通问题而导致不可预期的风险等都属于测试风险(中风险)。
  • 测试风险度的等级为: 高、中、低。测试过程中不包含上面任意一个风险时,测试风险定义为 ,风险度因子为 1.0。测试过程中 出现上面 中风险 一个,测试风险度定义为 ,风险度因子范围是 1.1~1.2;测试过程中 出现上面高风险 、或中级风险中的任意两个,测试风险度定义为 ,风险度因子范围为 1.3~1.5

4、回归测试

  • 程序测试后发现问题,返回给开发人员修改,然后测试人员验证问题是否修改,是否需改出新的问题。
  • 一般在回归测试因子范围是 0.6~0.8。
  • 1个问题回归验证2次,计算时是1+2*0.6。

5、加急测试

  • 主要看加急的程度,判断加急因子的取值。
  • 加急因子一般是在 1.2~3.0之间。

6、现场测试

  • 必须到特定测试场合中进行测试,到现场测试就会导致成本的增加。
  • 现场测试因子取值范围是 1.0~1.3之间,

7、评测机构资质

  • 评测机构所获得的国家、行业、地方授权的资质情况。资质全品牌好的评测机构,评测机构因子就高。
  • 评测机构资质因子取值范围是 1.0~1.2之间。

三、软件测试工作量及成本估算

1、软件测试成本度量的实施步骤

(1)第一步

  • 根据项目情况、项目的目标,去做好估算前期的准备工作。
  • 例如:要确定项目测试范围、需要进行评审的文档(产品说明、软件测试、用户文档)等。

(2)第二步

  • 根据确定好的项目范围及手机好的资料,估算未调整的软件测试工作量。
  • 未经调整的人工工作量=用户文档评审工作量+未调整的软件测试人工工作量+产品说明评审工作量。

(3)第三步

  • 根据文档审查和项目的情况确认各个调整因子的范围,然后再根据调整因子对软件测试人工工作量进行调整,就得到了最后的人工成本。
  • 环境成本:一般大概采用的是人工成本的20%。环境成本=最终人工成本*20%。
  • 工具成本:工具成本一般可以按照折旧、或者提供租赁的服务费进行计算。
  • 直接成本=人工成本+环境成本+工具成本。

(4)第四步

  • 在一般的场景下计算间接成本,是采用最多不超过直接成本的20%进行计算的。
  • 间接成本=直接成本*20%。
  • 所以箭头是直接成本指向间接成本。

(5)第五步

  • 软件测试总成本=直接成本+间接成本。

2、软件测试成本度量

(1)人工成本工作量计算:UW=TW+SR+DR

  • UW:未经调整的人工工作量
  • TW:软件测试评审工作量
  • SR:产品说明评审工作量
  • DR:用户文档集评审工作量

(2)软件测试的调整因子:DF=C*I*R*U*X*A*(1+n*Tr)

  • C:复杂度因子
  • I:完整度因子
  • R:测试风险度因子
  • Tr:回归测试因子
  • U:加急测试因子
  • X:现场测试因子
  • A:评测机构资质因子

(3)测试人工成本:LC=UW*DF*S

  • LC:测试人工成本
  • 调整后的工作量=未经调整的工作量UW*调整因子*
  • 测试人工成本=调整后的工作量*每人日的成本

(4)测试工具成本:IC=OT+RT

  • 测试工具成本=自有工具的费用+租赁工具成本。
  • OT:自有工具的费用。例如一个工具用5年,我们项目只用半年,那么就需把买工具的钱平均到每一天,然后乘以半年的时间,就是自有工具的费用。
  • RT:租赁工具的租赁费。

(5)测试直接成本:DC=LC+EC+IC

  • 直接成本=人工成本+环境成本(人工成本的20%)+工具成本

(6)测试间接成本:不宜超过个DC的20%

  • 间接成本=最多不能超过直接成本的20%。

(7)测试成本:STC=DC+IDC

  • 测试总成本=直接成本+间接成本。

四、软件测试成本估算示例

1、软件测试成本的各项成本及各因子 系数示例

2、软件测试的人工成本工作量计算

  • UW=TW+SR+DR
  • UW=10+1+2=13(人日)

3、软件测试成本调整因子

  • DF=C*I*R*U*X*A*(1+n*Tr)
  • DF=1.0*1.0*1.0*1.0*1.0*1.0*(1+0.6)

4、测试人工成本计算

  • LC=UW*DF*S
  • LC=13*1.6*1000=20800(元)

5、测试工具成本计算

  • OT=(1000000/5+1000000*20%)/200*5=10000(元)

6、无租借设备

  • RT=0(元)

7、总的测试工具成本

  • IC=OT+RT
  • IC=10000+0=10000(元)

8、软件测试直接成本计算

  • DC=LC+EC+IC
  • DC=20800+20800*20%+10000=34960(元)

9、软件测试成本

  • STC=DC+IDC
  • STC=349600+349600*20%=41952(元)
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
目录 一 软件测试 从零开始 5 1.1 引言 5 1.2 测试准备工作 5 1.2.1 向有经验的测试人员学习 5 1.2.2 阅读软件测试的相关书籍 6 1.2.3 走读缺陷跟踪库中的问题报告单 6 1.2.4 走读相关产品的历史测试用例 6 1.2.5 学习产品相关的业务知识 6 1.3 识别测试需求 7 1.3.1 主动获取需求 7 1.3.2 确认需求的优先级 8 1.3.3 加入开发小组的邮件群组 8 1.3.4 与开发人员为邻 8 1.4 测试用例设计 8 1.4.1 测试用例的基本格式 8 1.4.2 重用同类型项目的测试用例 9 1.4.3 利用已有的软件 Checklist 9 1.4.4 加强测试用例的评审 10 1.4.5 定义测试用例的执行顺序 10 1.5 测试用例执行 10 1.5.1 搭建软件测试环境,执行测试用例 10 1.5.2 测试执行过程应注意的问题 11 1.5.3 及时更新测试用例 11 1.5.4 提交一份优秀的问题报告单 12 1.6 测试结果分析 12 1.7 总结 13 二 软件测试的常识 13 2.1 引言 13 2.2 软件测试常识 13 2.2.1 测试是不完全的(测试不完全) 13 2.2.2 测试具有免疫性(软件缺陷免疫性) 14 2.2.3 测试是 “ 泛型概念 ” (全程测试) 14 2.2.4 80-20 原则 14 2.2.5 为效益而测试 15 2.2.6 缺陷的必然性 15 2.2.7 软件测试必须有预期结果 15 2.2.8 软件测试的意义 - 事后分析 15 2.2.9 结论: 15 三 浅谈软件开发中的注意事项 16 3.1 项目设计 16 3.2 设计变化和需求变化 16 3.3 代码编写 17 3.3.1 源程序文件结构 17 3.3.2 界面设计风格的一致性 17 3.3.3 编辑风格 17 3.3.4 命名规范 18 3.4 BUG修补 18 3.5 开发人员的测试 18 四 软件测试的若干问题 19 4.1 前言 19 4.2 博弈的各方 19 4.3 测试的过程 20 4.4 测试所具备的素质 20 4.5 自动化测试 20 4.6 测试的误区 21 五 浅谈功能测试用例模板设计 21 5.1 Excel 模版 21 5.2 测试用例状态转换分析 23 六 如何提高软件质量 23 6.1 什么是质量 24 6.2 流程对质量的贡献 25 6.3 流程与技术 27 6.4 全面质量管理 28 6.5 关注测试 29 6.6 成功的铁三角 30 6.7 国际上流行的质量标准 30 6.8 如何起步 32 七 ISO和CMM,我们该选择谁 32 7.1 管理水平的适用性 33 7.2 复杂度的适用性 33 7.2.1何谓研发过程复杂度 34 7.2.2 何谓组织机构复杂度 34 7.3 量化管理的适用性上 35 7.4 结论 36 八 如何做好单元测试 36 8.1 前言 36 8.2 组织结构应该保证测试组参与单元测试 36 8.3 加强单元测试流程规范性 37 8.3.1 制订单元测试的过程定义 37 8.3.2 单元测试工作产品必须纳入配置管理 38 8.3.3 必须制订覆盖率指标和质量目标来指导和验收单元测试 38 8.3.4 加强详细设计文档评审 39 8.4 单元测试者技能的提高 39 8.4.1 加强对单元测试人员的技能培训 39 8.4.2 必须引入工具进行辅助 40 8.4.3 单元测试者加强对被测软件的全面了解 40 8.5 结尾 40 九 漫谈人机界面测试 41 9.1 一致性测试 41 9.2 信息反馈测试 42 9.3 界面简洁性测试 42 9.4 界面美观度测试 42 9.5 用户动作性测试 43 9.6 行业标准测试 43 9.7 小结 44 十 基于Web的系统测试方法 44 10.1 功能测试 45 10.1.1 链接测试 45 10.1.2 表单测试 45 10.1.3 Cookies测试 45 10.1.4 设计语言测试 45 10.1.5 数据库测试 46 10.2 性能测试 46 10.2.1 连接速度测试 46 10.2.2 负载测试 46 10.2.3 压力测试 46 10.3 可用性测试 47 10.3.1 导航测试 47 10.3.2 图形测试 47 10.3.3 内容测试 47 10.3.4 整体界面测试 47 10.4 客户端兼容性测试 48 10.4.1 平台测试 48 10.4.2 浏览器测试 48 10.5 安全性测试 48 10.6 总结 49 十一 为盈利而测试 49 11.1 引言 49 11.2 什么是软件测试 50 11.3 六个误区 50 11.3.1 误区一:忽视对正常输入的测试 50 11.3.2 误区二:忽视设计阶段的参与与评估 50 11.3.3 误区三:忽视测试计划与测试文档的建立及维护 51 11.3.4 误区四:忽视缺陷的分析,报告及跟踪 51 11.3.5 误区五:错误的测试目标及测试终止条件 51 11.3.6 误区六:不懂得合理调配使用测试人员的知识技能结构 51 11.4 软件质量与软件测试 52 11.5 软件测试的经济目的 54 11.5.1 满足用户需求,提高产品的竞争力,最终提高产品的销售量 54 11.5.2 尽早发现缺陷,降低后继质量成本 54 11.6 何时应当停止测试 56 十二 整体性能测试剖析 57 十三 性能测试工具之研究 62 13.1 性能测试的意义 62 13.2 性能测试工具综述 63 13.3 性能测试工具的体系架构 64 13.4 虚拟用户产生器 Vugen 65 13.5 Proxy 二次捕获的问题 67 13.6 关联的问题 68 13.7 脚本的问题 70 13.8 Conductor 和 Player 部分 71 13.9 Conductor 和 Player 的技术要点 72 13.10 数据分析工具 Analysis 72 13.11 结束语 72 十四 性能测试原理及性能测试实例分析 73 14.1 软件测试中的性能测试 73 14.1.1 性能测试的含义 73 14.1.2 性能测试的分解 73 14.2 一个性能测试实例 74 14.2.1 被测系统 74 14.2.2 对被测系统进行性能测试 75 14.5 总结 80 十五 软件GUI测试中的关注点 80 15.1 不能不说的二个问题 81 15.1.1 软件测试中的“二八”原则 81 15.1.2 软件黑盒测试解决的问题 81 15.2 软件黑盒测试常见错误类型及说明 81 15.2.1 用户界面错误 81 15.2.2 功能性 81 15.2.3 人机交互 82 15.3 命令结构和录入 87 15.3.1 不一致性 87 15.3.2 “最优化” 87 15.3.3 菜单 89 15.4 遗漏的命令 90 15.4.1 状态转换 90 15.4.2 危机预防 90 15.4.3 由用户进行的错误处理 91 15.4.4 其他问题 91 15.5 程序僵化 92 15.5.1 用户可调整性 92 15.5.2 控制方式 93 15.6 性能 94 15.6.1 降低程序速度 94 15.6.2 缓慢回应 94 15.6.3 如何减少用户吞吐量 94 15.6.4 反应拙劣 94 15.6.5 没有提前输入 95 15.6.6 没有给出某个操作会花很长时间的警告 95 15.6.7 程序太多提示和询问 95 15.6.8 尽量使用简单命令和提示 95 15.7 输出 95 15.7.1 不能输出某种数据 95 15.7.2 不能重定向输出 95 15.7.3 与一个后续过程不兼容的格式 96 15.7.4 必须输出的很少或很多 96 15.7.5 不能控制输出布局 96 15.7.6 荒谬的精度输出级别 96 15.7.7 不能控制表或图的标记 96 15.7.8 不能控制图形的缩放比例 96 15.8 错误处理 96 15.8.1 错误预防 96 15.8.2 错误检测 97 15.8.3 错误恢复 98 15.8.4 边界相关的错误 99 15.8.5 计算错误 100 15.9 小结 100 十六 软件测试技术 100 16.1 软件测试基础 101 16.1.1 测试目标 101 16.1.2 测试原则 101 16.1.3 可测试性 102 16.2 测试用例设计 104 16.3 白盒测试 104 16.4 基本路径测试 105 16.4.1 流图符号 105 16.4.2 环形复杂性 106 16.4.3 导出测试用例 106 16.4.4 图矩阵 108 16.5 控制结构测试 108 16.5.1 条件测试 108 16.5.2 数据流测试 110 16.5.3 循环测试 111 16.6 黑盒测试 112

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值