深度|为什么一定要从devops走向bizdevops?

阿里云云栖号 阿里云云栖号     2022-10-21     391

关键词:

数字经济时代,数字化转型成为社会的普遍共识和行动。越来越多的业务运行在数字化基座之上,软件系统正成为业务创新的价值核心和创新引擎。在这一趋势下,软件产业面临着许多新挑战和新机遇:一方面,万物互联下软件系统规模和复杂度持续增长;而另一方面,业务的快速变化对软件交付效能的要求却不断提升;软件构建和交付方式亟待变革。

要解决问题,先直面问题。为更好地厘清波涛汹涌的数字化转型浪潮下软件产业所面对的机遇与挑战,6月29日,阿里云云效与阿里云开发者评测局栏目,联合特邀了InfoQ极客帮副总裁付晓岩、南京大学软件工程学院教授张贺、Thoughtworks全球数字化转型负责人肖然、国内精益产品开发最早实践者何勉(阿里云云效解决方案负责人),阿里云资深技术专家陈鑫(云效平台负责人)以及阿里云高级产品专家张裕(云效平台产品架构师)共6位领军人物,一起围绕数字化转型浪潮下的技术变局进行了深度的研讨。

> 数字环境下,各界如何看待科技发展与业技融合?

当前,央行侧重提升产业的整体数字化,同时还提出了更高的要求:希望业务系统或者业务创新能够实现跨角色、跨流程的自由编排和组合。这个要求即便对互联网企业来说都非常高,银行业等传统企业如果想通过企业级的工程,来整体提升业务和技术能力、实现业务和技术的融合,更是一件困难的事情。所以,需要一些新的方法论或工具来支撑。

今年年初,中国银保监会与人民银行发布的《关于银行业保险业数字化转型的指导意见》已经明确指出,在数字化时代要做到“业技融合”,同时BizDevOps这个词也已经被写入央行《金融科技发展规划(2022-2025年)》中。这两份文件已经为银行的数字化转型提出了具体的要求和方法,变成了行业转型的参照。

金融行业天然走在数字化的前沿,已经享受到了数字化的红利。但是,还有很多产业和行业仍面临挑战。比如,生产线的出现可以让企业既得到质量又得到了效率,但一定程度上牺牲了体验,而数字化天然可以解决这个问题。如果用户需求的获取、还原、设计、生产、交付和服务等环节有数字化的支撑,就有可能在整个环节里满足用户的个性化体验。

我们已经看到,很多企业通过数字化技术打造独特的体验,创造差异化价值。实体经济正在逐渐向信息化的世界迁移。未来,所有的实体经济都要做数字化,甚至未来所有的企业都会成为软件企业。未来任何业务想要有竞争力,都必须运行在数字化基座之上。

那么,数字化的引擎是什么?是软件。软件的燃料是什么?是数据。

因此,整个数字化转型浪潮对软件开发提出了非常高的要求。如何端到端、全链路地去看而不是只看单个阶段或者单个产品?如何建立最本质的模型,从物理世界过度到数字世界,并反过来影响物理世界?如何构建顺畅高效精准的交付模式?这些问题都变得非常重要。

作为一个大的数字经济体,阿里巴巴在业务与技术融合的发展过程中也经历了三个阶段。

  • 第一阶段,向技术要效能。那时候,企业面对的是如何将技术自动化,实现技术本身的提效;
  • 第二阶段,不仅向技术要效能,还要考虑技术如何更加高效地去支撑业务。于是,中台的概念被提了出来;
  • 第三阶段,也就是这两年,阿里希望顶层战略可以顺利传达到业务和技术团队,特别在意业务和技术的协同,开始讨论如何通过方法和工具,将技术和业务的协同形成标准化的实践。

开发工具本身是为了帮助一线同学提升幸福感和效率。作为开发者,关心的是如何能够专注而高效地工作、高效开发和测试,但更重要的是,保证自己做的是正确的事。

现在有一个趋势:做底层研发的越来越少,软件研发的方式和习惯在发生变化。

现在,开发做的不再是一个通用工具,而是要随着业务不断演化。

> 为什么一定要从DevOps走向BizDevOps?

如上文所述,作为加快金融服务智慧再造的重要组成部分,BizDevOps成为重塑智能高效的服务流程的核心能力组成。但BizDevOps也不是另起炉灶,而是DevOps的自然扩展,从打破IT内部的墙,到打破IT与业务的墙。

