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 版本在技 ...
随机推荐
- 两种路由模式的区别(hash模式,history模式)
1. hash 带#号的,history不带#号2.hash模式用的hashChange监听路径的变化3.history用的是HTML5相关的API语法 使用pushState => 添加一条历 ...
- SRE中的SLA/SLO/SLI
SLA通俗理解 SLA 表征服务方与客户间的服务等级协议,定义服务方需保证的服务质量以及不达标情况下的服务补偿,在SRE领域,SLA 细分为 SLI.SLO 与 SLA: SLI,服务质量指标,服务的 ...
- 5219. 【GDOI2018模拟7.10】B
5219. [GDOI2018模拟7.10]B 题目大意: 考试想法: 正解: 代码: 题目大意: 现在有一个字符串 s s s 当 s [ i ] s[i] s[i]为 I I I时 a n s [ ...
- C# 当前进程是否有控制台窗口
WPF应用程序,在VS的项目属性中,可以设置输出类型: 那我们在代码中,如何判断应用的类型呢.有没有控制台?是否Windows应用程序还是控制台应用程序? Kernel32下函数GetConsoleW ...
- Python 组织列表
组织列表 在创建的列表中,元素的排列顺序是无法预测的,不能总控制用户提供数据的顺序,通过组织列表的方式,来控制列表的排序 使用方法sort()对列表进行永久性排序 sort()方法:列表中值时小写时默 ...
- 2023-05-02:如果一个正整数每一个数位都是 互不相同 的,我们称它是 特殊整数 。 给你一个正整数 n ,请你返回区间 [1, n] 之间特殊整数的数目。 输入:n = 20。 输出:19。
2023-05-02:如果一个正整数每一个数位都是 互不相同 的,我们称它是 特殊整数 . 给你一个正整数 n ,请你返回区间 [1, n] 之间特殊整数的数目. 输入:n = 20. 输出:19. ...
- 2022-01-24:K 距离间隔重排字符串。 给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k。 所有输入的字符串
2022-01-24:K 距离间隔重排字符串. 给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k. 所有输入的字符串 ...
- vue全家桶进阶之路42:Vue3 SCSS、SASS、CSS
SCSS和SASS都是CSS预处理器,它们的主要目的是简化CSS的编写,增加可维护性,并提供更丰富的功能.下面是它们与普通的CSS的区别: 语法:SCSS和SASS都具有比普通CSS更丰富的语法.其中 ...
- PHP代码审计——ThinkPHP基础
一.ThinkPHP概述 1. ThinPHP是一个轻量级的PHP框架,旨在提供快速开发Web应用程序的工具和资源.它采用了MVC(Model-View-Controller)架构,使开发人员可以更好 ...
- flutter apk启动闪退问题
今发布一个flutter apk 安装后启动时老是闪退,经过一遍又一遍查找,发现是指定了so的问题 看多次点击启动 一.比对打包后的apk 在出现该问题后也搜索了不少资料,参考过 https://bl ...