DevOps | 产研协同效能提升之评审、审批流、质量卡点
研发过程中有各种需求的评审、审批流和质量卡点,有的是为了质量把关,有的是为了彰显权力,还有一些是为了信息告知。本文主要讨论在软件开发过程中涉及的评审、审批和质量卡点三种情况,同时探讨对研发流程的影响,在这过程中如何去提效。
同团队内部评审
同团队之间的评审包括产品团队内部的PRD评审,RD团队内部的方案、架构评审,QA团队内部的测试用例评审、运维内部的方案评审等。团队内部之间的评审的主要目的是确保工作的正确性、准确性、
团队内部之间的评审有助于
- 有助于尽早发现方案、文档、代码、测试用例中的问题,这样可以用最小的代价去解决。保持每个人的工作质量保持在和团队整体一个水平上。
- 有助于个人业务能力的提升。既然知道要团队内部评审,每个人会更注重工作质量,更能做到「想清楚、写出来、讲明白」。而不是「凑合」「差不多」,但凡评审前「凑合」的点,评审时多半也会被别人看出来。与其被指出来再去改,不如事先就解决掉,这样做会驱动每个人事先去多做功课。
- 有助于团队内部知识共享。现在的企业中工作节奏都很快,每个人都负责相对比较窄、比较专业的一个方面,对其他人负责的内容了解的不多。通过团队内部的评审有助于大背景的了解,知识的共享,和团队整体的能力水平提升。
- 也有助于团队成员之间做工作备份,互相支撑,一起把团队工作搞定。
不同团队间的评审
- 不同团队间,从不同的角度去评审内容,给出意见和反馈,有助于更早地发现问题和解决问题
- 从不同的专业角度去评审内容,而不仅仅是内容的正确性和完备性上,还包括评审内容带来的成本、影响的性能、涉及的安全等。
- 有利于不同团队之间的合作。事前把事情说清楚,每个人都为做好事情做出贡献;而不是事后出了事情,互相指责,互相甩锅。
不同团队间的审批
主要是涉及资源申请、占用和安全评估
资源管控和安全相对来说,不如产研协作那么紧密。当产研协作过程中需要这方面支持的时候才会引入对应的团队。而资源的占用和安全评估,对于产品和公司来说又是一个非常重要,不能忽视的问题,所以会形成审批。
通常情况下不同团队间还主要是「评审」,而不是「审批」。这样做也助于团队协作,高效产出。「评审」更像是大家都在想办法努力做好一件事,而「审批」更像是某种权力的彰显,级别的象征。
质量卡点
质量卡点的设计要格外小心。好的质量卡点能及时发现问题,避免风险和及时止损,但是过多、过于繁重的质量卡点也会延缓软件研发流程的进度,尤其是这些过多、过于繁重的质量卡点本身质量较差、服务不稳定、成本较高、且很耗时。
变更评审
变更评审,如果不涉及团队间的协作,团队内部告知即可,是一种「周知」的性质。如果变更涉及到团队间的协作,这个时候就需要团队间的评审。这个时候就要视情况来拉通、对其范围,总的原则是取最小集合,小范围内决策大范围周知,不要拉大会去讨论。
比如产品更变了一个需求按钮的颜色,对各方工作量的影响不大,此时仅仅需要设计师变更颜色后,拉上前端小伙伴和QA,四方一起确认下即可。
比如产品需要在原先的需求上多展示一个数据,样式可以沿用之前的设计,但是这个数据需要后端接口的支持,涉及前后端联调、QA验证,这个时候就需要产品、项目经理、前后端研发、QA来进行评审和确认。
比如产品上线后访问量激增,服务负载较高,这个时候就需要研发提交一个扩容的变更申请,在资源允许范围内直接扩容即可;如果超过资源允许范围就会比较麻烦,需要和运维小伙伴沟通资源情况,同时需要业务负责人介入,因为已经涉及成本核算、增加预算问题。
上下级之间的审批
对于公司人力、行政、财务、法务、采购过程中流程,经常有上下级间的审批流,但是对于产品-研发-测试-运营活动过程中,强制加入上下级的审批,如果上级领导的审批不能给这个流程增加价值,只是为了彰显手中的权力,我觉得这是很奇葩的。
举个例子,团队之间代码评审完非要找老板点个确认按钮,很少针对业务逻辑,代码质量、规范、可读性、可维护性等提出观点,那这样的评审的意义不大。只是拉长这个流程、拖延进度、浪费时间、彰显权力的审批没有任何意义。
本篇总结
整体上我倾向于打散团队,形成一个扁平化的组织,提供上下文,团队内部可以自行高效决策。让一线人员决定炮火打向哪里,而不是坐在后方的办公室人员。对于各种各样的审批流,除了合规、设计、安全等因素外尽量缩短,没有带来任何价值的审批节点能省则省,这样才能切实的提效。
相关文章
DevOps|从腾讯TEG CDC解散聊技术中台
DevOps|中式土味OKR与绩效考核落地与实践
DevOps|研发效能+项目经理PMO
AI DevOps | ChatGPT 与研发效能、效率提升(中)
DevOps|AGI : 智能时代研发效能平台新引擎(上)
DevOps | 产研协同效能提升之评审、审批流、质量卡点的更多相关文章
- 拥抱开源,共建生态 - 开源生态与效能提升专场 | CIF 精彩看点
随着软件技术日新月异的发展,GitHub 已经进化成为人类软件的基因库,遇到问题第一时间在 GitHub 上寻求合适的解决方案,已经逐渐变成工程师处理问题的常见方法.据 GitHub 年度报告显示,2 ...
- 十倍效能提升——Web 基础研发体系的建立
1 导读 web 基础研发体系指的是, web 研发中一线工程师所直接操作的技术.工具,以及所属组织架构的总和.在过去提升企业研发效能的讨论中,围绕的主题基本都是——”通过云计算.云存储等方式将底层核 ...
- 基于微服务的DevOps落地指南 交付效率提升40%
基于微服务的DevOps落地指南 交付效率提升40% 2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ... 珍爱网是以“网络征选+人工红娘”模 ...
- 超线程技术——超线程技术让(P4)处理器增加5%的裸晶面积,就可以换来15%~30%的效能提升,本质单核模拟双核!和异步编程的思想无异。
超线程是Intel 所研发的一种技术,于2002年发布.超线程的英文是HT技术,全名为Hyper-Threading,中文又名超线程.超线程技术原先只应用于Intel Xeon处理器中,当时称为Sup ...
- 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践
作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...
- 新型赌博黑产攻击肆虐网吧: LOL博彩引流+棋牌盗号
https://mp.weixin.qq.com/s/BxnovV6jKqPkYfHEzjd_FA 新型赌博黑产攻击肆虐网吧: LOL博彩引流+棋牌盗号 看雪学院 2019-04-21
- Java提升四:Stream流
1.Stream流的定义 Stream是Java中的一个接口.它的作用类似于迭代器,但其功能比迭代器强大,主要用于对数组和集合的操作. Stream中的流式思想:每一步只操作,不存储. 2.Strea ...
- DevOps | 如何快速提升团队软件开发成熟度,快速提升研发效能?
今天一个小伙伴问我,如何「快速提升」一个团队的软件开发成熟度?我犯难了.我个人理解一个团队的软件开发成熟度涉及的东西很多,但最简单最直接的方法就是发钱涨工资,可是估计很多公司不愿意,那就只有扣了. 快 ...
- DevOps|研发效能价值如何衡量
现在很多公司都在做或者计划做研发效能,也知道研发效能工作很重要,能提高产研运同学的协同效率,提高员工的工作效率和质量,提高业务交付效率和交付质量,但是价值有多大?效率又有多高呢?因为不容易说清楚,所以 ...
- 京东 vue3 组件库震撼升级,如约而至!
京东零售开源项目 NutUI 是一套京东风格的轻量级移动端 Vue 组件库,是开发和服务于移动 Web 界面的企业级产品.经过长时间的开发与打磨,NutUI 3.0 终于和大家见面了!3.0 版本在技 ...
随机推荐
- 去中心化金融-Lec3
区块链 (什么是区块链?)区块链提供了一种无需可信的参与方,能够让多个参与方实现合作的方式(若存在可信的第三方,则不需要区块链:但是金融系统中往往没有可信的第三方) 终端用户工具:user inter ...
- pytest—添加日志
开头 保存工作中常用的日志. pytest有自己的日志管理的开关,不需要用到python的日志库 开始 在文件根目录下新建一个pytest.ini文件 基本设置 [pytest] log_cli=tr ...
- 2021-07-16:三个无重叠子数组的最大和。给定数组 nums 由正整数组成,找到三个互不重叠的子数组的最大和。每个子数组的长度为k,我们要使这3*k个项的和最大化。返回每个区间起始索引的列表(索
2021-07-16:三个无重叠子数组的最大和.给定数组 nums 由正整数组成,找到三个互不重叠的子数组的最大和.每个子数组的长度为k,我们要使这3*k个项的和最大化.返回每个区间起始索引的列表(索 ...
- Redis使用lua脚本实现库存扣减
为什么使用Lua脚本为什么能合并多个原子操作? Redis官方文档:https://redis.io/docs/manual/programmability/eval-intro/ Redis 保证脚 ...
- XAF中XPO与EFCore的探讨
前言 首先抛出一个问题,在XAF项目中,我们现在可不可以选择EFCore?每个人可能都有自己的答案,这也没有什么标准答案.下面是我的个人看法,在刚接触XAF时,如何选择ORM,我也是犹豫了许久,最终选 ...
- AcWing 1023. 买书
小明手里有n元钱全部用来买书,书的价格为10元,20元,50元,100元. 问小明有多少种买书方案?(每种书可购买多本) 输入格式 一个整数 n,代表总共钱数. 输出格式 一个整数,代表选择方案种数. ...
- [abc279 G] At Most 2 Colors
G - At Most 2 Colors (atcoder.jp) 重点讲解方法三,因为方法三是蒟蒻都能想出来的方法一和方法二都可以借助方法三的思想推出 方法一 这是最简单的设置状态的方法,\(dp[ ...
- QT 绘制波形图、频谱图、瀑布图、星座图、眼图、语图
说明 最近在学中频信号处理的一些东西,顺便用 QT 写了一个小工具,可以显示信号的时域波形图.幅度谱.功率谱.二次方谱.四次方谱.八次方谱.瞬时包络.瞬时频率.瞬时相位.非线性瞬时相位.瞬时幅度直方图 ...
- 500行代码手写docker-实现硬件资源限制cgroups
(5)500行代码手写docker-实现硬件资源限制cgroups 本系列教程主要是为了弄清楚容器化的原理,纸上得来终觉浅,绝知此事要躬行,理论始终不及动手实践来的深刻,所以这个系列会用go语言实现一 ...
- ODOO13之 八:Odoo 13开发之业务逻辑 – 业务流程的支持
在前面的文章中,我们学习了模型层.如何创建应用数据结构以及如何使用 ORM API 来存储查看数据.本文中我们将利用前面所学的模型和记录集知识实现应用中常用的业务逻辑模式. 本文的主要内容有: 以单据 ...