百度移动生态研发效能度量体系及效能提升实践
如果无法正常显示,请先停止浏览器的去广告插件。
1. 百度移动生态研发效能
度量及效能提升实践
百度 / 田熲
2.
3. 目录
• 背景 && 目标
• 效能度量指标体系
• 效能度量建设中的难点与对策
• 效能提升改进案例
4. 研发交付效能度量背景 - Why
• 问题:研发交付效能涉及角色、流程、环节众多,如何开展
• 对策:数据先行,痛点分析,工程建设
客观量化
开发交
开发/测
试/变更
QA/OP
研发交付效
数据分析:定位问题并细
化拆解
建模+计算:评估效能状
况及趋势
付模式
PM/RD/
分析定位
流程
能问题
效能
度量
诊断
定位
效能提升
人效行
为多样
CI/CD
工具链
改进
闭环
建设落地
工程建设+解决方案:解
决痛点问题,效能迭代
5. 效能度量的目标 – 对业务、技术和管理的作用
业务
技术
管理
• 评估交付价值 • 诊断交付瓶颈 • 辅助团队目标
• 促进流转效率 • 提升架构先进性 • 评估团队价值
• 提升资源利用 • 改善研发模式/工 • 提升团队人效
具链
6. 效能度量的基本思路 - How
研发效能如何刻画
三棱锥的体积代表研
发效能的相对大小
研发效能如何计算
效能 = 价值 / 成本
价值
效率:
1、高价值的需求更多
2、需求交付频率更快
eff =
效率
•
•
•
•
•
•
V:需求价值
U:需求收益达成几率
P:单位时间人力成本
T:需求交付时长
R:自动化任务MTTR(m为问题频率)
L:质量负向作用,与问题级别相关
$
∑ !"# " ! ∗$ %
(
∑ $
∑
!"& % ! ∗& ! ' '"& % ' ∗( '
∗
,
(1/? ∑ )*+ ? ) )
质量
成本
四个纬度,相互牵制,整体外延扩
展,才能达成效能的提升
交付过程成本
交付系统运维成本
质量损失
(问题召回)
7. 效能度量的指标体系 - How
效能
指标维度
北极星指
标
过程指标
交付价
值
1. 业务需
求价值
2. 按期交
付率
需求收
益
发布
频率
1. 收益达成回
顾 1.发布模式
2. 收益评估 2.单位时间
3. 交付率
质量
效率
价值
需求确 需求开 需求自 需求测 需求上
认周期 发周期 测周期 试周期 线周期
务数量
发布需求量
2.待开发到开
始开发时长
3. 发版频率
3.启动开发到
第一次提交时
长
4、架构先进
1.第一次
提交到
提测时
长
2.自主测
试率
主观评测
需求管理、迭代管理
技术架构、开发
准入、测试
业务有感交付能力
开始测试
时长
3.测试时
长
问题数量
回时长
任务数量
2.提测到
1.P0/P1/P2级
2.线上问题召
1.QA并行
性
工程能力
得分
线上问题/反馈、稳定
性/损失率/崩溃率
需求交
付周期
1.RD并行任
人效
1.上线等
待时长
2.灰度/小
3.MTTR
4.Bug密度
5.反馈闭环率、
满意度
流量时长
1.线下BUG
召回
2.CR打回率
3.线下千行
BUG率
4.质量活动
执行率
5.质量活动
有效性
4.联调/集
成周期
交付系统健壮性
风险评估决策
工程师幸福感
运维
团队
人效
1.团队画像(人数
与分布、需求参与
度、饱和度)
2.工程师能力画像
(语言、投入度、
代码提交、研发习
惯、代码质量等)
3. 单需求成本
资源
成本
8. 效能度量建设中的难点与对策
指标体系中周期定义如何标准化
数据来源及其规范性
数据建模及处理
数据分析
9. 效能度量建设中的难点与对策 - 周期定义标准化
产品
说明:
1. 如果某状态时间点不存在,则用最接近的时间点替代
2. 为避免长尾数据的影响,均值统一按照85分位下均值计算;长尾数据通过90/95分位表征
10. 效能度量建设中的难点与对策 - 数据规范化
01
规范化数据源
标准化数据流转
02
03
实体数据表打平底
层差异
Hook能力
近实时研发工具
链数据
标准的研发/测
试活动数据
DWD
ü 中台工具+流程的协同机制
时序化需求变更
数据
ü 完整研发流程的自动hook
ODS
分区空数据监控
唯一性字段标识
枚举值分布
release
push
CI
全量部署
清洗&归一化处理
merge
checkout
需求及状态管理
需求/Story/任务级联控制
来源1 来源1
来源2 来源2
需求数据 工具链数据
11. 效能度量建设中的难点与对策 - 数据建模
构建实体画
像数据
逻辑归因
12. 效能度量建设中的难点与对策 - 数据工程方案
数据展
现/分析
DWS
数据
看板
稳定性
失败
重试
监控
报警
质量看板
效能看板
线上问题 损失 吞吐数据 人效数据
崩溃率 … 效率数据 …
画像数
据
需求画像
代码画像
数据清洗
数据处
理
构建画像
数据分
析
下钻分析
关联分析 模型分析
质量画像
用户画像
数据聚类
黑白名单处理
关系型存
储
离线任务
调度
数据可重入
任务依赖管理
事件触发器
ODS
数据仓
库
对象存储
DWD
阈值
控制
需求管理数
据 代码管理数
据
需求管理、
卡片关联、
变更历史等 代码库、提
交信息、评
审信息等
研发测试流
程数据
自测/提
测、Case签
章、测试结
论等
多维度展现/分析
…
数据关联
自定义规则处理
趋势分析
1. 冷热数据切换
2. 清洗&归一化后,形
成实体画像数据
串并行管理
配置化
定时触发器
K-V存储
流水线构建
数据 研发工具链
数据 上线平台数
据 组织关系数
据
构建历史、
构建配置等 执行状态/
结果、结果
报告等 变更版本、
上线单、数
据配送等 部门数据、
用户数据等
文件存储
离散数据转为结构化
数据
13. 效能度量建设中的难点与对策 - 数据分析
01
变化趋势
交叉多维数据展现
下钻明细
切面透视
漏斗
散点分布
透
视
…
行为分析:事件对
结果的行为影响
关联/归因分析:结
果指标归因到事件
事
件
工程能力
稳定性
质量内建
重构
…
关联关系
DWD/DWS
交付周期
研发模式
管理手段
归并聚类
需求价值
分析及反馈
02
ODS
Lead Time
人效
工程能力得分
卡片流转数据
代码提交数据
质量、反馈数据
影响分析
指标计算
Data Warehouse
开发打点
14. 数据透视与分析视图
数
据
大
屏
及
核
心
指
标
数
据
多
维
交
叉
分
析
15. 效能度量+工程能力地图,指导效能实践
•
通过数据发现瓶颈、低效问题
•
通过工程能力指引,补齐短板
16. 效能改进案例 – 长尾分析+工程能力建设,解决长尾需求
长尾需求原因占比
性能&压测
并行工作
联调
项目复杂度高
需求变更
多轮测试
研发&自测
覆盖率
UT
P0准入
代码扫描
BugBye
准入测试
联调自测
联调签章
测试输入
智能case
生成
测试分析
性能/白盒
分析
测试定位
结果0/1化
能力
基础CI能力/流水线稳定性
自动化自测/签章
自动化校验补充 自测签章
测试执行
智能构建
流量筛选
发布
智能
构建中台
智能
策略中台
数据沉淀
智能
数据中台
Toos
XSTP
风险评估
质量模型风险识别
风险等级评估
风险决策能力
特征支撑
17. 效能改进案例 – 基于风险决策的自主交付模式
评估不通过:修正代码&case
交
付
流
程
需求评审
写case
设计评审
本地测试
提交代码
覆盖率
增量行覆盖、全量覆盖、各job覆盖率merge
自动化
单测能力
RD
自主
测试
支持
单测运行
覆盖率产
出&上报
结果分析
单测case
编写
配置化编写case
• 版本维护:case与
配置同源或自动化
平台
• Mock配置化
• 校验规则配置化
Case服务
本地测试
结果通知
提测 自主测试评估 QA测试 全流量
准入流水线任务 准出流水线任
务 测试通过 发布 分级上线
拉分支
写代码
单测环境准备
准入评估
•
•
•
•
Case解析&运行
报告处理
覆盖率获取
结果上传
安全
白盒自动分析代码
变更
根据代码和接口映
射关系,确定扫描
范围
自动配置扫描规则
扫描结果、问题修
复
环境能力
(开箱可用,支持单测、覆盖率插桩等)
自主联调测试能力
联调CASE
数据构造
(基于日
志方式、
线上引流
方式等)
智能构建
联调签章
联调工具
(mock
数据、篡
改数据、
mock环
境)
日志
trace
(统一日
志索引、
trace串
联)
风险决策
特征圈定
冗余任务跳过
白盒分析后,无效任
务跳过
问题自动上报/标注
模型训练
模型评估
风险报告
系统级/子系统级联调拓扑环境
联调流程机制
联调规范制定
数据沉淀
联调case书写
手工测试/自动化测试/联调
数据特征
QA
质量
保障
18. 效能改进案例 – 工程能力与交付周期的效果(脱敏数据)
工程能力得分
工程能力得分
自主交付模式&交付周期
交付周期
自主交付模式项目占比
19.
20. THANKS