首页 > 其他分享 >从TMMI角度谈谈质量度量

从TMMI角度谈谈质量度量

时间:2023-01-12 14:22:20浏览次数:41  
标签:TMMI 谈谈 改进 质量 测试 TMMi 缺陷 度量

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

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

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

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

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

 

什么是TMMi?

  1. 定义:TMMi即Test Maturity Model Integration(测试成熟度模型集成)。
  2. 来源:由TMMi基金会开发的一个非商业化的、独立于组织的测试成熟度评估模型。
  3. 目的:推动组织使测试过程从临时的和未管理的状态进化为已管理、已定义、已测量和优化的状态。
  4. 标准:TMMi是与国际标准相一致的、由业务/目标驱动的测试过程改进详细模型,是一个过程改进的阶段型架构。
  5. 分级:TMMi分为5个级别,规定了成熟度级别和测试过程改进路径。每个级别都有一组过程域,组织需要实施这些过程域来达到对应的成熟度级别。
    1. TMMi1级—初始
    2. TMMi2级—已管理
    3. TMMi3级—已定义
    4. TMMi4级—已测量
    5. 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. 用户反馈建议量(这里仅针对的是用户针对功能的反馈或者客诉,不包含业务活动的范围);

 

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

标签:TMMI,谈谈,改进,质量,测试,TMMi,缺陷,度量
From: https://www.cnblogs.com/imyalost/p/17046568.html

相关文章

  • 谈谈思想理性的基础
    逻辑理性、沟通理性、思想理性三者兼具,才是理性完备的人。而思想理性,是所有理性中最上乘的内功心法。我们应当如何思考?如何思考才能让自己的观点稳固而站得住脚?如何判......
  • nat是干什么的,为什么要有nat?以及谈谈ovs里使用ct实现nat功能
    博客竟然不显示更新的时间,只有个发布时间。看起来像2个月没更新一样,其实更新了几行呢。好几个东西想理一下,本来想和周记放一起了,但放一起就没有主题了。当然一搜也有一些......
  • React面试:谈谈虚拟DOM,Diff算法与Key机制
    1.虚拟dom原生的JSDOM操作非常消耗性能,而React把真实原生JSDOM转换成了JavaScript对象。这就是虚拟Dom(VirtualDom)每次数据更新后,重新计算虚拟Dom,并和上一次生成的虚拟......
  • 如何在15分钟内度量 DORA 指标?
    在这篇文章中,我们将介绍DevOps四个关键指标——DORA指标,DORA指标的度量难点,以及如何基于开源工具快速实现DORA指标的度量和持续追踪。如果你熟悉DORA指标,可以直接......
  • 【MySQL】谈谈锁的类型
    前言MySQL中的锁分为表锁以及行锁,从字面意思就可以得知,表锁是对一整张表进行加锁,而行锁是针对于特定的行。在Server层面,提供了表锁的实现,而行锁则由存储引擎实现。Innodb......
  • 简单谈谈我眼中的程序
    普通用户看来,程序就是他们能看到的用户界面,比如电脑里面装的软件,手机上装的app,浏览器能打开的网页。但是,这只是一个程序的一小部分。程序最重要的是数据,用户感知最强ui,在......
  • 【24期】请你谈谈单例模式的优缺点,注意事项,使用场景
    单例模式介绍:单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个全局对......
  • 【23期】请你谈谈关于IO同步、异步、阻塞、非阻塞的区别
    同步(synchronous)IO和异步(asynchronous)IO,阻塞(blocking)IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asyn......
  • 谈谈NAS的硬盘SATA背板
    硬盘抽拉盒硬盘抽取盒是一种内置电路设备,可以将一个普通3.5寸硬盘硬盘固定在托架上,普通硬盘可以像拉抽屉一样塞进去,与普通硬盘组合成移动硬盘的一种载体。电源线大4......
  • 谈谈Kubernetes开源社区和未来走向
    分享下Kubernetes社区资深成员与项目维护者「张磊」对于这个话题的思考。你好,我是张磊。今天我和你分享的主题是:谈谈Kubernetes开源社区和未来走向。在前面的文章中,我......