企业研发效能提升之道 —— 管中窥豹,窥一斑而知全豹
企业为什么越来越关注研发效能的问题
在开始研发效能的相关问题介绍之前,我们先来思考一下,为什么近些年来企业对于研发效能的追捧越来越多呢?你或许不知道研发效能到底是什么意思,但是你一定听过 Google 的 State of DevOps 报告,这个报告在 2014 年的时候第一次被发布,报告指明高性能的团队可以帮助构建高效能的组织。在 2018 年的时候,著名的 4 key metrics 被提了出来。自此,当企业聊起研发效能提升的时候,大家讲得更多的是这四个关键指标的度量。企业在实施研发效能的治理的时候,路线也会出奇的一致——都不约而同的关注到了工具本身的支撑上面。让我们先把如何提升研发效能的事情放在一旁,来看一看为什么企业会不约而同的越来越在意这个问题?这个老生常谈的问题又要回首看看我们所处的时代——VUCA 时代,在这个时代,摩尔定律让硬件设备越来越廉价,终端用户手里的设备越来越智能,特别是这几年中国互联网的飞速发展,终端用户对于电子化系统的要求越来越高:
希望这个电子化系统无时不刻的响应他们的诉求,毕竟只有人才需要休息,机器应当 提供服务的
希望更多便利的功能可以快速得推送到他们面前,毕竟这个市面上同类型的产品层出不穷,企业如果不以用户为中心,是很难获得持久的用户黏度的
希望应用的体验是快速且便捷的,用户的碎片化时间越来越多,专注度本来就无法很高,加之 Wifi 与 5G 技术的兴起,终端用户期望的是“本地化”的互联网应用体验。终端用户需求的水涨船高,互联网大厂技术实力的顺势而上,让很多传统行业面临了无限的压力,业技融合似乎在各行各业都在上演,传统行业的公司纷纷向 IT 公司转型,科技为本大抵如此~在传统行业向 IT 公司转型的过程中,各种各样的问题就暴露出来了:
绝大多数传统行业的企业的系统研发都是由第三方的供应商来承担的,为了避免供应商锁定,企业一般会选取行业里的多家供应商,而供应商和供应商之间的能力良莠不齐,即便是同一个供应商,由于人才保留的问题,也很难保证同一个项目上供应商的实力水平是一直保持的,这带来的直接问题就是系统改不动、质量不可靠,但是要做的业务需求却那么多。
传统行业的跟风调整。这些年技术圈的明星也是无时不刻的在往外冒,从单体到 SOA 再到微服务再到中台,各种架构的不同形态,不同的流行技术层出不穷,传统企业在进行架构选型的时候难免会存在跟风的问题。这些技术在帮助企业解决问题的同时,无疑为企业带来了巨大的成本。企业在进行架构选择的时候往往只关注架构带来的优势,却不知道为了得到相应的优势企业自身所需要付出的努力,这无疑为企业的效能提升带来了更高的门槛
面对这样、那样的问题的时候,企业自身也会做相应的调整,但是企业往往缺乏一些专业的辅助,往往会把问题聚焦于工具本身,在效能解决的路上就会比较没有头绪,认为只要有一个大而全的 DevOps 平台,所有效能问题即可迎刃而解。这样的做法往往导致最后的事倍功半。带着这样的问题,我们来看看企业如何更好得提升自身的研发效能。
如何定义研发效能
在解决研发效能的问题之前,我们先看看到底什么是研发效能?研发效能是技术侧秀肌肉的过程吗?其实我觉得并不是。效能不等于效率,效能不仅要求企业是有效率的,同时也要求企业是有结果的。结果对于企业而言,就是帮助企业更好的服务于企业的自身的终端用户,产生更多的业务价值,简而言之就是帮助企业赚钱。因此,企业研发效能提升的过程即企业不断寻求更快、更高质量的手段以实现其自身业务价值的活动。
效能治理的方法
了解清楚研发效能本身的定义以后,企业面临上述种种问题的时候,应当做一些什么样子的事情来提升效能呢?本着从产生更多业务价值以及对结果负责的角度,我认为企业研发效能的提升应该从以下 4 个方面进行关注:
研发流程信息化、可视化:正如上文所述,在传统行业里经常需要多家供应商一起来完成相应的系统构建过程,供应商之间的良莠不齐,供应商内部、企业内部技术、业务上下文的传递都离不开现代化的工具,可以说能用工具解决的问题就不要尝试人肉解决。通过一些列研发流程的工具的使用,我们可以轻而易举得记录企业研发流程的所有关键活动,发生了什么事情、做了什么决策,方便我们事后的总结与提升。
工程实践的提升:工具的使用只是做到了现状的可视化和反馈,但是并不能够真正帮助企业提升其效能,而工程实践的提升却可以。微服务架构火爆盛行的时候,Martin Fowler 就指出“You need to be this tall to use Microservices”,避免企业盲目得选择微服务架构,同样得更快、更好的研发质量伴随得是企业工程实践的变化。希望研发得更加快速、质量更好,就需要逐步替换研发过程中的手动部分,尽早的反馈,比如引入测试驱动开发、使用代码的方式来管理基础设施的变化等持续集成、持续部署的方式和方法。
管理牵引:与 State of Devops 的想法异曲同工,研发流程漫长而复杂,效能的提升必然不是一个一蹴而就的活动,如何有效得量化企业自身研发效能的情况是企业需要迈出的第一步。事实证明,量化指标的提出在企业自身尝试研发效能提升的过程中起到了至关重要的作用,虽然比不上专家意见可以帮助企业提升,但是至少有了替代专家衡量现状、评估改进成果的办法,有了这个在绝大多数企业里就可以做到管理牵引,情愿与不情愿,至少企业是在改变的路上了。
意识转变:企业在进行研发效能的初期,除了自己尝试着外,往往会选择从外部借鉴专家经验,专家可以帮助企业规划工具链、引入好的工程实践、完善度量体系,但是这些却都不是效能提升的保障,企业做到效能的根本扭转,不仅仅是按照专家的方式去做,更多的是接受这种思想,并保持不断追求卓越的想法。毕竟在整个效能提升的过程中,我们虽然会用各种各样的指标牵引开发流程,而指标的变好其实是有很多种方式的,就像小说里对于盖世武功修炼的描述,虽然捷径好走,但是往往会带来不好的后果。研发效能的提升之道,在于企业内部不断追求卓越的生态文化。这里,我们用一个房子模型来呈现企业研发效能提升的方法,也是有一些思考的。在于说,企业实施效能提升的整个过程中,研发流程信息化、工程实践、管理牵引都是我们在效能提升过程中的主要手段支柱,就像一个房子的墙壁,严格意义上讲,不同的墙壁起到的作用也不一样:研发流程信息化是研发效能提升的必经阶段,不能可视化就意味着无法得到数据,而工具的引入在某种程度上也能支持工程实践的推广,比如我们可以使用 lint 类的工具对代码的风格进行检测,让团队保持比较良好的代码习惯;工程实践的提升也无法离开管理牵引,毕竟实践是不是真的变好了只能通过各种各样的 metrics 来追踪。而在这所有之上,对于企业而言,真正不可或缺或者起到灵魂式根基作用的,恰恰是企业成员的意识的转变。
总结
本篇描述了 VUCA 时代终端用户给企业带来的挑战,使得企业更加关注于研发效能的提升、企业在其研发效能提升的过程中常见的绊脚石、以及针对这些绊脚石企业可以以怎样的办法来有效得扭转其研发效能所面临的困境。下篇,我们会着重关注对于企业而言都有哪些研发效能指标是需要关注的,以及如何选择适合企业自身的研发效能指标。
版权声明: 本文为 InfoQ 作者【在天涯的海角】的原创文章。
原文链接:【http://xie.infoq.cn/article/e6d468c108d123be962b9d373】。文章转载请联系作者。
评论