从效能公式解构研发效能

这几年,云原生、Web3.0、元宇宙等技术的出现和应用,正在深刻地改变着我们这个世界。以数字技术应用为主线的数字化转型是此次人类文明变革的核心动力。在这一变革过程中,软件研发模式的发展起到了重至关重要的作用。从早期瀑布式、精益敏捷、DevOps,再到BizDevOps,其实背后一直在解决的是效能的问题。

效能公式

我们常常聊效能,但研发效能对于不同的人来说,有着不同的定义。对于处在研发一线的个人来说,效能就是提升自己的工作效率,提升工作的幸福感;而对于企业经营者来说,效能就是在不确定性的环境下,确定性地获得最大的商业成功。

因此,提升效能,就是让每个人能够高效、专注的工作,工作更有成就感;提升效能,就是让一群人干成一件值得骄傲的事。

我们之前定义过,研发效能就是组织持续、顺畅、高质量交付有效价值的能力。从提升效能的角度,研发效能就是提升个体和协同效率,最大化价值。将这个三个变量组合在一起,形成的效能公式就是:

个体效率 x 协同效率 x 价值 = 研发效能

个体效率

对于个人而言,个人的工作效率其实是最影响幸福感的。事情做不好,很大部分原因是,事情理不清、理不顺。老师通过看一个学生的课桌和书包,基本就可以判断这个学生的学习成绩好不好了。桌面干不干净、书本整不整齐、教材和教辅分类是否清楚、考卷有没有分门别类整理等,这些都直接影响着学习的效率。所谓“学霸两支笔,学渣文具多”,如果绝大多数时间和专注力花在找书本找文具上,学习自然是好不了的。

另一个影响的效率的重要因素,是那些高频且低效或易于出错的工作。简单重复性强的工作,引入自动化的手段就可以解决。高危操作,出错和返工的成本都极高。将这些问题,交给工具来完成,可以极大地减少由于人为操作导致的问题。

所以,我们希望在日常工作中,事情能够有条理的按部就班,要的东西找得到,看得见。重复繁琐的事情,让工具代替手工,更轻松地做,省心、安心、放心。我简单总结,就是三个关键词:找得到、看得见、轻松做。

今年,云效分别升级了全站搜索、个人工作台、代码合并、智能测试和应用发布等能力,旨在让:

零散信息找得到:通过个人工作台,我们可以将自己关心的工作内容展现在一个页里,“我的项目、我的任务、我的提交、我的发布”,个人工作台就是自己的专属线上办公桌。像整理自己桌面一样整理好自己的工作台,让任务轻松触达;同时,通过全站搜索能力,无论是需求、任务、缺陷、代码、应用、变更等等,都能通过 CMD + K 找到。

任务、进度看得见:每个人对自己关心的任务、关心的进展,都能轻松地看见。就像观测地铁到站表一样,非常清晰地知道当前任务经过了哪些阶段,当前处在什么阶段,到结束,还需完成哪些阶段。

代码提交轻松合:开发者有大量的代码合并和评审的场景,通过辅于自动化的检测能力,帮助开发者在代码合并的时候,轻松判断合并条件,有针对性地进行评审,放心轻松地合并代码。让代码合并省心。

回归测试轻松测:测试工作在软件研发过程中,承担着非常重要的质量守护工作,测试工作从写case、准备环境、准备数据...,琐碎而重复,对于这样的工作,我们建议这样的工作交给工具来做,云效除了接口测试、UI测试这些传统的测试工具之外,推出智能流量回放测试。采用智能流量回放测试,可以自动生成测试用例,自动生成测试数据,自动Mock,大幅节省回归测试的成本。让质量内建安心。

应用上线轻松发:软件的发布在云研发时代是一个高频操作,同时也是高危操作。云效应用发布平台AppStack,推出面向云原生的应用发布能力,将资源、流程和工具以应用为核心组织在一起,从应用的创建、代码变更、部署发布整个流程固化下来,减少过程中由于人为操作不当而引起一系列问题。同时,部署是最后的临门一脚,辅于发布过程中的可观测能力和部署模式的支持,有效降低发布过程中的风险,应用的发布上线不再熬夜加班。让应用发布放心。

