从TMMI角度谈谈质量度量

简介: 在TMMi体系中,缺陷逃逸率是用来评估交付质量的衡量指标,如果该值低于某个阈值,则可以判断交付质量的好坏。

我在前面的文章《聊聊我对质量度量的看法》中曾谈到线上缺陷逃逸率的话题。


前几天技术群有同学问我该如何理解线上缺陷逃逸率,群里有位同学是这么如何的:


“缺陷逃逸率,Defect Escape Percentage,简称DEP,是指软件产品发布后发现的缺陷数量与该软件产品在整个生命周期发现的所有缺陷数量的比率”。


在TMMi体系中,缺陷逃逸率是用来评估交付质量的衡量指标,如果该值低于某个阈值,则可以判断交付质量的好坏。


我在之前的工作中曾经参与过一段时间的企业TMMi改进,这篇文章,我会结合关于TMMi的一些技术笔记,来谈谈质量度量和过程改进的一些话题。


什么是TMMi?


  1. 定义:TMMi即Test Maturity Model Integration(测试成熟度模型集成)。
  2. 来源:由TMMi基金会开发的一个非商业化的、独立于组织的测试成熟度评估模型。
  3. 目的:推动组织使测试过程从临时的和未管理的状态进化为已管理、已定义、已测量和优化的状态。
  4. 标准:TMMi是与国际标准相一致的、由业务/目标驱动的测试过程改进详细模型,是一个过程改进的阶段型架构。
  5. 分级:TMMi分为5个级别,规定了成熟度级别和测试过程改进路径。每个级别都有一组过程域,组织需要实施这些过程域来达到对应的成熟度级别。

a.TMMi1级—初始

b.TMMi2级—已管理

c.TMMi3级—已定义

d.TMMi4级—已测量

e.TMMi5级—优化


什么阶段需要TMMi?


TMMi是一种测试成熟度评估模型,也是一个测试过程改进的参考阶段性架构。


因此评估是否需要TMMi来推动质量度量和过程改进,需要先对企业或团队当前的测试现状进行梳理评估。结合我参与TMMi落地改进的经验和笔记,一般来说当具有如下几个特征的情况下,可以进行TMMi落地改进。


  1. 软件产品风险无法识别或识别度不高(风险识别);
  2. 测试环境未形成统一规范,管理和维护成本高(环境稳定);
  3. 测试生命周期活动没有明确的定义和裁剪规则(准入准出规则);
  4. 现有测试体系过重或不适配团队,产品交付质量不高(测试体系效率);
  5. 质量度量不清晰,无法很好的评估需求/过程/交付质量(质量度量和改进);


上述几条现状,是影响我们日常工作顺利开展的元凶,也是大家吐槽测试背锅的原因。


当然,在项目启动阶段,一定要注意如下几个事项:


  1. 获得高层支持(确保足够的资源投入);
  2. 设定清晰、可度量、可实现的目标(质量度量和改进本身就是成本);
  3. 成立正式&专门的改进小组(确保人的投入、权力到位和明确的责任);


TMMi如何落地实施?


确定要进行TMMi改进后,就可以进行项目立项。一般来说TMMi落地可分为如下几个阶段:


  1. 项目立项启动;
  2. 组建专门的TMMi过程改进团队;
  3. 制定TMMi过程改进计划并评审通过;
  4. 项目实施(参照TMMi的分级标准和当前所处阶段);
  5. 项目试点验证(挑选试点项目,小范围接入验证,评估效果);
  6. 根据试点验证结果不断改进评估(不断扩大验证范围,不断评估);
  7. TMMi正式评估,得到认证(需要专门的外部机构或基金会认证,发放证书);


在项目落地实施过程中,要注意如下几点:


  1. 制定计划要明确不同阶段和里程碑;
  2. 每个阶段目标清晰,目标一定要可度量可实现;
  3. 需要有专门的人员和流程&工具来协助监控&控制改进过程;
  4. 流程要清晰,术语要统一且做好宣讲,保证各团队达成共识;
  5. 改进过程和进度需要展示出来,并且要收集各团队的有效反馈;


从哪些角度度量质量?


「需求设计质量」

我们谈软件质量,不可避免要从它的源头说起,而源头就是需求和设计阶段要做的事情。这个阶段包括原型图、PRD文档、交互设计、技术方案、测试用例等几项重要产出物,当然他们有一定的前后依赖关系。


在需求设计阶段,我个人认为比较重要的有如下几点指标:


  1. 需求评审通过率(是否有遗漏、描述不清、存在逻辑漏洞等);
  2. 设计评审通过率(设计是否满足需求要求、是否合理美观友好);
  3. 方案评审通过率(方案实现难易程度、可测性、是否需要更多资源);
  4. 用例评审通过率(场景是否尽可能覆盖、和技术方案实现是否吻合);


为什么要做大量的评审工作呢?因为在这个阶段做风险评估和控制,是投入产出最高的。


评审的价值在于从用户使用场景角度出发,通过评审提问,把需求逐步澄清并形成验收条件,产、研、测三方共同确认,形成共识,以保证大家对需求的认知不发生偏差,为后续团队正确的做事提供有价值的指导。


「研发过程质量」


测试的本质是验证研发交付的产出物是否达到需求设计及预期的标准。并不能直接带来质量的提升,只能通过种种手段多维度去验证是否达标,并通过流程规范、度量标准等去保障最终的交付物达标。


