数据驱动研发效能提升

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 数据驱动研发效能提
2. 1 目录 CONTENTS 什么是好的研发效能 2 有效的度量指标 3 数据驱动效能提升案例 4 经验总结
3. 01 什么是好的研发效能
4. 研发效能的困扰 产品延期 质量差 效率低 加班很多,但产品依然延 开发提测质量差,测试周期 团队成员集体熬夜加班, 期。 长,代码返工率高,上线后 大把时间花在等待环境、 BUG和故障很多 等待验证上 不可持续 开发人员疲于应付业务,没 有精力去钻研技术,团队士 气低迷,生产效率低下,无 法支撑持续的高效开发
5. 什么是好的研发效能 持续快速、高质量地交付用户价值 2 Delivery 1 Sustaina bility 可持续性 高效能需要可持续性,短期的高 产出可能会伤害长期的产出,比 如连续熬夜加班导致效率低下 3 Efficienc y 更短的交付周期 更快的效率 产品更新速度决定市场,研发团 价值流动效率:各环节和部门高 队快速发布产品,应对竞争日益 效协作,需求顺利流畅、减少挤 激烈的市场,快速试错。 压和等待。 4 quality 更好的质量 交付出去的产品质量尽量少的 BUG和故障,用户满意度高
6. 02 有效的度量指标
7. 2019 DevOps全球状态报告 部署频率 每天多次 变更前置时间 小时级 故障恢复时间 低于一小时 部署频率 部署代码的频率 吞吐量 变更前置时间 从代码提交到代码成功运行到生产环境需要的时间 故障恢复时间 发生服务故障时(例如:计划外终端,服务受损),恢复服务通常需要的 时间 稳定性 变更失败率 小于15% 变更失败率 有多大比例的变更会导致务受损或者中断,需要进行热修复、打补丁或者 回滚
8. 透明研发过程数据 开发 • • • • • • • • 需求 • • • • • • 需求总量 需求状态分布 需求交付周期 需求吞吐量 需求评审通过率 需求变更率 发布 代码提交量、提交频率 有效代码率 代码扫描问题数 代码评审次数、评审通过率 单元测试覆盖率 构建次数、频率 构建时长 构建成功率 • • • • • 发布次数 发布频率 发布成功率 发布回滚率 发布时长 测试 • • • • • • • 测试用例数量 功能测试代码覆盖率 线下缺陷数量、密度 缺陷解决时长 缺陷解决率、缺陷逃逸率 自动化测试持续时长 持续集成红灯修复时长 运维 • • • • • 资源利用率 应用性能 系统可用性 线上缺陷密度 故障恢复时间
9. 从可度量的数据中挖掘价值 引领性指标 改进的措施 ➢ 可预见性 数据 ➢ 可控性 生产 研发 过程 提炼 反馈 度量 指标 滞后性指标 ➢ 强烈的目的性 ➢ 结论性(历史数据) 改进的依据
10. DevOps度量指标 DevOps度量指标 阶段 需求阶段 研发阶段 测试阶段 发布阶段 引领性指标 滞后性指标 项目完成度(燃尽图) 交付频率 代码规范符合度 代码提交频率 重复代码率、代码圈复杂度等 有效代码占比 提测次数 Bug重开率 自动化测试通过率、代码覆盖率 千行代码缺陷率 发布部署时长 发布频率 部署效率 平均恢复时间
11. 目标矩阵方法 目标(Goal): G 保证产品交付的代码质量! Q 研发各阶段的工作是否都 M 1 M 2 M 3 代码扫描:缺陷率控制在5‰以 根据度量指标反馈的现象建立目标。 问 题 ( Question ) : 定义我们在逐步靠近目标的过程中遇到的问题, 以确定进展或者目标的实现。 识别矩阵并设置行动模型: 使用特定的必要矩阵来组织问题的答案的方法建 立度量模型,进而设置行动模型。 符合这个目标? 下; Code Review:必须由专人Review代 码; 自动化测试:单元测试覆盖率60%以上; 功能测试代码覆盖率100%
12. 03 数据驱动效能提升案例
13. 案例1-团队问题 团队问题:总是延期交付,团队士气不高,天天加班,质量差,到底发生了什么? 需求完成数 需求完成时长 代码扫描缺陷数 新增BUG数 线上发布成功率
14. 案例1-数据的背后-找到问题 需求完成时间长 干活多、缺陷多 缺陷重视度不高 需求传统瀑布模式,迭代了一半, 大家加班加点的干活,负载较重, 管理不规范,优先级划分不清楚, 需求还没定下来,开发时间不足一 引入的缺陷也较多,PD 和用户不 甚至残留重要缺陷留在 bug 列表 周,开发加班加点,质量不达标。 满意带来的修改又会加重工作量, 里面未解决而流到了线上引发故障 数据表征上就是之前需求数量较少, 9月份突然完成了很多而且时间很 长的需求 如此恶性循环
15. 案例1-数据的背后-改进 01 需求拆分 需求细化,拆分 成最小可交付产 出,尽量避免一 个需求做了 1 个 多月才去和 PD 和用户验收。 02 快速验证 随时拥抱用户, 迭代式产出,交 付即验收,让不 准确性降到最低, 在错误误差最小 的时候修正 03 04 提测卡点 尽早修复 设置提测卡点, 代码扫描高级缺 陷全部清零,代 码review卡点 重点跟进质量管 理和运营,透明 数据,鼓励团队 尽早尽快修复 bug,并有严格 的上线前 bug 解 决率标准 05 发布保证 尽最大力量保 证线上发布成 功率
16. 案例1-改进的结果 需求完成数 代码扫描缺陷数 需求完成时长 新增BUG数 线上发布成功率
17. 案例2-精准化测试保证质量 精准化测试 变更代码 业务需求 测试覆盖代码 功能测试代 码覆盖率 功能测试
18. 案例3-有效产出量 产品有效代码率 90% 800 700 600 53% 72% 500 400 60% 某个项目投入了大量人力, 但产出低下,原因是什么? 需求变更?人员效能? 300 200 100 0 产品A 产品B 产品C 产品D
19. 04 经验总结
20. 度量的经验总结 数据只是手段,辅助我们去诊断,而不 是衡量。 C 不要用数据去度量个体,度量的初 衷是通过客观指标反馈团队的问题, 并引起团队关注 B D 度量不是控制,度量的目标是改善。 A 经验总结 学会利用数据,不要被数据利用
21. THANKS

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