打造研发效能的黄金三角,实现效能提升的增强回路

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 打造研发效能的黄金三角, 实现效能提升的增强回路 张乐 腾讯 技术工程事业群 DevOps与研发效能资深技术专家
2. 自我介绍 ee.msup.com.cn 张乐 • 腾讯 技术工程事业群 DevOps与研发效能资深技术专家 • 多年一线互联网大厂工程效率领域工作经历(百度、京东等) • 历任埃森哲、惠普等全球五百强企业资深咨询顾问、技术专家 • 长期工作在一线,专注于研发效能提升、敏捷与DevOps实践落地、 万人研发规模 DevOps 平台设计、研发效能度量体系建设等方向 • DevOps 起源国际组织 DevOpsDays 中国区核心组织者 • 多个国内技术大会联席主席、DevOps或研发效能专题出品人 • EXIN DevOps 全系列国际认证课授权讲师、凤凰项目沙盘授权教练 • 译著《独角兽项目:数字化时代的开发传奇》,《DevOps最佳实践》
3. 三个石匠的寓言 有三个石匠在打石头。 有个路人经过,问他们在做什么? ee.msup.com.cn • 第一个石匠说:"我在打石头,养家糊口" • 第二个石匠说:"我在做全国最好的石匠活" • 第三个石匠说:"我在建造一座大教堂"
4. 什么是研发效能 业务目标 理想的功能和质量 理想的工作量 有效性 效率 研发效能 实际的功能和质量 实际的工作量 产出 / 投入 ee.msup.com.cn 更高效、更高质量、更可靠 可持续地交付更优的业务价值
5. 如何提升研发效能 优化 产品导向+工程卓越 效能实践 业务敏捷创新实践 敏捷精益协作实践 持续交付工程实践 云原生技术实践 组织和团队拓扑 提炼和采纳上下文匹配的 DevOps及效能提升实践 • • • • • 效能度量 完善 沉淀 洞察 支撑 自动化+自助化 ee.msup.com.cn • 一站式、一体化平台 • 需求/工程价值流联动 • 沉淀资产和研发数据 效能度量数据洞察 驱动效能改进和提升 数据驱动+实验思维 • • • • • 数据自动采集 指标体系设计 分析和诊断模型 自服务化产品设计 避免把度量武器化 观测 效能平台 一站式、一体化效能平台 支撑软件交付全生命周期 场景化+生态化 • 场景化串联研发交付活动 • 模块化、配置化、插件化 • 开放平台能力,生态共建 研发效能的黄金三角 @张乐,2021.07
6. 一、研发效能实践 客户 基于业务目标的敏捷规划 以产品为导向的研发模式 构想 研发 敏捷实践的最佳作用域 ee.msup.com.cn 以应用为中心的运维 发布 软件研发活动从独一无二的创造性活动开始 具有高度的不确定性,需要持续探索和实验 工程卓越的交付和发布 逐步流转到已知的、更加确定性的活动中去 ? 软件是精益流水线上, 敏捷创造出来的产品 需多次重复运行,有优秀实践,可以自动化 精益实践、工程和技术实践的最佳作用域 运维
7. 效能实践地图 构想 发布 运维 影响地图 用户故事地图 敏捷需求 敏捷组织 轻量变更流程 云基础设施 监控和可观测性 基于业务目标WHY-WHO -HOW-WHAT分析方法。 将产品Backlog变成二维 地图,进行敏捷需求规划。 从场景出发进行业务分析 和规划,以实例澄清需求。 搭建跨职能团队,作为敏 捷开发生产力的基本单位。 用代码评审代替繁杂的变 更审批流程,发布合规。 实现更高的敏捷性、可用 性和成本可见性。 提升对基础架构平台、中 间件和应用层的监控能力。 团队实验 客户反馈 敏捷流程 精益协作 部署自动化 混沌工程 故障识别和自愈 收集客户反馈并将其融入 产品和功能设计中。 应用轻量级、结构化和纪 律性的团队工作管理方法。 端到端价值流,小批量、 可视化管理、消除浪费。 自动化减少发布过程人工 干预,提升可靠性和效率。 通过实施促进发现系统弱 点的实验,提升系统韧性。 识别重大问题并在问题出 现之前解决隐患。 团队有权自主尝试新的创 意,更快地开展创新。 … ee.msup.com.cn 研发 … 版本控制 主干开发 持续集成 实施正确的版本控制来确 保可再现性和可追溯性。 频繁合并,保证主干持续 可用,避免合并冲突困扰。 构建可靠自动化测试套件 并在交付过程中持续验证。 架构解耦 代码可维护性 持续交付 研发效能实践地图 从紧耦合的架构迁移到面 向服务的微服务架构。 开发者能够轻松查找、复 用和更改代码,依赖清晰。 使部署成为可靠、低风险、 可随时按需执行的过程。 张乐, 2021.07
8. 大处着眼,小处着手 战略目标与落地行动的对齐 需求分级与价值流闭环管理 同时支撑好产品和项目管理 敏捷管理流与工程活动联动 研发数据度量指引效能改进 ee.msup.com.cn 研发效能实施模型 @ 张乐, 2021.07
9. 大处着眼,小处着手 01. 关注结果,从WHY开始 05. 当解决最薄弱的一环后,停止强化它 确定下个最大的障碍,缓解它,重复。 期望状态 效 能 02. 找出价值流中最大的障碍 影响地图 用户故事地图 敏捷需求 敏捷团队 轻量变更流程 云基础设施 监控和可观测性 基于业务目标WHY-WHO -HOW-WHAT分析方法。 将产品Backlog变成二维 地图,进行敏捷需求规划。 从场景出发进行业务分析 和规划,以实例澄清需求。 搭建跨职能团队,作为敏 捷开发生产力的基本单位。 用代码评审代替繁杂的变 更审批流程,发布合规。 实现更高的敏捷性、可用 性和成本可见性。 提升对基础架构平台、中 间件和应用层的监控能力。 团队实验 客户反馈 敏捷流程 精益协作 部署自动化 混沌工程 故障识别和自愈 团队有权自主尝试新的创 意,更快地开展创新。 收集客户反馈并将其融入 产品和功能设计中。 轻量级、结构化和纪律性 的团队工作流管理方法。 端到端价值流,小批量、 可视化管理、消除浪费。 自动化减少发布过程人工 干预,提升可靠性和效率。 通过实施促进发现系统弱 点的实验,提升系统韧性。 识别重大问题并在问题出 现之前解决隐患。 版本控制 主干开发 持续集成 实施正确的版本控制来确 保可再现性和可追溯性。 频繁合并,保证主干持续 可用,避免合并冲突困扰。 构建可靠自动化测试套件 并在交付过程中持续验证。 架构解耦 代码可维护性 持续交付 从紧耦合的架构迁移到面 向服务的微服务架构。 开发者能够轻松查找、复 用和更改代码,依赖清晰。 使部署成为可靠、低风险、 可随时按需执行的过程。 03. 筛选工具箱中适当的实践 ee.msup.com.cn 当前状态 时间 04. 从小范围开始,先纵向再横向, 应用敏捷思维来提高组织效能 研发效能改进方法 @ 张乐, 2021.07
10. 二、研发效能平台 多视角方案 方案配置层 通用视角 产品视角 多场景和最佳实践 项目视角 开放接口 敏捷研发模型 微前端框架 代码分支模型 持续交付模型 组件生态 效能度量模型 插件生态 研发效能度量平台 核心能力层 效能指标 仪表盘 规划 需求 设计 规划管理平台 战略管理 战略执行 战略回顾 需求管理平台 需求管理 工作流管理 需求统计分析 智能分析 开发 测试 辅助决策 上线 运维 代码托管平台 测试管理平台 部署发布平台 运维管理平台 仓库管理 测试用例 应用管理 应用监控 代码管理 测试计划 部署策略 应用拓扑 代码评审 缺陷管理 集群管理 性能监控 规则管理 自动化测试平台 配置中心 日志检索 接口 / UI 测试 流量控制 报警管理 性能测试 制品管理 故障自愈 敏捷协作平台 项目管理平台 产品管理 项目信息管理 Web IDE 迭代管理 进度任务管理 代码扫描平台 看板可视化 里程碑管理 静态扫描 流程配置和约束 工时 / 成本管理 安全扫描 基础能力层 ee.msup.com.cn 应用视角 任务调度 审 计 堡垒机 流水线管理平台 作业编排 安 全 模板配置 运维工具 用户管理 角色权限管理 API 网关 流程中心 插件管理 模板管理 租户管理 运营管理 消息管理 调度引擎 组件管理 元数据管理 研发效能平台框架 @ 张乐, 2021.07
11. 效能平台的场景化 多视角串联研发活动 基于用户使用场景提供不同的产品使用视角, 多条主线贯穿DevOps平台产品能力,兼顾 平台的功能完整性和用户使用便捷性。既能 提供通用能力,又能按特定场景定制套餐。 通用视角 产品视角 应用视角 以DevOps能力为主线 以产品研发为主线 以工程活动为主线 根据DevOps领域划分展现相关能力, 兼顾功能的广度和深度,让用户灵活、 独立使用所需的能力。 以某一产品为主线贯穿DevOps流程, 方便用户管理产品相关需求、创建特性 分支,迭代开发和交付。 以某一应用为主线,聚焦在应用变更的 一系列工程活动,方便用户编写代码、 构建、测试、部署和监控。 让用户聚焦,提升效率 专为应用研发者优化 根据产品工作流,让用户充分使用到平 台设计的能力集合,减少复杂的配置, 沉浸于完成产品相关工作。 屏蔽平台底层的复杂性,展现给用户以 应用为中心的设计逻辑,聚焦在完成应 用全流程管理和研发工作。 功能完善,复杂度高 由于DevOps领域涵盖范围非常大,众 多平台功能和能力堆叠在一起,不同角 色用户有较高学习成本。 ee.msup.com.cn … 数据互联互通 最佳实践配置和固化 基于按组织机构、产品线、系统/应用、项目 等维度配置最佳实践集合,从而让通用的 DevOps能力快速适配不同场景下的管理诉求 和使用习惯,兼顾流程标准化和配置化。 … 按组织架构配置 按组织架构进行配置,适用于某个 组织需要统一设置的流程规范 • • • 研发模型:敏捷/看板/瀑布 工作项类型 流程状态节点 按产品线进行配置 按应用进行配置 相比组织架构,产品线相对稳定, 可以按产品线或产品设置流程规范 应用是承载工程活动的载体, 可以按应用来设置流程规范 • • • 代码评审规则 代码质量门禁 分支管理策略 • • • 流水线模板 流水线卡点 部署审批流程 …
12. 效能平台的价值流联动 建立产品需求价值流与工 程活动价值流之间的联动, 加强自动化程度及研发数 据间的关联性和可追溯性 ee.msup.com.cn
13. 05 三、研发效能度量 03 数据驱动,实验思维 • • 目标:让研发效能可量化、可分析、可提升 数据不是武器(古德哈特定律),而是学习和持续 • 改进的工具;度量的是工作而不是工作者 用真实故事核实结论,结合现场观察(Gemba) 04 度量分析模型 • • 分析原则:趋势>绝对值,分析相关性和因果 模型建立:组织效能、团队效能、工程师效能 • • 分析方法:趋势分析、相关性分析、诊断分析 分析场景:问题驱动模式、体检模式… 02 度量指标体系 交付效率 交付质量 交付能力 端到端快速及早交付 端到端高质量交付 卓越工程能力 持续交付 度量产品建设 • • 将数据转化为信息,然后将信息转化为知识 数据是透明和开放的,可以被整个组织访问 • 用户可以自助消费数据,主动进行分析和洞察 业务结果 组织效能模型 ee.msup.com.cn 价值流交付模型 工程师效能模型 研发进展 研发效能 交付周期 吞吐量 流分布 编程习惯 代码贡献 资源分配 收益/满意度 质量/安全 流效率 流负载 代码评审 代码质量 • • 设计原则:结果指标>过程指标;全局指标>局部指标 指标用途:结果指标用于评估,过程指标指导分析改进 • 通过先导性指标事前干预,通过滞后性指标事后复盘 01 自动采集效能数据 • • 系统分层:数据源、接入层、存储计算层、分析层 多种取数方式:API、MQ、JDBC、大数据平台 • 多种计算方式:实时/批量,流批一体 效能大盘 效能诊断 默认 仪表盘 自定义 仪表盘 报表 订阅 趋势分析 对比分析 相关性 分析 诊断订阅 多维度 聚合 多条件 筛选 多层级 下钻 异常识别 风险预测 分析结论 改进建议 研发效能度量的五项精进 @ 张乐, 2021.07
14. 研发效能度量指标 ee.msup.com.cn
15. 下一步展望 研发效能分析模型 如果一种度量真的很重要,那是因为它必须对决策和行为产生一些可以想象的影响。 变更前置时间 + 研发各阶段耗时 流动效率 流负载(在制品) 需求规模(颗粒度) 紧急需求插入占比 需求评审通过率 + - + + + + - + 缺陷解决时长 代码技术债率 + 需求吞吐量 需求交付周期 线上缺陷密度 - + 代码评审通过率 代码复杂度/重复度 - 需求变更率 发布成功率 北极星指标 群星指标 围栏指标 研发效能度量指标的相关性分析 @张乐,2021.07 ee.msup.com.cn -- Douglas W. Hubbard
16. 总结 01. 02. 03. 04. 05. ee.msup.com.cn 研发效能要从业务目标出发,同时考虑有效性和效率,关注 产出 / 投入。 努力的方向:更高效、更高质量、更可靠、可持续地交付更优的业务价值。 研发效能的黄金三角:效能实践、效能平台和效能度量,形成一个相互促进、彼此增强的循环 效能实践的价值主张:产品导向 + 工程卓越 没有”一刀切”的解决方案,要从大处着眼、小处着手,应用敏捷思维来提升组织效能 效能平台的价值主张:自动化 + 自助化、场景化 + 生态化 ”一站式、一体化”只是手段而不是目的, 要注重工程师体验,实现管理流和工程流之间的联动 效能度量的价值主张:数据驱动 + 实验思维 度量的五项精进:自动数据采集、度量指标体系、度量分析模型、度量产品设计、数据运营体系

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-25 14:48
浙ICP备14020137号-1 $Map of visitor$