谈「效」风生 | 如何找到现有研发体系的「内耗问题」?
#第3期:如何找到现有研发体系的「内耗问题」?#
在上一期《谈到提升效能,我们应该如何下手?》我们聊到开始做研发效能的四个要点:评估现有流程、引入自动化工具、建立度量指标、持续改进。本期就围绕「评估现有研发体系」这个话题,来看看下面两位研发朋友是如何理解相关问题的。
受访者 A:某云厂商 资深技术专家 李工
受访者 B:某通信企业 架构工程师 孙工

无论是什么样的科技企业,研发体系都存在很多问题。两位嘉宾在工作中都对自己所在的研发体系进行过改进工作。那么,评估研发体系要做些什么?
A:当我们开始做评估时,就已经说明研发体系出了大问题,或者说体系已经跟不上业务发展的速度。评估就是一个诊断过程,找到系统的问题是关键,最终目的是为了实现效能“提速”,如何准确地找到问题是关键所在。
简单说一下“找问题”的方法,我们可以从“成本”的角度去分析整个体系。比如,一般来说,随着产品和业务的不断升级迭代,研发团队成员也随之增多,代码规模也应按一定比例增长。实际上我们发现并非如此,反而到了一定阶段,增长速度呈现放缓趋势,这是人员成本扩大的问题。
在不同研发环节上增加相应人员,会造成各个环节之间的沟通成本增加,比如,产品与研发之间、研发与测试之间、功能测试与系统测试之间,都会产生很高的沟通成本,导致研发时间损耗。在研发体系中找到这些“成本问题”,并且解决“成本问题”的核心就是降低体系中的内耗,这也是评估工作的主要方向。
B:周工用”内耗“来解释体系问题很贴切。衡量体系中的内耗,需要建立相应的指标来监控问题的严重性。建立指标,是开始改进体系时首先要做的事,也是未来持续要做的事。
在此不详细说度量指标,只说一下构建指标时我们的一个思路,每个指标下面对应了很多数据,最后我们要做的是对数据进行分析。所以我们既要保证指标是有效的,也要保证数据分析是合理的。
我们常见反映质效关系的指标包括:需求完成数和平均完成时长、人均提交代码量、代码缺陷发现量、缺陷平均修复时长、代码规约扫描、构建次数、发布成功率等等。
以上可能是基础性指标,此外还有更多的延伸指标。我们需要仔细思考我们所找的问题会藏在哪里,再去定指标。例如,团队成员、需求、代码的关系,团队成员有新有老、需求有大有小,代码有多有少,如何定义经验水平、如何定义需求颗粒度,提交的代码缺陷等级与缺陷数量的关系如何。
比如说:两个研发人员提交代码,都出现5个缺陷,第一个人出现了5个之前我们没遇到的缺陷,第二个人出现的是5个我们之前多次出现修改的缺陷,这是人员的能力差异,从指标上可以准确反映。

