数据驱动研发效能提升

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 数据驱动研发效能提升 王一男
2. 自我介绍 王一男 腾讯 — DevOps产品专家 前 百度 — 资深产品经理 开源中国 — 产品总监
3. 提纲 什么是研发效能 提升研发效能的策略 数据怎样驱动研发效能提升
4. 什么是研效? 什么是研发效能? 什么是软件工程能力?
5. 什么是软件工程能力? 百度软件工程能力的定义 使用系统化的方法,在保证质量的前提下,更高效率的为客户/用户持续交付有价值的软件或服务的能力。
6. 百度如何定义工程能力 使用系统化的方法,在保证质量的前提下,更高效率地为客户/用户持续交付有价值的软件或服务的能力 提供价值 • • • 系统设计,编写代 码只是手段 从客户需求或商业 价值出发,努力为 客户,企业和社会 创造价值 建立成本仪式,以 最小成本换取最大 价值 持续交付 质量第一 • • • 低质量软件会增加 整体研发成本 平衡好质量与效率, 高效率,低成本, 系统性保证质量 质量控制贯穿产品 全流程交付过程 • • • 软件的研发和维护 是长期性的 软件/服务的价值提 供是长周期的 摈弃”线快速粗暴开 发,后加倍还债” 系统化方法 • • • 软件工程有大量优 秀理念,方法和实 践,是否使用科学 方法论效果相差百 倍 主动拥抱云计算, 开源 基于优秀的基础设 施和软件复用能力 支持快速迭代 提升人效 • 人效贯穿全研发过 程,决定交付的执 行速度和人力成本, 是决定产品成功与 否的关键因素
7. 腾讯如何定义研效? 让每一位腾讯的工程师能够高效、快乐地工作
8. 为什么要提升研发效能 成 功 广义研发效能: 间接影响,干涉因素多,不确定 提高成功率 宏观环境 更容易成功 公司战略 市场策略 侠义研发效能: 直接影响,确定性高 降低试错成本 持续实现需求 加快研发速度 提高产品质 量 解决研发过程中的问题 工程能力提升 研 发 效 能 解决研发过程中的问题 提升研发的速度和质量 降低试错成本,持续实现需求
9. 提升研发效能的策略 研发效能提升的策略模型 人 People 工程师能力 工程师文化 数据 Data 法 Process 工程方法 优秀实践 工程能力地图 平台化指数 开源贡献度 技 Technology 研发工具 工程复用
10. 人 提升研发效能的策略 法 人(People) • 招优秀的工程师 • 工程师能力培养 • 工程师文化建设 • 研效技术委员会 • 个人能力素质 1. 需求把握 2. 系统设计 3. 编码能力 4. 项目管理 5. 运维能力 6. 产品意识 7. 客户服务意识 8. 安全意识 9. 质量意识 • 数据 技 团队能力素质 1. 研发过程管理 2. 研发效率 3. 成本意识 4. 教育培养
11. 人 提升研发效能的策略 法 法(Process) 数据 研发方法:百度方法+ 工程实践 管理实践 平台治理方法 内部开源: 腾讯四大衡量维度 开源方法 工程标准: 百度工程能力白皮书 – 工程标准V2.0 技
12. 人 提升研发效能的策略 法 技(Technology) 研发工具 管理协同工具 DevOps工具 工程复用 平台复用(平台治理) 源码复用(开源) 数据 技
13. 人 提升研发效能的策略 数据 法 数据(Data) 研发现场大数据 工程能力地图 工程师画像 工程复用大数据 平台化指数 开源贡献度 Java 54.15% XML 42.97% SQL 1.89% JSP JSX 0.55% 0.18% luigi-service 55.07% 评审 138 Function定义 894 代码缺陷 104 善于发现缺陷 18 技
14. 提升研发效能的策略 大型互联网企业的研发效能架构图 互联网思维 和方法 跨团队联合 项目管理 互联网业务 的不确定性 业务理解和 项目目标管 理 用户痛点驱 动商业模式 创新 拉动跨部门 沟通和协作 方法 持续迭代 越变越美 外部依赖管 理 数据驱动 最短反馈闭 环 典型风险管 理和应对 工程师素养提升 内部开源治理 技术平台市场化治理 产品创新 想法 理解 定义 激发 设计 测试 靠谱 评估 用户 需求 创意 原型 修正 想法 决策 高效研发 产品 路线 可视化一切 自动化一切 迭代 执行 软件设计方法与实践 重构方法 与实践 单元测试方法 与实践 代码整洁之道 面向对象模式 与实践 微服务方法架 构与实践 持续交付方法与实践 代码 合入 典型跨部门 联合项目案 例 迭代 计划 发布 计划 提交与编译阶段 • 编译构建 • 单元测试 测试与验证阶段 • 系统测试 • 集成测试 发布与部署阶段 • 发布产品 • 部署上线 技 术 治 理 组 织 架 构 公司内部开源治理 技术分层原则 内源规范 平台分类方法 准入标准 技术治理方案 制定思路 内 部 开 源 社 区 安全管理 技术治理主体 与规划 活动运营 技术治理 持续监控与优化 最佳实践 内 部 开 源 激 励 机 制 研发基础设施 项目管 理 代码管 理 代码扫 描 流水线 制品管 理 测试 文档管 理 技术治理市场化云平台 内部开源代码质量保证管平台
15. 提升研发效能的策略 大型互联网企业的研发基础设施架构图
16. 提升研发效能的策略—反思 工程师能力 工程师文化 人 人 People People 工程师能力 工程师文化 硏效提升是为了 解决问题 数据 法 Process 工程方法 优秀实践 Data 工程能力地图 平台化指数 开源贡献度 工程能力地图 平台化指数 开源贡献度 Data 数据 技 Technology 研发工具 工程复用 硏效提升是问题驱动的,而不是数据、方法、工具驱动的 脱离了解决具体问题的“硏效提升”反而降低效能 解决 问题 技 Technology 研发工具 工程复用 工程方法 优秀实践 Process 法
17. 数据怎样驱动研发效能提升 回顾最近几年硏效度量的发展 • • • • • 过去都是项目的度量、软件度量、手工度量 随着方法和技术发展,产生越来越多数据 『工程师文化』重视数据,也刚好契合管理者的诉求, 数字化转型的风口 数据驱动研发效能提升,产生许多优秀实践,一些体系化的总结产生了(我也在其中助 力) 数字化软件工程时代到来了吗?
18. 数据怎样驱动研发效能提升 目前的硏效度量遇到的问题 • • • • • • 指标追求统一、全覆盖,但有用的、能解决问题的少 指标先行,有指标没工具,数据达标靠手填 对硏效数据的深入分析挖掘,分析方法和挖掘深度严重不足 硏效度量被用作绩效管理工具,而变了味道,忘了初心 有的人迷信指标数据,有人根本不信 硏效度量投入大,但产出少,质疑多
19. 数据怎样驱动研发效能提升 软件研发效能真的能被度量吗? • • • • • 没有度量就没有计划,适用于软件研发吗? 软件开发和修路架桥有什么区别 软件工程师的效能如何定义 如何定义和量化价值 效能 = 投入产出比,或单位时间产出量,但是软件研发的产出无法准确衡量
20. 数据怎样驱动研发效能提升 • • 用方法和工具解决问题,建设 DevInfra 研发 工具 配合工具制定工程规 范 工程 规范 解决 问题 落地 推动 • 不同的团队,不同的问题,不 同的方法和工具组合,解决问 题 数据 可视 • 用数据推动工具快速落地, 数据驱动工具改进
21. 数据怎样驱动研发效能提升 分析1:标准+工具实施团队与未实施团队比较 我们发现在选定的时间范围内(横坐标),推进工程实践落地的4个团队(图中高亮的颜 色),其开发周期的移动平均值(下图的散点)成稳定下降趋势;没有推进工程实践落地 的4个团队(图中背景部分),其开发周期主要成发散上升趋势。 • 量化分析,深入挖掘研发数据 分析结果: • 团队采用的工程实践数量越多,其开发周期越短 • 工程实践做得程度越深入的团队,其开发周期也越短 • 团队人数越多,实施工程实践对缩短开发周期的作用就越 大 分析3:开发周期、工程实践与团队人员规模的相关性分析 分析2:开发周期与工程实践的相关性分析 • 开发周期随发布包含的提交数、发布参与 人数、失败的实践数的增加而增加 • 开发周期随工程实践数、good实践占比、 excellent实践占比的增加而下降 • 值得注意的是,good、excellent实践占比 的回归系数为负数、而average实践占比 实践占比的回归系数为正数。这说明,在 刚开始进行工程实践时,团队可能需要一 段时间来适应这种开发、测试的模式,因 此开发周期反而会加长,但是随着实践质 量提高到更高的水平,开发周期会有大幅 缩短。 • 每组分别画折线图,横轴是工程实践数量,红线表示开发周期(主坐标轴),绿线表示样本 量(次坐标轴)。可以看出大部分发布的工程实践数在5个至20个之间。参与人数越多的 组,红线的斜率越大。 • 团队人数越多,实施工程实践对缩短开发周期的作用就越大。
22. 数据驱动硏效提升——结论 • 问题驱动,度量问题(阻碍),解决问题就是提升硏效 • 方法和工具先行,工具是底线,起到止滑作用 • 考核数据驱动团队达到底线(使用工具),而不是达到统一的“工程卓越” • 上了底线以后,就不需要考核 • 量化分析,深入挖掘研发数据,持续改进研发基础设施 • 通过提升研发基础设施的能力,来提升底线,从而整体提升研发效能 • 如果问题还无法解决,左移
23. 数据驱动研发效能提升 王一男 关注msup公众号 获取更多工程效能实践案例 谢谢

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-15 11:11
浙ICP备14020137号-1 $Map of visitor$