组织结构对DevOps的影响

news/2025/2/9 6:25:24 标签: devops, 运维

观看完本文后,你将能够识别组织结构如何影响DevOps,解释康威定律,并描述DevOps团队的最佳组织形式。

让我们来看看你的组织结构是如何影响你采用DevOps的能力的。

要成为一个采用DevOps的组织,首先要做到敏捷,因为敏捷是DevOps的基本准则。

你必须问问自己:“我的组织文化是否真正接受了敏捷思维?” 要记住,敏捷团队必须规模小,这一点很重要。

如果你有大型团队,又想成功实施DevOps,就需要缩小团队规模。

敏捷团队应该专注。

你不能让团队成员同时参与多个项目,还期望所有项目都能以相同的速度推进,或者指望团队成员长时间专注于任何一个项目。

敏捷团队应该是跨职能的。

我们所说的 “开发团队” 包括所有负责产品开发的人员。

这意味着软件工程师、测试工程师、运维工程师、业务分析师,无论需要什么角色。

这些人需要在同一个团队中,而不是各自为政,通过票务系统来引起彼此的注意。

这些团队需要自我组织。

他们一次只专注于一个冲刺阶段的工作。

让我们从康威定律开始,看看组织架构为什么如此重要。

早在1968年,梅尔文·康威就指出:“任何设计系统(广义定义)的组织,其产生的设计结构都会是该组织沟通结构的复制。”

例如,如果你让四个团队构建一个编译器,你会得到一个四遍扫描的编译器。

你得到一个四遍扫描的编译器并不奇怪,因为你让四个团队来构建它。

如果你有一个用户界面团队、一个应用程序团队和一个数据库团队,你会得到一个三层架构。

你得到一个三层架构并不奇怪,因为你让三个团队来构建它。

这就是康威定律在起作用。

如果你想改变构建软件的方式,采用微服务应用架构,就需要围绕你期望构建的架构来重新组织人员。

在一个围绕技术组织的传统机构中,你可能会有一个独立的用户界面团队,负责所有用户界面相关的工作。

无论你在构建什么功能,都需要引起这个团队中某人的注意,并占用他们的时间,来为你的功能添加一个用户界面元素。

这个团队有时也被称为前端团队。

然后是应用程序团队,或后端团队,他们添加应用程序逻辑。

他们不处理前端或数据库模式之类的事情,因为有数据库管理员团队来管理这些。

除非提交工单让数据库管理员(DBA)来处理,否则没人会碰数据库。

当你这样组织时,就会得到一个三层架构。

就像我说的,你得到一个三层架构并不奇怪,因为你让三个团队来构建它。

康威定律告诉我们,一个组织产生的设计结构会反映该组织的沟通结构。

这并不奇怪。

我们得到的就是我们组织架构所造就的。

这就是为什么特别关注组织架构如此重要。

围绕业务领域来组织团队会更好。

你可能有一个账户团队,负责管理登录、注册和用户数据。

在这个跨职能团队中,他们具备用户界面、应用程序和数据库方面的技能。

然后是个性化团队。

他们使用人工智能(AI)创建个性化算法。

他们管理自己的用户界面、应用逻辑和数据库。

最后,你可能有一个仓储团队,负责构建与运输、收货和库存相关的功能。

这些是他们从头到尾管理的微服务。

仓储团队在开发功能时,不需要与其他任何团队协调。

他们不需要提交工单来引起其他团队的注意以完成自己的功能。

他们作为一个小型、专注、跨职能、自我组织的团队开展工作。

如果你不围绕业务领域组织团队,就无法充分获得DevOps带来的好处。

你要让团队与业务保持一致。

每个团队都应该有与业务领域一致的使命。

确保他们拥有所需的自主权,让他们感觉像是一个 “小型初创公司”。

他们需要自我组织、跨职能,由5 - 7名工程师组成,但最多不超过10人。

然后,你要赋予团队对其产出的端到端的责任,以此来赋能团队。

