【笔记】质量保障体系

news2024/11/20 2:35:00

一、什么叫质量保障体系?

质量保障体系,是指指贯穿研发流程进行的一系列质量活动。通过方案选型、策略决策、工具支撑、组织协同分工等,把质量活动进行系统化、标准化、流程化。其目的是保障业务质量。

质量保障体系=质量活动+工具平台+质量流程。

二、紧贴业务制定精细化质量标准:

传统软件的质量标准的定义包括功能性,可靠性,易用性,效率,维护性与可移植性六个特性(根据GB/T16260.1),以此为参考,互联网服务的质量标准一般强调功能性,稳定性,性能,用户体验

质量标准以对业务的影响方式、程度综合定义。要通过完整细致的质量标准,来牵引全面高效的质量保障体系。

三、质量活动、工具平台、质量流程的定义

3.1 质量活动:

只要是对质量能够起到保障作用的工作事项,都可以认为是一项质量活动。如方案评审、CR、验收、灰度发布等。

3.2 质量工具平台:

好的质量保障体系一定要追求质量活动的工程化(工具化、平台化),因为质量工具能解决如下几类问题:

  1. 手工无法执行

  1. 工具平台减少经验依赖

  1. 大幅提高执行效率

3.3 质量流程:

质量活动之间的串联组合就是质量流程。定义了每个质量活动的时间节点,准入准出,执行标准,以此保证每个质量活动的效果,进而保证整个项目质量结果。

四、如何紧贴业务建设质量保障体系?

4.1 结合业务特点做质量活动的定制。

原则一:针对业务/产品的特有问题设计质量活动。对业务构建一个问题地图,然后设计对应的质量活动去发现这些问题。

原则二:针对业务/产品的研发过程(一般为系分,开发,联调,发布)设计质量活动的部署点。按照“最早发现成本越低”的原则,在引入问题的环节部署。比如系分阶段。

质量活动如何紧贴业务?

1.分析业务的所有问题类型和所有引入环节。

2.按问题引入环节设计多道防线,做到引入环节的第一时间覆盖。

  1. 在每个防线设计若干质量活动。做到防线内问题的分布空间覆盖。

4.2 结合业务特性识别重复性工作,建设质量工具/平台。

新建质量保障体系时:默认需要建设一套基础质量平台(如流程平台,bug管理平台,自动化框架等),要尽量选型市面或公司内较成熟的质量工具平台,减少新开发成本。

结合业务特点识别仍存在的较高重复性工作:建设符合业务特性的质量工具/平台,如测试数据构造工具,页面检测工具,结果对比工具等。

结合业务发展趋势:选择重复性持续增加的质量活动,或更细的原子动作,在恰当时间沉淀能力,建设质量工具平台。

4.3 紧贴业务研发模式制定质量流程。

1.分析业务质量要求,业务发展阶段特点、业务角色职责分工。确定质量流程在严谨和灵活之间的平衡

2.分析研发模式特点,确定质量流程和研发流程的耦合点,定义质量环节,制定交付标准

3.跟随业务发展定期review质量流程适用性,及时刷新调整。

五、有了质量保障体系还要有质量策略:

在业务质量保障体系中,在质量、效率、成本三者中取平衡,作取舍,在具体项目中,定义质量防线、质量活动的策略性标准。基于此,要持续跟踪线上业务质量表现,定期回溯分析质量策略执行情况,做质量策略调整。

当建设了比较完备有效的质量保障体系后,在落地应用时,结合现实情况做更具体的执行标准,就是质量策略。

比如,质量保障体系要求回归测试要完整,那么质量策略可以进一步定义完整回归的具体要求:全部P0P1用例(不区分手工自动化) or 全部自动化用例 or 人工评估的所有场景用例 or 代码变更分析的所有自动化用例 等。

比如:质量保障体系约定了低风险项目可开发自测,那么质量策略可以进一步定义低风险项目包括bug fix,页面展示修改类项目等。

小结:质量策略是质量保障体系的细化深化。

1.质量策略是具体项目的执行标准。通过对不同类型项目的质量、效率、成本做测算分析,制定平衡取舍策略。

2.随着业务发展、质量能力提升,质量策略需要保持刷新。

