当前位置: 首页 > news >正文

DevOps工程技术价值流:加速业务价值流的落地实践与深度赋能

DevOps的兴起,得益于敏捷软件开发的普及与IT基础设施代码化管理的革新。敏捷宣言虽已解决了研发流程中的诸多挑战,但代码开发仅是漫长价值链的一环,开发前后的诸多问题仍亟待解决。与此同时,虚拟化和云计算技术的飞跃,使得基础设施代码化管理成为可能。这两大驱动力共同催生了DevOps这一新型管理方法。

工程技术价值流,依托虚拟化与云技术的强大支撑,致力于将IT基础设施转化为程序代码,为业务价值流注入强劲动力。我们聚焦于“三线一体”战略,即精准映射生产关系、大幅提升生产力、全面优化生产资料,以此全方位提升工程技术流程的效率与质量。

在这一战略框架下,我们深度融合工具化、自动化与门禁化三大要素:

  • 工具化:我们强化工作线上的工具应用,促进团队间的无缝协作,显著提升工作效率。

  • 自动化:在关键流程中引入自动化技术,大幅减少人工操作,有效降低错误率,全面提升整体效能。

  • 门禁化:在关键环节设立质量门禁,确保每一环节均达到高标准,从而显著提升最终产品的质量。

通过加速CI/CD流程,我们实现了快速交付、高效运维、卓越质量及紧密团队协作的目标,为工程技术价值流的持续优化奠定了坚实基础。

一、业务价值流痛点梳理与部门协同

  1. 深入剖析业务价值流

    1. 识别关键痛点:如需求变更频繁、开发周期长、运维响应慢等。

    2. 跨部门协作:组建跨部门团队,共同识别实现业务过程中的瓶颈。

  2. 阶段与活动分析

    1. 列出业务价值流中的各个阶段和活动。

    2. 分析每个阶段的人工操作步骤数量、耗时、自动化步骤数量以及操作人员是否需求专职。

    3. 识别痛点,如人工操作多、耗时长、错误率高等。

阶段

活动

操作路径

人工操作步骤数量

人工操作步骤耗时

自动化步骤数量

操作人员是否需求专职

痛点

二、规划工程技术价值流路线

  1. 制定服务蓝图

    1. 基于业务价值流痛点,制定工程技术价值流服务蓝图。

    2. 明确各阶段目标与里程碑,确保实施路径的可行性。

  2. 选择实现方式

    1. 基于开源架构搭建:成本低,但维护成本高,需要个性化改造。

    2. 选用业界成熟产品:如腾讯蓝鲸、阿里云效等,集成度高,但一次性投入大。

在规划工程技术价值流路线的过程中,我们已明确公司的业务价值流痛点,并据此着手制定解决痛点的战略规划。首先,我们确立工程技术价值流的核心目标是为业务价值流服务,一切努力都以产生业务价值为最终导向。基于此,我们构建了符合公司特点的持续交付流水线蓝图,如上图。

接下来,我们需要选择实现这一蓝图的方式。这包括两种主要路径:一是基于开源架构搭建,二是选用业界成熟的产品,如腾讯的蓝鲸、阿里的云效等。开源架构的优势在于成本较低,且研发管理过程不依赖于特定厂商,公司可自主决定研发管理方式。然而,其不足也显而易见,即需要投入大量人力去维护工具链,且项目管理过程和研发管理过程的数据可能无法直接贯通,需要大量个性化改造。这种改造可能会带来额外的维护成本和周期,难以满足真正的提质增效需求。

相比之下,选用成熟产品的优势在于实现了项目管理平台和研发管理平台的集成,可实现产品、需求项目、研发过程等流程和数据的统一管理、统一度量和统一视图。但前提是必须选对产品,其不足则在于需要一次性投入较多的金钱和人力。

在确定了策略后,我们就需要制定详细的实施计划。这个计划将明确各阶段的目标与里程碑,确保实施路径的可行性和有效性。通过这样一步步的推进,我们将不断优化工程技术价值流,为公司创造更多的业务价值。

三、实现工程技术价值流

  1. 关键开源工具

    1. 项目协同:采用Jira、云效等敏捷项目管理工具。

    2. 编码工具:选用IntelliJ IDEA、Visual Studio Code等高效IDE。

    3. 代码仓库:利用Git结合GitLab进行版本管理。

    4. 质量监控:集成SonarQube、Checkstyle等静态代码分析工具。

    5. 持续集成(CI):采用Jenkins、GitLab CI/CD等工具。

    6. 制品管理:使用Maven、Gradle及Nexus Repository OSS等。

    7. 容器化:采用Docker进行应用容器化。

    8. 编排管理:利用Kubernetes进行容器编排与管理。

  2. 流程与管理策略

    1. 测试管理:实施全面测试策略,利用Selenium、Cypress等测试框架。

    2. 发布管理:使用SemVer规范版本号,结合Helm Chart进行应用发布。

    3. 文档管理:使用GitBook等工具进行文档集中管理。

    4. 服务监控:集成Prometheus进行服务监控与告警。

    5. 度量管理:通过SonarQube、Jenkins等工具进行量化评估。

  3. 基础设施代码化管理

    1. 采用Terraform、Ansible等IaC工具,结合Kubernetes的Operator模式,确保环境一致性。