DevOps于2009年被提出,主要是为了打破Dev与Ops的墙。当时的墙还是比较明显的。Dev关注的是快,对象是代码,Ops关注的是稳,对象是机器。两者目标天然有矛盾,部门墙由此建立起来,这当然不利于IT 价值的最大化。

2009 年,在美国举行的第二届Velocity大会上,来自Flickr 公司的John Allspaw和Pauk Hammond发表了一个演讲《10+ Deploys Per Day: Dev and Ops Cooperation at Flickr》。在这个演讲中,Allspaw和Hammond以角色扮演的方式,生动地表现了开发与运维之间的各种冲突。演讲中出现很多金句,如“It's not my code, it's your machines!”,这深刻反映了Dev和Ops关系的现状。接着,他们又展示了开发团队(Dev和运维团队(Ops如何通力合作,借助工具消除双方间的壁垒。

这次演讲是DevOps发展历程中的标志性事件。它提出了正确的问题:为了更快交付和实现价值,必须弥合开发和运维之间的鸿沟,并给出了解决方案:为了弥合开发和运维之间的鸿沟,需要在文化、工具和实践方面的系列变革。

而在今天的大环境下,我们面临着一个新的问题:如何打通业务(Biz)与开发运维(DevOps)之间的墙,以更好地应对数字经济下的挑战。

仍以阿里为例,今天阿里的中台也面临两个问题。第一个是协同问题,阿里中台本身是一个大部门,大的业务线和小的业务线从前台传递到中台有优先级,但大家都觉得自己很重要,这就是一个典型的大型企业协同问题。第二个问题就是如何不让技术、中台本身成为瓶颈。阿里希望业务可以自己去做技术,这样有价值的想法和创新可以得到最快的响应。

“你们团队是业务主导还是产品主导?”技术人都不希望被当作资源去做事,而是希望可以和业务合作以达到业务成功。其实,业务和技术应该是共生合作的关系。

在零售和金融行业,这种关系比较明显。比如银行的业务占绝大多数,大概有90%,如果有业务研发一体化的系统,技术可以满足更多的业务诉求,那么业务就能更快地完成工作。

> 如何落地 BizDevOps?

DevOps运动还没结束,仍在继续发展。DevOps运动有很多可以给BizDevOps借鉴的地方。

首先,是在目标上进行统一。DevOps为了统一目标,借鉴了精益管理、敏捷管理、看板等工作方法,打通了整个DevOps流程,产生了非常好的对于管理方法的驱动。其次,DevOps在开发和运维之间找到了共同点。大家关注的是应用,以应用为中心去做开发,演变成了阿里和微软的OAM模型。因此,既要有理念和方法上的改变,还要用技术手段来解决问题,这是我们需要从DevOps运动中学习和借鉴的。

那么,业务和技术的共同目标是什么?在流程中有什么共同关注的东西?共同的目标、共同的关注点,有效的技术或者工程实践,是BizDevOps落地的关键。

首先,要把业务、DevOps统一起来,统一语言非常重要。业务和技术有墙是正常的,因为业务间本身可能就有割裂。以银行为例,每个部门画图的标准不一,统一业务的语言就有难度。业务之间先统一语言,然后和IT用统一的语言沟通,然后统一数据和业务。从基础语法到长期熟练地使用语法,制定业务标准、数据标准,行业上下游企业定义好标准,这个过程的整合需要时间。

对于软件行业来说,DevOps代表第一生产力,数据代表软件下的生产资料。DevOps发展多年,相对来说已经很成熟,因此成为快速迭代、试错的实验系统。在已经有这套系统的情况下,Biz就更应该好好利用这个系统。

现在,可以把Biz放在DevOps前面,后续也可以把Biz放在DevOps后面。这意味着业务不是拍脑袋做的,而是有数据验证的。Biz、Dev、Ops这三个单词不应该是在一条线上,而应该是一个环,加入数据这个生产要素之后,我们可以用实验精神来创造一些商业机会。

当前能做的是,借鉴DevOps的经验,有一定的工具来承载最佳实践和方法,固化到流水线上帮助落地。

有的企业搭了一下就觉得自己在做DevOps实践了,其实我们还是要有更高的追求。从文化上解决和改变工作方式,短期内是无法做到的,更加合理的方式是去培养复合型人才。DevOps让开发要懂测试,DevSecOps让开发要懂安全,Biz加进来以后,开发人员也要懂业务。事情没办法一步到位,也许在过渡期中,一个比较好的方式就是产学研联合去培养复合型的人才。

最后仍然要强调一下,BizDevOps最大的机会点还是在需求本身,在构建数字化的生态本身。

> BizDevOps的产品应该如何打造?

特斯拉的Elon Musk曾说 ,“比起造汽车来说,设计这条流水线的难度是它的100倍。”那么,如何做才能把BizDevOps的流水线做出来?

阿里云云效平台负责人陈鑫提到,在服务众多云效客户的过程中发现,科技部门对于DevOps比较有共识,同时也欣然接受。例如大家都会理解一体化研发运维平台、走向云原生这样的一些概念和说法,DevOps的标准和方法实践都在逐步收敛以适配开发者需求。

但是,业务部门还完全没有达成这种共识。现状是只解决技术部门的效率问题,很难改变业务的创新效率问题。如果有一个工具可以让业务看到工程活动和业务之间的关系,那么业务部门就可以作出判断和行动。很多企业有非常多的工具可以用,但没有可以实现数字化目标的工具。

打造BizDevOps工具有很多难点。比如目前市面上有很多DevOps工具,但企业还是会再造一个工具,为什么?因为各个工具的数据模型并不一致。因此要想打造一个BizDevOps平台,首先要保证数据一致。大家对一些最基础概念的认知要拉齐。当前不同的人对于“应用”的定义和理解都是不一样的,如何能形成通用规范?

另外,DevOps需要不同的人协作,BizDevOps作为一个工具或者平台,如何让多个角色有统一的视角,避免互相传递各自视角的信息导致低效,也是非常关键的。此外,工具不是为了改变而改变,工具是用来解决问题的,工具本身不能对用户的状态进行假设,必须适配用户在各种条件下的状态。而研发自身也需要做数字化转型。研发过程中也会产生数据,产品研发本身实现数字化转型,才能更好地支撑更大的数字化转型。

整体来说,BizDevOps在概念、流程、方法上如何标准化,需要业内一起努力,共同推动在产品上的落地。

> 如果BizDevOps真得发生,未来会如何?

BizDevOps对业务的创新速度和有效性会产生很大的作用,数据会变成基本常识,业务和开发之间的分别也会模糊起来。一定会有部分业务人员愿意往开发上靠近。开发人员抽象分析问题的优势也会给业务人员带来很多的价值。

将来的业务更多是从用户的视角去打通链路,建立本质的认知和数字化模型。一切业务数据化,一切数据业务化。业务能够以更自然的方式向研发过渡。一个人的职业发展方向也可以有比较大的选择,人才培养上也会有一些变化和创新。

如果BizDevOps真的发生了,可能业务之外的组织上的各个function会成为最大瓶颈,其他BU的决策过程可能都要做相应的调整。未来,企业肯定要跟着BizDevOps做转型。

> 下一步,我们怎么做?

经过深度研讨,产学研6位专家在时代挑战与机遇、BizDevOps重要性与必要性、落地方法与方式上达成了共识。他们希望围绕BizDevOps的探讨不仅仅停留在这个层面,而是可以继续从产学研界的共同努力着手,推动BizDevOps真正发生,为软件产业的变革贡献力量。

原文链接

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

为什么排版引擎解析css选择器时一定要从右往左解析?

首先我们要看一下选择器的「解析」是在何时进行的。主要参考这篇「Howbrowserswork」(http://taligarsiel.com/Projects/howbrowserswork1.htm)来看,浏览器渲染的过程以WebKit为例大致如下: HTML经过解析生成DOMTree(这个我们比较熟悉);... 查看详情

什么是devops如何实现devops

...组合。但这里的组合并不是简单地将两个团队合并,而是要从思维和流程上变革,根据DevOps思想重新梳理全流程的规范和标准。DevOps既是一种思维方式,同时也是一种工作方式,作为一套促进开发、技术运营和质量保障三个部门... 查看详情

深度解密:kubernetes从中心走向边缘

:由华为开源,采用边缘节点RemoteNode方案,深度定制了Kubernetes,精简了Kubelet,使用MQTT重新研发了Master与Worker通信机制等,是面向边缘计算场景、专为边云协同设计的业界首个云原生边缘计算框架。KubeEdge于2019年3月正式进入CNCF... 查看详情

深度学习之deeplearning4j预测股市走向(代码片段)

上一篇,预测花的类型,是没有用到中间件的,实际情况是,数据量是非常大的,所以不实用,这次使用DeepLearning4j来预测股市走向,后续加上spark。代码如下:publicclassDailyData//开盘价privatedoubleopenPrice;//收盘价privatedoublecloseprice;... 查看详情

选择ul到一定深度

】选择ul到一定深度【英文标题】:Selectuluptoacertaindepth【发布时间】:2015-09-0221:46:57【问题描述】:ul,ulul,ululullist-style:none;margin:0;padding:0;问题:是否有选择器,所以我可以使用它为每个n-deepul应用样式?例如:ul>ul【问题讨论... 查看详情

[devops]认识一下

...发运维一体化总结一下:自动化是为了服务DevOps,并不是一定要自动化。目的是:提高效率。DevOps可以cloud,虚拟化。 查看详情

深度kweaver:价值驱动,认知智能走向开源共创

文|智能相对论作者|叶远风在底层硬件创新之外,软件创新对提升中国前沿科技竞争力同样重要,这其中,开源的必要性毋庸置疑。但是,在全球范围内开源项目硕果累累的大背景下,中国开源过去的发展却不... 查看详情

在落地devops项目中遇到的困难挑战和解决思路

...困境  本文章由www.mingpaixinxi.com网转载分享,DevOps落地为什么那么难?因为从设计人员、组织架构、流程、人员技能到工具,变化很大,要求很高,建设风险很高。从理念到落地,需要一定的周期才能够成熟,技术决策者一般... 查看详情

深度|新兴软件研发范式崛起,云计算全面走向serverless化

11月3日,2022杭州·云栖大会上,阿里云智能总裁张建锋表示,以云为核心的新型计算体系正在形成,软件研发范式正在发生新的变革,Serverless是其中最重要的趋势之一,阿里云将坚定推进核心产品全面Serve... 查看详情

devops起源

2007 年:比利时,一个沮丧的独立IT咨询师DevOps的历史要从一个比利时的独立IT咨询师说起。这位咨询师的名字叫做PatrickDebois,他喜欢从各个角度研究IT组织。2007年,Patrick参与了比利时一个政府下属部门的大型数据中心迁移... 查看详情

阿里云数据库走向“四化”:深度融合自研软硬件体系,allinserverless

...rm等核心数据库产品已与自研CPU、CIPU、飞天操作系统进行深度融合创新,并全面Serverless化,对外更好地提供一站式数据管理与服务。阿里云智能数据库事业部负责人李飞飞表示,随着数据库向云原生一站式数据管理... 查看详情

深度|从devops到bizdevops,研发效能提升的系统方法

...终目标的并不多,经常是高调开始,草草收尾。为什么什会这样呢?提升研发效能,首先要弄清楚要解决的问题是什么,然后才是落地解决问题的实践方法。否则问题没定义清楚,就很难有好的结果。那提... 查看详情

平时的工作如何体现一个人的技术深度?

...做需求的理解。每一个程序员都是从刚毕业做需求开始,为什么有的人逐渐成为大牛,主导大型技术项目或走向团队管理岗位,而有的人一直还在做需求。我觉 查看详情

大型企业实施devops的三个阶段

...,技术还没有普及就被淘汰了。在这样一个浮躁的时代我为什么翻译《DevOps实施手册》这本书呢?因为在《DevOps实施手册》里研究的都是长久以来一直有效的理论,比如像福特汽车的生产流水线,像丰田的精益生产,还有敏捷开... 查看详情

云原生时代一站式devops平台--阿里云效

...Ops技术栈选型不外乎以下内容DevOps四大平台代码部署工具要从代码仓库拉起码并部署到服务器代码托管GitLab项目管理jira(收费的)禅道任务分配,任务跟踪ÿ 查看详情

云原生时代一站式devops平台--阿里云效

...Ops技术栈选型不外乎以下内容DevOps四大平台代码部署工具要从代码仓库拉起码并部署到服务器代码托管GitLab项目管理jira(收费的)禅道任务分配,任务跟踪ÿ 查看详情

什么是devops?

DevOps是什么?是开发+运维么?每个人都DevOps的理解都不尽相同,下面是一组对DevOps的定义,通过这组定义,我们基本可以看清DevOps是干啥的。一组过程、方法与系统的统称。用于促进开发、运维和质量保障部门之间的沟通、协... 查看详情

鸿雁王米成:智能家居将从“智控”走向“智慧”,从有感走向无感

...“智控”走向“智慧”,从有感走向无感;企业要从产品思维转向用户思维等极具前瞻性的核心观点。01从“智控”走向“智慧”,从有感走向无感目前市面上智能家居更多的停留在智控、局部控制的阶段,这是... 查看详情