3.中大型团队需要对质量策略达成共识,来保证同类项目的执行一致性。

六、质量工具平台是如何支撑质量保障体系的:

质量工具平台在最开始并不是质量保障体系的必需环节,导致被大家忽略。

质量工具平台分为两类价值定位:面向质量or面向效率。

面向质量的工具平台,要衡量质量问题的解决程度。可以结合上文定义的质量活动、质量防线,先确定质量工具平台是在支撑哪个活动/防线,再衡量对活动/防线的支撑覆盖率,是解决全部问题还是其中某一类问题,最后衡量最重要的质量解决效果(覆盖率,发现率,召回率,准确率等)。

面向效率的工具平台,要找到效率对比对象。人工或某个使用中的工具平台,在完成质量效果大致相当的前提下,才能相互对比:人工执行效率,已有工具平台执行效率,新工具平台执行效率。在效率对比有优势情况下,还要加上一次性成本和维护性成本的考量:接入成本、迁移成本、培训成本、每次使用成本、维护升级成本等。

通常质量保障体系在初建时重点解决质量问题,质量稳定期,质量保障体系要转向追求效能成本,支持业务快速发展。业务持续增长,质量保障体系也要及时升级,做到质量、效率动态平衡。

小结:质量工具平台从质量和效率两个角度对质量保障体系进行支撑。

对质量活动、防线的支撑覆盖度、力度越大,质量或效率效果越好,质量工具平台价值越大。基于质量效率价值再追求工具平台自身的技术价值。

如何紧贴业务建设质量保障体系

关于测试这件事

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191409.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【My Electronic Notes系列——正弦波振荡电路】

目录 序言: 🏆🏆人生在世,成功并非易事,他需要破茧而出的决心,他需要永不放弃的信念,他需要水滴石穿的坚持,他需要自强不息的勇气,他需要无畏无惧的凛然。要想成功&#…

每天10个前端小知识 【Day 1】

前端面试基础知识题 1. 什么是尾调用优化和尾递归? 尾调用的概念非常简单,一句话就能说清楚,就是指某个函数的最后一步是调用另一个函数。 function f(x){ return g(x); }上面代码中,函数f的最后一步是调用函数g,这…

Axios网络请求

哈喽~大家好,这篇来看看Axios网络请求。 ​文章推荐链接SpringCloud Sentinel 使用SpringCloud Sentinel 使用将Nacos注册到springboot使用以及Feign实现服务调用将Nacos注册到springboot使用以及Feign实现服务调用微服务介绍与 SpringCloud Eureka微服务介绍与 Sp…

Spark07: 宽窄依赖、Stage的划分

一、宽依赖和窄依赖 1. 窄依赖 窄依赖(Narrow Dependency):指父RDD的每个分区只被子RDD的一个分区所使用,例如map、filter等这些算子。 一个RDD,对它的父RDD只有简单的一对一的关系,也就是说,RDD的每个partition仅仅…

Python分支循环规范:if elif for while

分支与循环 条件是分支与循环中最为核心的点, 解决的问题场景是不同的问题有不同的处理逻辑。 当满足单个或者多个条件或者不满足条件进入分支和循环, 这里也就说明这个对相同问题处理执行逻辑依据具体参数动态变化, 由此产生多种可能性&…

GAMES101笔记:辐射度量学(下)

Irradiance 定义:irradiance是单位面积上的power,这个单位面积是和入射光线垂直的方向上的单位面积。如果受光表面不垂直于光线,需要投影到垂直方向上进行计算(cosθ\thetaθ)。 Irradiance Falloff 光的Intensity…

零入门容器云网络实战-8->veth pair设备介绍

在介绍veth pair之间,先看一下下面的图, 这类东西有没有见过? 如果没有见过,赶紧看看你方圆10米之内有没有? 这就是网线,最明显的特征是有两端!即,两个水晶头 一端可以链接普通的电脑&#…

【技术调研】关于仪表盘转图片推送钉钉的技术方案调研

方案1—纯后端实现 后端写定时任务,定时启动查询服务。查询出数据集结果,拼接成Table样式,再转换成图片。推送至钉钉。 优点:只需要后端开发,不涉及前端。 缺点:太定制化,不通用,样…