四、项目中实践优化工程技术价值流

  1. 选取代表性项目

    1. 实践工程技术价值流优化策略。

    2. 监控项目进展,及时调整优化方案。

  2. 收集反馈与评估

    1. 收集团队成员的反馈。

    2. 评估优化效果,形成闭环迭代。

五、推广使用工程技术价值流

  1. 组织内部培训

    1. 提升员工对工程技术价值流的理解与接受度。

  2. 建立激励机制

    1. 鼓励员工积极应用工程技术价值流。

  3. 分享成功案例

    1. 扩大工程技术价值流的影响力与应用范围。

六、整体优化

  1. 持续监控与改进:建立持续监控机制,定期评估工程技术价值流的实施效果,及时发现并解决问题。

  2. 技术选型与迭代:根据业务发展和技术趋势,不断调整和优化技术选型,确保工程技术价值流的先进性和适用性。

  3. 文化塑造与团队建设:推动DevOps文化的深入传播,加强团队建设,提升团队整体的协作能力和创新能力。

通过以上步骤,我们可以全面优化工程技术价值流,为公司创造更多的业务价值,加速业务价值流的落地实践与深度赋能。

相关文章:

DevOps工程技术价值流:加速业务价值流的落地实践与深度赋能

DevOps的兴起,得益于敏捷软件开发的普及与IT基础设施代码化管理的革新。敏捷宣言虽已解决了研发流程中的诸多挑战,但代码开发仅是漫长价值链的一环,开发前后的诸多问题仍亟待解决。与此同时,虚拟化和云计算技术的飞跃,…...

IP数据云 识别和分析tor、proxy等各类型代理

在网络上使用代理(tor、proxy、relay等)进行访问的目的是为了规避网络的限制、隐藏真实身份或进行其他的不正当行为。 对代理进行识别和分析可以防止恶意攻击、监控和防御僵尸网络和提高防火墙效率等,同时也可以对用户行为进行分析&#xff…...

vue2 自动化部署 shell 脚本

需求场景:在云平台中进行开发时,由于无法连接外网,在部署前端项目时,是通过本地打包再上传到服务器的方式进行部署的。基于这种部署场景,通过 shell 脚本进行部署流程优化,具体如下: 1、服务器…...

服务器数据恢复——Ext4文件系统使用fsck后mount不上的数据恢复案例

关于Ext4文件系统的几个概念: 块组:Ext4文件系统的全部空间被划分为若干个块组,每个块组结构基本上相同。 块组描述符表:每个块组都对应一个块组描述符,这些块组描述符统一放在文件系统的前部,称为块组描述…...

CTF攻防世界小白刷题自学笔记14

fileclude,难度:1,方向:Web 题目来源:CTF 题目描述:好多file呀! 给一下题目链接:攻防世界Web方向新手模式第17题。 打开一看,这熟悉的味道,跟上一篇文章基本一摸一样的&#xff…...

家政服务小程序,家政行业数字化发展下的优势

今年以来,家政市场需求持续增长,市场规模达到了万亿级别,家政服务行业成为了热门行业之一! 家政服务种类目前逐渐呈现了多样化,月嫂、保姆、做饭保洁、收纳、维修等家政种类不断出现,满足了居民日益增长的…...

Springboot如何打包部署服务器

文章目的&#xff1a;java项目打包成jar包或war包&#xff0c; 放在服务器上去运行 一、编写打包配置 1. pom.xml 在项目中的pom.xml文件里面修改<build>...</build>的代码 >> 简单打包成Jar形式&#xff0c;参考示例&#xff1a; <build><fina…...

ubuntu将firewall-config导出为.deb文件

firewall-config ubuntu是canonial 公司维护的&#xff0c;用wireshark测过&#xff0c;开机会给他们公司发遥测&#xff08;开了ufw阻塞所有连接也一样&#xff0c;canonial在里面把代码改了&#xff09;firewall-config是fedora(爱好者维护&#xff0c;公益版本)自带的防火墙…...

C++算法练习-day40——617.合并二叉树

题目来源&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 题目思路分析 题目&#xff1a;给定两棵二叉树 root1 和 root2&#xff0c;请合并这两棵树&#xff0c;即将 root2 中的每个节点合并到 root1 中&#xff0c;合并的规则是如果两个节点在同一位置&#xff08;即…...

2024数维杯国际赛C题【脉冲星定时噪声推断和大气时间信号的时间延迟推断的建模】思路详解

脉冲星是快速旋转的中子星&#xff0c;具有连续和稳定的旋转&#xff0c;因此被称为“宇宙的灯塔”。对脉冲星的空间观测在深空航天器导航和时间标准的维护中起着关键作用。 将脉冲星时间应用于原子时间的保持&#xff0c;预期可以提高本地原子钟的稳定性和可靠性&#xff0c;代…...

【Linux】MTD 分区