他们负责提交、构建、部署、维护和运营自己的服务。

他们掌控一切。

而且你要让他们承担通常围绕单一业务领域的长期使命。

在打造高绩效团队时,这一点的重要性再怎么强调都不为过。

如果团队人员不断变动,你就永远无法获得拥有专注于长期使命的团队所带来的好处,这种团队能够培养对工作的主人翁意识和自豪感。

在本文中,你了解到组织必须拥有小型、专注、跨职能、自我组织的团队,才能成功实施DevOps。

康威定律意味着公司的设计成果是公司沟通结构的直接反映。

成功的DevOps团队应该围绕业务领域进行组织。

每个团队都应该有与业务领域一致的使命。


http://www.niftyadmin.cn/n/5845703.html

相关文章

HTTP协议学习大纲

第一阶段:HTTP基础概念 互联网与Web基础 理解Web工作原理:客户端-服务器模型URL与URI的结构及区别端口、协议、域名概念 HTTP协议概览 HTTP的作用与特点(无状态、无连接、可扩展)HTTP协议版本演进(0.9 → 1.0 → 1.1 …

【GitHub】GitHub 2FA 双因素认证 ( 使用 Microsoft Authenticator 应用进行二次验证 )

文章目录 一、GitHub 的 2FA 双因素认证二、使用 Microsoft Authenticator 应用进行二次验证1、TOTP 应用2、下载 Microsoft Authenticator 应用3、安装使用 Authenticator 应用 三、恢复码重要性 一、GitHub 的 2FA 双因素认证 现在登录 GitHub 需要进行二次身份验证 ; 先登录…

视频采集卡接口

采集卡的正面有MIC IN、LINE IN以及AUDIO OUT三个接口, MIC IN为麦克风输入,我们如果要给采集到的视频实时配音或者是在直播的时候进行讲解,就可以在这里插入一个麦克风, LINE IN为音频线路输入,可以外接播放背景音乐…

【Pytorch实战教程】PyTorch中的Dataset用法详解

PyTorch中的Dataset用法详解 在深度学习中,数据是模型训练的基石。PyTorch作为一个强大的深度学习框架,提供了丰富的工具来处理和加载数据。其中,Dataset类是PyTorch中用于处理数据的重要工具之一。本文将详细介绍Dataset的用法,帮助你更好地理解和使用它。 1. 什么是Dat…

工业4.0时代,3D开发工具HOOPS如何赋能塑计量行业自动化与数据可视化?

随着工业技术的飞速发展,计量行业正经历从传统人工测量向数字化、自动化测量的深刻变革。3D可视化技术和开发工具在提升测量精度、加速测量流程以及优化数据处理方面发挥着至关重要的作用。作为一款高性能的3D开发工具,HOOPS在计量行业的应用不仅显著提高…

WP.29-R155 汽车网络安全法规解读

1 术语定义 WP.29: 世界车辆法规协调论坛 UN R155: 关于网络安全和网络安全管理体系的车辆认证的统一规定 网络安全: 指的是一种状态,在这种状态下,道路车辆及其功能应当免受来自电子电气组件方面的网络完全威胁 2 法…

antd-react日期组件disabledDate不可选择的日期 (置灰)属性

需求:原定结项时间表单里回显为2025-02-06,延期时间的选择范围要设置从2025-02-07开始选择包括2.7号的; 2.7号之前的置灰,不可选择 PC端部分代码: // react的函数组件写法 const disabledDate function (current) {console.log(c…

neo4j-解决导入数据后出现:Database ‘xxxx‘ is unavailable. Run :sysinfo for more info.

目录 问题描述 解决方法 重新导入 问题描述 最近在linux上部署了neo4j,参照之前写的博客:neo4j-数据的导出和导入_neo4j数据导入导出-CSDN博客 进行了数据导出、导入操作。但是在进行导入后,重新登录网页版neo4j,发现对应的数据库状态变…