Dart语法学习-数据类型

一、Dart 语言对以下类型具有支持 Numbers (int, double) Strings (String) Booleans (bool) Lists (List, also known as arrays) Sets (Set) Maps (Map) Runes (Runes; often replaced by the characters API) Symbols (Symbol) The value null (Null) Dart 要求以 main 函数…

正大国际期货:什么是黄金保证金交易?黄金保证金交易包含哪些要点?

黄金保证金交易是指在黄金买卖业务中,市场参与者不需对所交易的黄金进行全额资金划拨,只需按照黄金交易总额支付一定比例的价款,作为黄金实物交收时的履约保证。黄金保证金交易根据类型不同,主要分为期货黄金保证金交易和现货黄金…

visual studio 调试增强,实现一行代码打印调用栈

如何主动打印调用栈?如果是Java、Js,那么很简单,三行就能实现。但 VisualStudio 就复杂多了。如果不下断点,那么只能在崩溃的时候被动查看。 而使用 Backward-Cpp ,只需在项目中拖入一个hpp文件,就可以主动…

[Android]ProgressBar进度条

ProgressBar ProgressBar是进度条控件,ProgressBar的应用场景很多,比如用户登录时,后台发送请求,以及进行等待服务器返回信息等一些比较耗时的操作。这个时候如果没有提示,用户可能会以为程序崩溃了或手机死机了&#…

【数据结构】1.2 数据结构的基本概念和术语

文章目录1. 数据、数据元素、数据项和数据对象2. 数据结构逻辑结构的种类存储结构的种类3. 数据类型和抽象数据类型数据类型抽象数据类型概念小结1. 数据、数据元素、数据项和数据对象 数据(Data) 能输入计算机且能被计算机处理的各种符号的集合。 信息…

AcWing1074. 二叉苹果树(树形DP +分组背包)

AcWing1074. 二叉苹果树(树形DP 分组背包)一、问题二、分析1、状态表示2、状态转移3、循环设计三、代码一、问题 二、分析 这道题是一个在数上做分组背包问题的模型,那么为什么是分组背包呢?作者在之前的文章中进行过详细地讲解&…

VUE2常用知识

1、Vue的基本原理 【】当一个Vue实例创建时,Vue会遍历data中的属性,用 Object.defineProperty(vue3.0使用proxy )将它们转为 getter/setter,并且在内部追踪相关依赖,在属性被访问和修改时通知变化。 每个组…

工时管理:按工作时间还是完成的任务来跟踪员工的生产力?

据中国社科院的一项调查显示:我国有86%的职场人都患有拖延症;50%的人不到最后一刻绝不开始工作;13%的人没有人催不能完成工作。 拖延症对小型或成长型企业的影响是很大的,毕竟,任务永远不会因为逃避或简单地坐在那里而…

【Linux】信号保存、信号处理、可重入函数、volatile关键字、SIGCHLD信号

目录 一、信号保存 1.1 信号相关的概念名词 1.2 在内核中的表示 1.3 sigset_t与操作函数 1.4 信号设定 二、信号处理 2.1 内核空间与用户空间 2.2 内核态和用户态 2.3 信号的捕捉流程 2.4 sigaction 函数 三、可重入函数 四、volatile 五、SIGCHLD信号 一、信号保…

当今主流的网络服务应用

文件传输协议 主机之间传输文件是IP网络的一个重要功能,如今人们可以方便地使用网页、邮箱进行文件传输。 然而在互联网早期,Web(World Wide Web,万维网)还未出现,操作系统使用命令行的时代,…

webpack前端应用之基础打包

目录 前言:初识 Webpack 5 一、前端工程化 1、webpack ​ (2)主要功能: 2、webpack的使用:配置文件所需要的信息(五大配置属性) 3、示例 强调: 4、webpack中使用的loader 二…

【Java基础】003 -- Java基础概念(计算机的存储规则)

目录 计算机的存储规则 1、什么是二进制? 2、为什么计算机要使用二进制存储数据? 3、进制之间可以转换吗? 4、码表(Text文本) 5、图片数据 6、声音数据 计算机的存储规则 在计算机中,任意的数据都是…