Skip to content

Commit

Permalink
feat: update articles
Browse files Browse the repository at this point in the history
  • Loading branch information
wx-chevalier committed Jan 31, 2024
1 parent 2a02d84 commit 3d1140d
Showing 1 changed file with 2 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
- **研发效能的误区。**展开介绍研发效能提升过程中经常遇到的八大误区****
- **研发效能的实践框架。**“研发效能的黄金三角”由三个部分组成,分别是研发效能实践、研发效能平台和研发效能度量,它们形成一个彼此增强、迭代优化的增强回路,有效利用好这个模型可以促进企业研发效能持续增强、不断提升,最终助力企业和业务的成功


# **研发效能的目标**

## **研发效能的定义**
Expand All @@ -25,10 +23,7 @@
- **更可靠:**我们要的是敏捷,而不是脆弱(agile rather than fragile),安全和合规方面要有保障。就像开车一样,只有车子更可靠、刹车更好,你才敢开得更快;****
- **可持续:**短期的取巧和”快糙猛”、小作坊式开发,只会给未来带来更多的技术债务和持久的效率低下,软件研发不是一锤子买卖,我们应该用”长线思维”来思考问题;****
- **更优的业务价值:**我们经常说”以终为始”,你提供给客户或业务的东西应该是有价值的,这是关于你为什么要做所有这些事情的根本出发点。