我在文章 计算机储存与分区 中讲了关于 GUID 分区和 MBR 分区&#xff0c;他们在 PC 上很常见&#xff0c;但是在嵌入式系统上&#xff0c;Linux 会使用 MTD 分区&#xff0c;至于什么是 MTD 分区&#xff0c;请看&#xff1a; NAND/MTD/UBI/UBIFS概念及使用方法 General MTD…...

MySQL(5)【数据类型 —— 字符串类型】

阅读导航 引言一、char&#x1f3af;基本语法&#x1f3af;使用示例 二、varchar&#x1f3af;基本语法&#x1f3af;使用示例 三、char 和 varchar 比较四、日期和时间类型1. 基本概念2. 使用示例 五、enum 和 set&#x1f3af;基本语法 引言 之前我们聊过MySQL中的数值类型&…...

【数据搜集】初创企业获客,B端数据获取

在竞争激烈的商业世界中&#xff0c;初创企业面临着诸多挑战&#xff0c;而获取 B 端客户资源无疑是其中的关键一环。今天&#xff0c;就让我们深入了解一款专为解决此类难题而生的强大工具 —— 探商宝。 对于初创企业来说&#xff0c;B 端客户往往具有更高的价值和稳定性&am…...

hhdb数据库介绍(9-13)

函数与操作符 计算节点对函数的支持 此文档仅列出部分经特殊处理的函数&#xff0c;若需要了解所有计算节点支持的函数&#xff0c;请向官方获取《计算节点最新功能清单》。 函数名称支持状态是否拦截说明ABS()支持否ACOS()支持否ADDDATE()支持否ADDTIME()支持否AES_DECRYPT…...

Jmeter基础篇(24)Jmeter目录下有哪些文件夹是可以删除,且不影响使用的呢?

一、前言 Jmeter使我们日常做性能测试最常用的工具之一啦&#xff01;但是我们在和其他同学协同工作的时候&#xff0c;偶尔也会遇到一些问题&#xff0c;例如我想要给别人发送一个Jmeter工具包&#xff0c;但这个文件包往往会很大&#xff0c;比较浪费流量和空间&#xff0c;…...

卷积、频域乘积和矩阵向量乘积三种形式之间的等价关系与转换

线性移不变系统 线性移不变系统&#xff08;Linear Time-Invariant System, LTI系统&#xff09;同时满足线性和时不变性两个条件。 线性&#xff1a;如果输入信号的加权和通过系统后&#xff0c;输出是这些输入信号单独通过系统后的输出的相同加权和&#xff0c;那么该系统就…...

【Vue】Vue3.0(二十二) v-model 在原始Dom元素、自定义输入组件中双向绑定的底层实现原理详解

上篇文章 【Vue】Vue3.0&#xff08;二十一&#xff09;Vue 3.0中 的$event使用示例 &#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;Vue专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月11日17点30分 文章目录 1. v-model 用于 HTML 标…...

史上最强大的 S3 API?介绍 Prompt API。

迄今为止&#xff0c;对象存储世界已由 PUT 和 GET 的 S3 API 概念定义。然而&#xff0c;我们现在生活的世界需要更多。鉴于 MinIO 的 S3 部署甚至比 Amazon 还多&#xff0c;因此我们不得不提出下一个出色的 S3 API。 这个新 API 就是 Prompt API&#xff0c;它很可能成为有…...

单片机设计智能翻译手势识别系统

目录 前言 一、本设计主要实现哪些很“开门”功能&#xff1f; 二、电路设计原理图 电路图采用Altium Designer进行设计&#xff1a; 三、实物设计图 四、程序源代码设计 五、获取资料内容 前言 在全球化的浪潮下&#xff0c;语言的多样性也为人们的交流带来了不小的挑战…...

「Mac玩转仓颉内测版12」PTA刷题篇3 - L1-003 个位数统计

本篇将继续讲解PTA平台上的题目 L1-003 个位数统计&#xff0c;通过对数字的处理与统计&#xff0c;掌握基础的字符串操作与数组计数功能&#xff0c;进一步提升Cangjie编程语言的实际应用能力。 关键词 PTA刷题数字统计数组操作字符串处理编程技巧 一、L1-003 个位数统计 题…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)

引言 工欲善其事&#xff0c;必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后&#xff0c;我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集&#xff0c;就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...

归并排序:分治思想的高效排序

目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法&#xff0c;由约翰冯诺伊曼在1945年提出。其核心思想包括&#xff1a; 分割(Divide)&#xff1a;将待排序数组递归地分成两个子…...

Linux-进程间的通信

1、IPC&#xff1a; Inter Process Communication&#xff08;进程间通信&#xff09;&#xff1a; 由于每个进程在操作系统中有独立的地址空间&#xff0c;它们不能像线程那样直接访问彼此的内存&#xff0c;所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...

C++ 类基础:封装、继承、多态与多线程模板实现

前言 C 是一门强大的面向对象编程语言&#xff0c;而类&#xff08;Class&#xff09;作为其核心特性之一&#xff0c;是理解和使用 C 的关键。本文将深入探讨 C 类的基本特性&#xff0c;包括封装、继承和多态&#xff0c;同时讨论类中的权限控制&#xff0c;并展示如何使用类…...