我们常说的各种测试技术手段,都是验证和保障交付质量的手段,而不是构建质量的手段。在研发过程阶段,我个人认为比较重要的有如下几点指标:


  1. 提测准时率(便于评估进度、资源投入和风险);
  2. 构建成功率(构建成功率很大程度能反映出研发提测质量。如果经常编译构建失败或自动化测试通过率较低,因为这意味着最基本的需求实现出了问题);
  3. 缺陷收敛率(反映缺陷在研发过程阶段的变化趋势和缺陷修复的时效性问题。一般在测试阶段的中前期即单测&集成测试阶段会暴露大量缺陷,到系统测试和回归阶段缺陷就应该有明显下降和收敛,降低产品验收和交付风险);
  4. 缺陷reopen率(问题修复可能会带来新的问题,reopen指标可以从一定程度上评估缺陷修复的质量。如果reopen率比较高,那么很可能研发侧出现了问题,需要引起重视和寻找原因,尽快解决);


当然,上述的度量角度有一些基础的前提,比如:开发&测试环境的稳定性、测试流程和体系是否标准和高效,是否有较好的工具支撑度量过程。


「用户使用质量」


用户使用质量,指的是软件线上发布后,我们对用户使用过程进行追踪并采集数据进行评估度量的过程常见的度量指标有:


  1. 线上缺陷逃逸率(线上发现的缺陷);
  2. 线上问题留存率(线上发现的缺陷留存时长,可以用来评估修复的时效和对线上质量的重视程度);
  3. 用户反馈建议量(这里仅针对的是用户针对功能的反馈或者客诉,不包含业务活动的范围);


最后,所有的质量度量和改进措施,在实际应用实践中应该“量力而为”,因为质量本身就是有成本的。应该在有限的资源条件下提高质量,这也是质量保障和改进应该追求的目标

相关文章
|
6月前
|
人工智能 测试技术
AI 写的测试用例,你敢直接用吗?这套判断方法,很多团队正在用
本文直击AI写测试用例的核心矛盾:不问“会不会写”,而聚焦“能不能用”。提出四大落地判断标准——业务贴合度、可执行性、异常覆盖力、规范一致性,帮测试工程师快速甄别AI用例价值,实现从“生成即用”到“工程化采纳”的跃升。
|
数据库
达梦数据库的物理备份和还原简解
达梦数据库的物理备份和还原简解
1346 1
达梦数据库的物理备份和还原简解
|
5月前
|
人工智能 自然语言处理 JavaScript
从零开始构建你的第一个Claude Skill:手把手打造AI专属技能
本文手把手教你零基础打造专属Claude Skill:无需复杂后端,会Markdown或基础Python/JS即可。详解SKILL.md规范、大小写陷阱、角色设定、自动化脚本集成与实战调试技巧,助你把Claude从“健忘实习生”升级为精准执行的“领域特种兵”。
|
JSON Ubuntu Java
Elasticsearch聚合学习之四:结果排序
在前面的实战中,聚合的结果以桶(bucket)为单位,放在JSON数组中返回,这些数据是没有排序的,今天来学习如何给这些数据进行排序
791 0
Elasticsearch聚合学习之四:结果排序
|
SQL 存储 数据采集
【技术分享】元数据与数据血缘实现思路
【技术分享】元数据与数据血缘实现思路
8289 0
|
8月前
|
人工智能 Java API
Java Spring Boot 拥抱 AI 原生:从 API 调用到架构重构的进化之路
在AI时代,Java开发者需突破“调用API”的浅层模式,以Spring Boot为基石,推动从“菜单驱动”到“意图驱动”的范式变革。通过构建智能体为核心、工具化Service、记忆与安全可控的四层架构,结合工程化治理,实现AI原生应用的平滑演进。
312 0
|
12月前
|
存储 JSON Java
淘宝店铺全量商品接口实现:从店铺解析到批量采集技术方案
本文介绍了淘宝店铺商品数据采集的技术实现方案,涵盖店铺页面解析、商品分页遍历及反爬策略应对。内容聚焦于合规性要求与核心技术难点,提供基于Python的实战代码,实现高效、稳定且符合平台规则的商品数据批量获取,适用于电商分析与竞品监控场景。
|
弹性计算 固态存储 Linux
阿里云服务器、轻量应用服务器、gpu云服务器收费标准与实时活动价格参考
云服务器ECS、轻量应用服务器和gpu云服务器是阿里云的主要云服务器产品,目前轻量应用服务器2核2G收费标准为60元/月,活动价格只要36元/1年或68元1年,云服务器1核1G包月收费标准最低为24.0元/月,GPU云服务器中gn6i实例4核15G配置月付1681.00/1个月起,gn6v实例8核32G配置月付3817.00/1个月起。本文为大家整理汇总了阿里云服务器、轻量应用服务器、gpu云服务器的最新收费标准与活动价格情况,以表格形式展示给大家,以供参考。
|
机器学习/深度学习 PyTorch 语音技术
语音识别模型
Whisper 是 OpenAI 推出的语音处理项目,基于深度学习,具备高度智能化和准确性的语音识别、翻译和生成能力。通过丰富的数据集和先进的注意力机制,Whisper 在多种语言环境下表现出色,支持语音识别、翻译、口语识别和语音活动检测等多种任务。用户可以通过 Python 代码或命令行轻松使用 Whisper,完成高质量的语音处理任务。官网:https://openai.com/research/whisper,GitHub:https://github.com/openai/whisper。
|
Java Android开发 C++
【Android NDK 开发】JNI 方法解析 ( C/C++ 调用 Java 方法 | 函数签名 | 调用对象方法 | 调用静态方法 )(一)
【Android NDK 开发】JNI 方法解析 ( C/C++ 调用 Java 方法 | 函数签名 | 调用对象方法 | 调用静态方法 )(一)
581 0
【Android NDK 开发】JNI 方法解析 ( C/C++ 调用 Java 方法 | 函数签名 | 调用对象方法 | 调用静态方法 )(一)