只要善于发现,可提升、改进的机会还有很多。不要低估持续不懈地优化和改变,进步的力量,始于每一点微小的改变。

协同效率

如果说个体效率的提升,影响的是工作幸福感的话,那么协同效率的提升反映的就是组织的成熟度和活力。

软件研发是典型的集体性创造活动。人多了,就会有分工,分工有很多好处,亚当·斯密最早提出了分工理论,通过比较优势,分工可以提高效率。但随着组织的发展,职能分工带来最直接的问题就是:效率竖井。

关于效率竖井,我们以前讲过很多次。不同的职能分工,职能间的关注点不同,优先级不一致,经常出现扯皮的现象。同时,在整个交付过程中,出现阻塞、等待、返工的情况。彼此沟通过程中,概念不一致,鸡同鸭讲,聊不到一块儿。这样的后果是,每个团队看上去,繁忙而高效,而整体却效率低下。

协同的目标,就是让一群人确定性地共同完成一件大事。整个协同应该是一条通路,通是关键。在DevOps中,打破Dev和Ops的墙是为了通,在BizDevOps中,打通Biz和DevOps的墙,也是为了通。这里我把它归纳为两个关键词:连接和透明

通过一个需求,与应用的变更建立关联,通过一个需求,与代码合并请求建立关联。双向互联互通,基于统一的数据模型,将这些核心作业对象关联起来,形成一张价值网,这样就建立起来了从协作到工程的完整链路。

连接的意义,远大于在研发流程中,将工具简单的拼装在一起。有了核心工作对象的关联,就像接通了整个研发协同系统的血液循环,活了过来,整个系统也就具有了生命力。

连接建立了基础,透明化就不再话下。这样,整体的工作进展,从需求、代码、发布完全打通,工作进展更准确、透明。迭代进展能够及时、准确地看到;工作安排是否合理,通过工作负载也能展露无疑。

有了连接做为基础,数据在各环节就能共享,任务和进展可以轻松看得见,效能现状也能轻松看得见。

一群人,安排了哪些活、在哪一天,工作量是否过大等等。对于管理者而言,效能现状也能做到胸有成竹,团队效能有没有“病”,要不要“吃药”,有了数据的支撑,就能做到对症下药了。

同时,通过关系和信息的配置,将流程固化在工具上。让过程管理不再局限于纸面文章,而是可运行、可重复、可推广。

然而,无论是提升个体效率,还是协同效率。在软件研发工作中最大的问题,其实是机会的浪费。

价值

选择比努力重要。资源这么多,只能选择最有价值的事情来干。如果说连接是血液循环系统的话,那么价值就是这个系统支撑的魂。但实际的工作中,往往容易丢了“魂”。丢了“魂”的工作是怎么样的呢?

是工作说不清楚价值;是需求很多,但不知道哪个更重要;是我的工作和老板关心的工作不一致;是需求层层分解、任任层层转交,导致信息严重失实。

人就那么多,时间也很有限,选择一件对的事情,并且做好分解和传递很重要。所以,我认为做好价值最大化的两个关键因素是:选择和传递

关于选择,收益和成本是最简单的两个变量,通过收益除于成本就可以简单得到一个基础投资收益得分,基于此做为选择需求的参考。

一定会有朋友说,价值模型有很多,单纯靠这两个变量是否过于简单。其实,从本质上讲,无论多么复杂的价值模型,背后的底层逻辑都是收益和成本。有了这两个简单的变量,争论便有了基础,而不是看谁嗓门大、关系亲疏、职级高低来决定做哪个需求。这就很有意义,让价值的争论发生在越早越好。

同时,有了评估选择的基础,我们就可以做到:以终为始(在开始的时候,就以最终想达成的结果来进行评判选择)和量出而入(在排入需求的时候,就以输出的时候为标准,无论是质,还是量)。