![img](https://assets.ng-tech.icu/item/62b41500d3c3af30fd7e6e64_asynccode.png)
![img](https://assets.ng-tech.icu/item/62b41500d3c3af30fd7e6e64_asynccode.png)

研发效能的目标在这个概念的引导下,我们引出**持续开发,持续集成,持续测试,持续交付****持续运维**的理念,它们是研发效能落地的必要实践。与此同时,我们还需要从**流动速度,长期质量,客户价值**以及**数据驱动**四个维度来对研发效能进行有效的度量。

Expand All @@ -38,23 +33,15 @@
- **强调更聪明地工作**:就是我们常说的"好钢用在刀刃上",通过一系列工作流程、协作方式、角色职责、系统架构、技术平台上的优化,通过工具建设和自动化程度的提升,让大家能够摆脱冗长无聊的各类会议、重复机械的手工操作,把时间花在真正有创造性的事情上;****
- **强调个人能力成长**:组织要给大家留出一些空闲时间来,用于个人的学习和提高,成长的机会也许比晋升和绩效更能吸引人。优秀的企业会注重侧重培养个人的技术能力、软件工程能力、业务领域能力。组织是由每个部门、每个团队、每个人组成的,只有每个人的效率提升了、能力增强了,工作更快乐了,整个企业的研发效能才会更好。


## **研发效能真的能够提高吗**


既然如此重要,那接下来的问题是研发效能是否真的能提高?根据“熵增定律”,在一个孤立系统里,如果没有外力做功,其总混乱度(熵)会不断增大。我们的软件越做越大、越做越复杂,研发效能的绝对值随着以下因素的增长必然会变得越来越差。

- 软件架构本身的复杂度提升(微服务,服务网格等)
- 软件规模的不断增长(集群规模,数据规模等)
- 研发团队人员规模不断扩大引发沟通协作难度增长所以,我们对于研发效能工作的最基本要求就是**尽可能减缓研发效能恶化的程度,使其下降的不至于太快**,在软件规模和复杂性不断提升的同时努力保持高效,“努力奔跑或许只能让我们保持原地”。当然,研发效能的持续提升是我们追求的终极目标,我们需要不断的尝试和努力,我们一直在路上。

![img](https://assets.ng-tech.icu/item/62b415000334bfc4f8c6d9de_asynccode.png)

研发效能的困境和鸿沟

![研发效能的困境和鸿沟](https://assets.ng-tech.icu/item/62b415000334bfc4f8c6d9de_asynccode.png)

# **研发效能的误区**

Expand Down Expand Up @@ -94,8 +81,6 @@

最后再来看看度量。研发效能的度量一直以来都是很敏感的话题。科学管理时代我们奉行“没有度量就没有改进”,但是数字时代这一命题是否依然成立需要我们的反思。现实事物复杂而多面,度量正是为描述和对比这些具象事实而采取的抽象和量化措施,从某种意义上来说,度量的结果一定是片面的,反映部分事实。但没有银弹,也没有完美的研发效能度量。数据本身不会骗人,但数据的呈现和解读却有很大的空间值得探索。那些不懂数据的人是糟糕的,而最最糟糕的人是那些只看数字的人。当把度量变成一个指标游戏的时候,永远不要低估人们在追求指标方面“创造性”,总之我们不应该纯粹面向指标去开展工作,而应该看到指标背后更大的目标,或者是制定这些指标背后的真正动机。


# 研发效能的实践框架

这些年笔者一直在拥有数万研发人员规模的大型互联网公司中做 DevOps 和研发效能的相关工作,做过敏捷和持续交付实践的大规模推广,组建并带领团队从零开始建设过服务于全公司的、一体化、一站式的 DevOps 平台,发起过公司级研发效能度量委员会并制定度量指标体系,加之在技术社区持续活跃、在各类综合性/专业性技术大会中担任出品人等角色,对互联网大厂的研发效能提升思路和做法有一定的理解,我把这些经验总结起来,形成一个具有增强回路效果的研发效能提升体系,我称之为”研发效能的黄金三角”。
Expand All @@ -104,20 +89,14 @@

研发效能的黄金三角由三个部分组成,分别是**研发效能实践、研发效能平台和研发效能能度量**


这三个部分彼此独立,但又相互关联。其关联关系如下:

- “研发效能实践”中的优秀实践可以固化、沉淀到“研发效能平台”;反过来,“研发效能平台”支撑了“研发效能实践”的落地;
- “研发效能平台“产生的大量研发数据形成了“研发效能度量”中的研发效能洞察;反过来,“研发效能度量”可以持续观测“研发效能平台”中产生的数据,进行下钻和深入分析;
- “研发效能度量”中的洞察和分析结果可用于针对性优化”研发效能实践”;反过来,“研发效能实践”可以给“研发效能度量”更多的输入,帮助完善度量指标集和分析方法;所以,研发效能实践,研发效能平台,研发效能度量就形成了一个彼此增强、迭代优化的回路,有效利用好这个增强回路就可以帮助企业研发效能持续增强、不断提升。我们的最终目标是:更高效、更高质量、更可靠、可持续地交付更优的业务价值。下面我们就来简单看一下这三个部分。我们会分别从目标,价值主张,实践分类和实施建议几个维度展开讨论。


### **研发效能实践**


![img](https://assets.ng-tech.icu/item/62b41501dbb5f5a8e9c695ee_asynccode.png)

**目标:**提炼和采纳与上下文匹配的 DevOps 及研发效能提升实践
Expand All @@ -127,12 +106,8 @@
- 产品导向:区别于项目导向的交付模式(在特定时间内,以相对确定的预算和人力,交付预先计划的内容),我们更倾向于以产品导向的交付模式组织相关研发效能实践。产品导向让我们面向长期的业务价值,组织长期稳定的敏捷团队,持续迭代和优化与时俱进的产品。我们承认需求的不确定性,要持续改进产品,而不是简单地遵从既定计划;我们要考虑长期产品和团队能力的建设,而不是把短期项目做完了事;我们要考虑持续为客户创造价值,而不是看项目有没有超过预算;我们要面向工作结果进行响应,而不是盯着一些局部的工作产出;
- 工程卓越:我们必须持续关注工程和技术的卓越性,而不仅仅是交付了多少需求或特性。比起多完成了几个小功能,也许工程和技术上的提升所带来的价值会更大。就像微软 CEO 萨蒂亚·纳德拉所说:每一天我都在开发新特性和提升我们的生产力之间进行权衡。我们要追求用工程化的方法持续把确定性、重复性、机械性的任务自动化,从而在提升效率的同时让工程师有更多时间花在有创造性的事情上。用工程化的思路解决问题、追求工程卓越就是一种"反内卷"的表现;**实践分类:**业务敏捷创新实践、敏捷精益协作实践、持续交付工程实践、云原生技术实践、组织和团队拓扑等;实施建议:业界一致认为,DevOps 领域、研发效能领域都从来就没有”一刀切”的解决方案,所以不要迷信某个成熟度模型、某种规模化框架就一定能对你有帮助。正确的实践选择一定是要基于上下文的,找出价值流中最大的障碍,选取工具箱中适当的实践,从小范围开始、纵向进行实验,应用敏捷思维来提升组织研发效能,逐个解决瓶颈,循环往复。


### **研发效能平台**


![img](https://assets.ng-tech.icu/item/62b415014104ba68c4c1d9fa_asynccode.png)

**目标:**打造一站式、一体化的研发效能平台,支撑软件交付全生命周期。
Expand All @@ -146,8 +121,6 @@

**实施建议:**研发效能平台的建设切莫一上来就追求”大而全”,所谓的”一站式、一体化”只是手段而不是目的,最终以能满足研发场景的诉求为主。尤其是在平台建设初期,不妨以支持”toB”客户的思维来进行平台运营,深度绑定和跟进种子团队,深刻理解业务痛点和需求,这样做出来的平台马上就有人用,然后收集反馈,像滚雪球一样越做越完善。另外,还要注重需求价值流、工程价值流之间的联动,而不要分裂成毫无关联的两个系统。


### **研发效能度量**

![img](https://assets.ng-tech.icu/item/62b415014104ba04f0c1d9fb_asynccode.png)
Expand Down

0 comments on commit 3d1140d

Please sign in to comment.