发现体系中的「内耗问题」之后,接下来要做些什么?
A:我们刨根问底把这些问题找出来,并不急于修正优化。尤其是要重新构建一套提升研发效能的体系时,这些问题将作为一个“参照物”来完善效能的实践,为以后打造平台做准备。
我们知道了内部问题在哪里,问题的严重程度如何。这时开始实践DevOps或DevSecOps来提升研发效能,就不再是停留于理论阶段了,在DevOps或DevSecOps模型下全局切入,从问题入手,“自下而上”地解决问题,再持续改进,从而持续为业务创造价值。
B:接下来不管是做DevOps还是DevSecOps,我们都需要设计新的流程,之前所找到的「内耗问题」,也是我们技术价值流中流动性过慢的问题,从而导致研发非常低效。
构建新的流程,目的是减少需求从代码生产到部署上线的时间,同时提高质量、安全性、可靠性,建立从开发到运维再到安全三者之间更快速、更平滑的流程,从而持续交付高价值。
这就要讲到“如何最大程度优化工作流”的事了。简单说我们通过使工作可视化、限制在制品数、减小批量大小、减少交接次数、持续识别和改善约束点、消除价值流中的困境和浪费,持续地优化全局目标,实践这些方法论上程序来设计改进我们的流程。
再提一点,提升研发效能也是一个组织性问题,我们找到问题、构建新的体系的同时,也要在组织层面推动。推行和管理研发效能的人,很大程度上不是研发人员,有的甚至会导致多个团队之间产生矛盾,所以一开始也需要从组织架构进行改变,来支撑研发效能的提升。
本期两位嘉宾分享的内容涉及的知识点比较广,简单总结如下:
1. 评估研发体系,需要找到造成现有体系流动性过慢的「内耗问题」。
2. 通过构建度量指标,并对指标进行科学的数据分析,来深度挖掘体系内存在的「内耗问题」。
3. 挖掘到「内耗问题」后,可以准备实践DevOps或DevSecOps,根据「流动原则」设计优化新的工作流。
4. 组织架构也需要随之变化,来支撑研发效能的提升工作。
相关文章:
谈「效」风生 | 如何找到现有研发体系的「内耗问题」?
#第3期:如何找到现有研发体系的「内耗问题」?# 在上一期《谈到提升效能,我们应该如何下手?》我们聊到开始做研发效能的四个要点:评估现有流程、引入自动化工具、建立度量指标、持续改进。本期就围绕「评估现有研发体系…...
Linux第四章
文章目录 前言一、快捷键小技巧二、软件安装三、systemctl控制软件启动关闭四、软链接五、日期和时区六、ip地址和主机名七、配置linux固定ip地址八、网络请求和下载九、端口十、进程管理十一、主机状态监控十二、环境变量十三、linux文件的上传和下载十四、压缩和解压总结 前言…...
HCIA-RS实验-路由配置-静态路由缺省路由
在计算机网络中,路由器是实现数据包转发的重要设备。它通过查找路由表中的路由信息,将数据包从源地址转发到目标地址。而静态路由和缺省路由则是路由表中的两种重要信息,下面我们来详细了解一下它们的概念、特点和应用。 目录 简述 一、静态…...
Unity API详解——Quaternion类
Quaternion类又称四元数,由x、y、z和w这4个分量组成,属于struct类型。在Unity中,用Quaternion来存储和表示对象的旋转角度。Quaternion的变换比较复杂,对于GameObject一般的旋转及移动,可以用Transform中的相关方法实现…...
8个免费的PNG素材网站推荐
很多设计小白都不知道什么是PNG。事实上,PNG是一种支持透明度的图像格式。当你想在设计中将图像与背景或文本混合时,它就会派上用场。 如果你没有时间为你正在处理的设计创建透明的PNG图像,你也可以使用我收集的PNG素材网站,以便…...
ChatGPT技术原理 第二章:自然语言处理基础
目录 2.1 语言模型 2.3 词嵌入 2.4 注意力机制 2.5 生成式模型 2.1 语言模型...
国民技术N32G430开发笔记(8)- 内部Flash的读写操作
N32G430 内部Flash的读写操作 1、主存储区最大为 64KB,也称作主闪存存储器,包含 32 个 Page,用于用户程序的存放和运行,以及数 据存储。 每一页的大小为2K字节 2、IAP 升级我们将64K的flash分区如下: Boot 0x800000…...
JVM 基本知识
目录 前言 一、JVM 内存区域划分 1.1 程序计数器 1.2 栈 1.3 堆 1.4 方法区 二、 JVM 类加载机制 2.1 类加载需要经过的几个步骤 2.1.1 Loading - 加载 2.1.2 Linking - 连接 2.1.3 initialization(初始化) 小结 经典面试题 三、JVM 垃圾…...
【源码解析】流控框架Sentinel源码解析
Sentinel简介 Sentinel是阿里开源的一款面向分布式、多语言异构化服务架构的流量治理组件。 主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 核心概念 资源 资源…...
redis面试重点------源于黑马
缓存问题三兄弟 是因为不同的原因让请求全部打到了数据库而造成的问题 什么是缓存穿透? 缓存穿透是指查询一个数据,在redis和MySQL中都不存在。也就是查询一个数据不存在的数据,导致每次请求都会到达数据库,给数据造成很大的压力…...
jQuery知识点二
一、 jQuery 属性操作 1. 元素固有属性值 prop() 获取属性:prop("属性") 设置属性:prop("属性","属性值") 所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里…...
4 月份 火火火火 的开源项目
盘点 4 月份 GitHub 上 Star 攀升最多的开源项目,整个 4 月份最火项目 90% 都是 AI 项目(准确的说,最近半年的热榜都是 AI 项目) 本期推荐开源项目目录: 1. AI 生成逼真语音 2. 复旦大模型 MOSS! 3. 让画中…...
PAT A1011 World Cup Betting
1011 World Cup Betting 分数 20 作者 CHEN, Yue 单位 浙江大学 With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excited as the best players from the best teams doing battles for the World Cup trophy in South Af…...
Android 拍照以及相册中选择(适配高版本)————上传头像并裁剪(一)
前言 在项目研发中,相信大家都遇到过给用户增加头像照片的需求。 随着手机版本的不断更新,android 8、android 9、android 10、android 12、android 13、鸿蒙系统等等;遇到这个功能需求,大家肯定会想,“这还不好写&…...
带你了解现在的LED显示屏技术
随着LED显示屏技术的空前繁荣,LED显示屏产品备受关注,广泛应用于商业广告、实况播映、交通诱导、舞台演绎等领域,发展至今。你了解十大中国LED显示屏制造商吗? LED显示屏技术已经得到了长足的发展,现在的LED显示屏技术…...
AI模型推理(1)——入门篇
前言 本文主要介绍AI模型推理的相关基础概念,为后续云原生模型推理服务的学习做准备。 初识模型部署 对于深度学习模型来说,模型部署指让训练好的模型在特定环境中运行的过程。相比于常规的软件部署,模型部署会面临更多的难题: …...
MySQL--表的基本查询--0410--15
目录 1. Create 1.1 insert 1.1.2 插入否则更新 1.2 replace 2.Retrieve 2.1 select 2.1.1 全列查询 2.1.2 指定列查询 2.1.3 查询字段为表达式 2.1.4 为查询结果指定名称 2.1.5 去重 2.2 where 2.2.1 > and > and < and < and 2.2.2 in between…...
Scala语言入门以及基本语法
文章目录 前言1.环境搭建1) IDEA中插件下载2) SDK下载配置 2.基本使用1)var与val的区别2) .基本数据类型3).字符串的基本用法4) 控制结构1) if else2) for 循环3) while循环 5)类6) 函数 前言 scala在一种简洁的高级语言中结合了面向对象和函数式编程。Scala的静态…...
Linux shell编程 循环语句for continue break
for循环是编程语言中一种循环语句 示例1:循环读取user.txt中的用户名,创建用户。设置密码。 for i in $(cat /opt/user.txt) douseradd $iecho 123456 | passwd --stdin $i done 示例2:循环读取ipaddr文本文件中地址,执行ping命令…...
leetcode 643. 子数组最大平均数 I
题目描述解题思路执行结果 leetcode 643. 子数组最大平均数 I 题目描述 子数组最大平均数 I 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数。 任何误差小于 10-5 的答案都将被视为正确答…...
DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...