从收到一个前线的原始需求,转化为一个产品主题,再逐层分解,直到开发任务,这是整个价值传递的过程。研发的整个流程,其实就是价值流,价值流上的各环节是增值活动。这样,整个价值链上的每个事情都是有价值的,每个事情也都能说明价值。

同时,对于业务、产品或技术来说,用一套话语体系说话。从原始输入,到产品需求,再到技术任务,云效通过关联所有的核心对象,让事事有着落,件件能溯源。

写到最后

通过让事情找得到、看得见、轻松做,提升工作的幸福感,提升个体效率。通过连接和透明化,建立彼此协作的桥梁和信任,提升协同效率。通过价值有效选择和传递,最大化价值。整体共同作用,提升研发效能。

基于这个逻辑,让我们从面向流程到面向价值进化,从提升效率到提升效能进化。当然,云效也无法兼顾到研发活动的方方面面,我们愿意和我们的伙伴和用户一起努力,做一点点改变。进化,其实就是每一点点进步。

感谢我的同事们努力的工作,让进步一点点发生。最后,欢迎大家对我们的产品提出更多的想法和建议。

作者:张燎原,阿里云云效 产品负责人

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510328.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里CCO:基于 Hologres 的亿级明细 BI 探索分析实践

CCO是Chief Customer Officer的缩写,也是阿里巴巴集团客户体验事业部的简称。随着业务的多元化发展以及行业竞争的深入,用户体验问题越来越受到关注。CCO体验业务运营小二日常会大量投入在体验洞察分析中,旨在通过用户的声音数据结合交易、物…

sdut 数字三角形问题

数字三角形问题 Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic DiscussProblem Description 给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。对于给定的由n行…

SSD( Single Shot MultiBox Detector)关键源码解析

SSD(SSD: Single Shot MultiBox Detector)是采用单个深度神经网络模型实现目标检测和识别的方法。如图0-1所示,该方法是综合了Faster R-CNN的anchor box和YOLO单个神经网络检测思路(YOLOv2也采用了类似的思路,详见YOLO…

YOLO升级版:YOLOv2和YOLO9000解析

论文笔记:YOLO9000: Better, Faster, Stronger;官方网站 评论:YOLO是基于深度学习方法的端到端实时目标检测系统(YOLO:实时快速目标检测)。YOLO的升级版有两种:YOLOv2和YOLO9000。作者采用了一系…

解读Batch Normalization

【活动】Python创意编程活动开始啦!!! CSDN日报20170424 ——《技术方向的选择》 程序员4月书讯:Angular来了!解读Batch Normalization 2016-02-23 16:03 5262人阅读 评论(1) 收藏 举报 本文章已收录于&#xf…

SSD+caffe︱Single Shot MultiBox Detector 目标检测+fine-tuning(二)

承接上一篇SSD介绍:SSDcaffe︱Single Shot MultiBox Detector 目标检测(一) 如果自己要训练SSD模型呢,关键的就是LMDB格式生成,从官方教程weiliu89/caffe来看,寥寥几行code,但是前面的数据整理…

sdut 双向队列(STL)

deque<ll>q;//定义一个双向队列q&#xff0c;类型为long long q.push_front(a);//将a从队首插入队列 q.push_back(a);//将a从队尾插入队列 q.pop_front();//队首弹掉一个元素 q.pop_back();//队尾弹出一个元素 aq.front();//返回队首元素 aq.back();//返回队尾元素 aq.si…

pip install scikit-image on windows 失败 解决方案

到官网下载包 http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-image 我们下载 scikit_image‑0.13.0‑cp35‑cp35m‑win_amd64.whl 也可到我的CNDS下载 安装时会出现一下错误 scikit_image-0.13.0-cp34-none-win_amd64.whl is not a supported wheel on this platform…

Caffe训练源码基本流程

苏的专栏 致力于学习计算机视觉、模式识别、机器学习、深度学习相关技术&#xff1a;&#xff1a;&#xff1a;&#xff1a;希望结识更多同道中人。 QQ&#xff1a;2816568984 微信&#xff1a;Suc1011 目录视图 摘要视图 订阅 【活动】2017 CSDN博客专栏评选 【评论送书】…

ubuntu16.04下安装opencv3.2版本

1、下载OpenCV的源码 OpenCV官网上有linux版本的源码包可以下载&#xff0c;不过最好是从git上下载&#xff0c;这样可以保证下载得到的是最新的代码&#xff1a;1 wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.2.0.zip 2 unzip opencv.zip 2、编译安装…

windows 静态IP设置

1.打开cmd&#xff0c;输入ipconfig 记录 IP address 子网掩码 网关 打开 wlan 属性 选中一个网络右键 “属性” 设置 ipv4&#xff0c;选择“使用下面的IP地址” 对应填写 ip地址 子网掩码 网关 tips&#xff1a;DNS建议和网关一样

window 远程linux

1.我们需要在Linux安装ssh服务 sudo apt-get install openssh-server 2.然后开启ssh服务 sudo /etc/init.d/ssh start 3.在window上安装PUTTY 下载网址 4.填写Linux ip 查看ip: 在Linux输入&#xff1a;ifconfig 5.然后填写登陆Linux的账户名和密码 大功告成。。。。。…

赫夫曼编码长度计算问题?

例题&#xff1a;一组字符(a,b,c,d)在文中出现的次数分别为(7,6,3,5),字符&#xff07;d&#xff07;的哈夫曼编码的长度为&#xff1f; 题解&#xff1a; 首先构造huffman树 每一步都将所有数字排序 方法如下: 1: 3 5 6 7 2: 6 7 8 / \ 3 5 3: 8 13 / \ / \ 3 5 6 7 4: 21 /…

windows + cmake + vs2019 编程

1.安装minGW64 2.安装cmake 3.安装vs2019 4.组建代码文件结构&#xff1a; 5.在build 文件下打开git bash&#xff0c;执行一下指令 cmake .. -G"Visual Studio 16 2019" tips( vs2017 对应 cmake .. -G"Visual Studio 15 2017" ) cmake 模板…

所感

记住别太善良了&#xff0c;别太大方了&#xff0c;也别太能干了&#xff0c;时间久了人家会觉得&#xff0c;你做的一切都是应该的。即使有一天你撑不住&#xff0c;哭了累了&#xff0c;也没人心疼你。 因为在他们眼里这都是你愿意的。有时候心眼也别太好了不要什么事都为别人…

享受孤独

今天看见网易云音乐一个 有趣的活动。。。突发其感参与了评论“孤独”这个话题&#xff1a;

使自己的注意力集中方法

英国Kent大学最近有一篇文章对注意力做出了详尽的分析&#xff0c;关于如何保持专心养成好习惯的&#xff0c;其中包括了如下几点建议&#xff1a; 养成好习惯&#xff1a;养成在固定时间、固定地点专心学习工作的好习惯。如果可能&#xff0c;在进入学习或者工作状态前做一些小…

PCL “(”:“::”右边的非法标记 和 E2512 功能测试宏的参数必须是简单标识符

PCL “(”:“::”右边的非法标记 解决方法&#xff1a; 项目属性 ——> C/C ——> 预处理器 ——> 预处理器定义 (此处添加预定义编译开关 NOMINMAX&#xff09; E2512 功能测试宏的参数必须是简单标识符 解决方法&#xff1a; 将SDL 设置为否。

普通本科生应该坚持ACM吗?知乎

这是本人当初学ACM有疑惑从知乎看见这一篇文章&#xff0c;从中解决了自己的疑惑&#xff0c;虽然是粘贴复制&#xff0c;但是我觉得我们可以从里面找出自己想要的答案&#xff01; 非211一本学校&#xff0c;软件工程专业。学校搞ACM的水平不高&#xff0c;最好的大概就是区域…

解决虚拟机打开不了?提示VMware Workstation cannot connect to the virtual machine的问题

解决方法&#xff1a; 从提示消息我们可以看到&#xff0c;问题在于VMware授权服务没有开启&#xff0c;具体处理方法如下&#xff1a; No1. "This PC&#xff08;我的电脑&#xff09;"---右键"manage&#xff08;管理&#xff09;"---"Service and…