SlideShare a Scribd company logo
1 of 52
Download to read offline
《如何工作》—质量保障
Tony Deng
https://tonydeng.github.io
https://twitter.com/wolfdeng
你认为自己和团队的能力如何?
你认为自己和团队的能力如何?
优秀
你认为自己和团队的能力如何?
努力 优秀
你认为自己和团队的能力如何?
努力 优秀
牛逼
你认为自己和团队的能力如何?
努力 优秀
牛逼 敏捷
你认为自己和团队的能力如何?
努力 优秀
谦虚牛逼 敏捷
你认为自己和团队的能力如何?
努力 优秀
好学
谦虚牛逼 敏捷
你认为自己和团队的能力如何?
努力 优秀
聪明 好学
谦虚牛逼 敏捷
你认为自己和团队的能力如何?
努力 优秀
聪明 好学
谦虚牛逼 敏捷
我们的能力和努力创造了多少价值?又有多少被浪费了?
团队价值体现?
价值链
价值
价值链
价值
发现/定位
价值链
外部 内部
价值
发现/定位
价值链
外部 内部
价值
市场 支撑发现/定位
价值链
外部 内部
价值放大
市场 支撑发现/定位
价值链
外部 内部
价值放大 保障
市场 支撑发现/定位
价值链
外部 内部
价值放大 保障
市场 支撑
销售/市场/公关
发现/定位
价值链
外部 内部
价值放大 保障
市场 支撑
销售/市场/公关 产品/运营
发现/定位
价值链
外部 内部
价值放大 保障
市场 支撑
销售/市场/公关 产品/运营 设计/研发/测试/运维
发现/定位
不同岗位的价值体现
销售 产品 工程师
放大价值 发现价值 保障价值
外部 内部
总体工作思路
质量
效率
驱动
总体工作思路
质量
效率
驱动
总体工作思路
质量
效率
驱动
质量是生命线
从外部看,质量不好代表能力不行
总体工作思路
质量
效率
驱动
质量是生命线
从外部看,质量不好代表能力不行
效率很难证明
观察、假设、验证、持续改进
总体工作思路
质量
效率
驱动
质量是生命线
从外部看,质量不好代表能力不行
效率很难证明
观察、假设、验证、持续改进
产品、技术推动
业务价值的体现
时间、质量、人力、需求的平衡
时间
⼈人⼒力力 特性
质量量
时间
⼈人⼒力力 特性质量量
细节
时间
⼈人⼒力力 特性
质量量
时间往往是被承诺的
质量是不容有失的底线
人力成本往往是固定的
特性列表有时也不能协商,那就从细节入手
| 在项目中,将可变性引向低成本方向
保障什么?
保障什么?
制品
Artifacts
保障什么?
制品
Artifacts
用户故事
保障什么?
制品
Artifacts
用户故事
原型
保障什么?
制品
Artifacts
用户故事
原型 设计稿
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
Code
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
Code
Unit Test
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
Code
System Unit Test
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
Code
System
Bug
Unit Test
保障什么?
制品
Artifacts
用户故事
原型 设计稿
API
UML
Code
System
Bug
Unit Test
测试用例
保障什么?
制品
Artifacts
你制造出来交给其他人的东西都是制品。
比如文档、软件等。
用户故事
原型 设计稿
API
UML
Code
System
Bug
Unit Test
测试用例
如何保障?
质量-DFX
产品修正 产品转移
产品运行
可维护性
可测试性
可复用性
可移植性
正确性 可靠性 性能 可服务性 安全性可生产性
圈复杂度
重复度
静态分析规则
单元测试覆盖率
接口自动化测试覆盖率
用户故事测试覆盖率
重复度
公共组件数
模块化
服务化
硬件可供货
部署时长
交互式安装
环境依赖检查、反馈
故障
P2以上的Bug
生产环境Bug
水平扩展
自恢复
容灾
故障恢复时间
响应时间
吞吐率
容量
机器资源
日志体系
异常机制
运行情况诊断
系统手册
漏洞数
分权设计
安全通讯
敏感数据防泄漏
质量流程
产品
需求
代码
单元
测试
接口
自动
化测
试
开发
测试
探索
测试
验收 交付
质量流程
产品
需求
代码
单元
测试
接口
自动
化测
试
开发
测试
探索
测试
验收 交付
测试
目标 方法
今年底交付后不能出现P0的Bug
明年4月后交付后不能出现P1的Bug
必须要有自动化测试覆盖关键用例
辅助产品整理用户故事的验收标准
研发
交付测试后,不允许出现用户故事中已有
验收标准范围内的Bug
P0级的Bug不能过夜
单元测试覆盖率在10月底达到50%,到
年底达到80%以上
需要自动化测试覆盖用户故事的验收标准
范围,不允许出现验收标准中的Bug
人月Bug率年底要控制在20以内,明年4
月要控制在10以内。(月Bug总数/月开
放人数)
每周一次Code Review
关键用例技术方案必须组织Review
数据存储和业务模型设计需要Review
API和内部接口需要Review
目标 方法
产品
需求表达明确,避免需求评审后还需要花
较长时间讨论需求
保证需求对用户的价值和交付的质量
必须进行用户角色建模,每个用户角色模型需要包
含姓名、性别、职位、背景、特征等
每个故事都需要包含用户角色、价值、如何验收
需求Review至少需要三个阶段。
•产品内部Review,目标消除大部分的基本业务
逻辑问题
•与核心工程师Review,消除大部分业务逻辑问
题和技术实现问题
•与开发团队一起Review,让团队理解需求
需要考虑DFX相关需求
复杂业务逻辑需要有流程图、时序图或状态图来辅
助说明,复杂页面流程需要有页面流来辅助说明
需要对设计稿进行Review
目标 方法
关于成本
质量和成本的关系
如果关注质量,那长期来看质
量会提升,成本会降低
如果关注成本,那长期来看成
本会提升,质量会降低
接下来是一场和自己不良工作习惯对抗的战
争!
一场有关尊严的战争!
接下来是一场和自己不良工作习惯对抗的战
争!
一场有关尊严的战争!
赢
Q & A

More Related Content

More from Tony Deng

一页纸项目管理
一页纸项目管理一页纸项目管理
一页纸项目管理Tony Deng
 
Docker at the gate
Docker at the gateDocker at the gate
Docker at the gateTony Deng
 
《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通Tony Deng
 
我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式Tony Deng
 
漫谈职业规划
漫谈职业规划漫谈职业规划
漫谈职业规划Tony Deng
 
一次Http请求过程分析
一次Http请求过程分析一次Http请求过程分析
一次Http请求过程分析Tony Deng
 
一次Code review引发的思考
一次Code review引发的思考一次Code review引发的思考
一次Code review引发的思考Tony Deng
 
My sql迁移总结
My sql迁移总结My sql迁移总结
My sql迁移总结Tony Deng
 
一次项目的探险旅程
一次项目的探险旅程一次项目的探险旅程
一次项目的探险旅程Tony Deng
 
Scrum敏捷开发模型
Scrum敏捷开发模型Scrum敏捷开发模型
Scrum敏捷开发模型Tony Deng
 
Shoutv 冯晓东
Shoutv 冯晓东Shoutv 冯晓东
Shoutv 冯晓东Tony Deng
 
技术债务的形成
技术债务的形成技术债务的形成
技术债务的形成Tony Deng
 
我们不了解的计算机世界(二)
我们不了解的计算机世界(二)我们不了解的计算机世界(二)
我们不了解的计算机世界(二)Tony Deng
 
我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历Tony Deng
 
实时任务调度
实时任务调度实时任务调度
实时任务调度Tony Deng
 
节约内存:Instagram的redis实践
节约内存:Instagram的redis实践节约内存:Instagram的redis实践
节约内存:Instagram的redis实践Tony Deng
 
晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”Tony Deng
 

More from Tony Deng (20)

一页纸项目管理
一页纸项目管理一页纸项目管理
一页纸项目管理
 
Docker at the gate
Docker at the gateDocker at the gate
Docker at the gate
 
《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通
 
我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式
 
SDN介绍
SDN介绍SDN介绍
SDN介绍
 
漫谈职业规划
漫谈职业规划漫谈职业规划
漫谈职业规划
 
一次Http请求过程分析
一次Http请求过程分析一次Http请求过程分析
一次Http请求过程分析
 
图解Git
图解Git图解Git
图解Git
 
一次Code review引发的思考
一次Code review引发的思考一次Code review引发的思考
一次Code review引发的思考
 
My sql迁移总结
My sql迁移总结My sql迁移总结
My sql迁移总结
 
一次项目的探险旅程
一次项目的探险旅程一次项目的探险旅程
一次项目的探险旅程
 
Scrum敏捷开发模型
Scrum敏捷开发模型Scrum敏捷开发模型
Scrum敏捷开发模型
 
Shoutv 冯晓东
Shoutv 冯晓东Shoutv 冯晓东
Shoutv 冯晓东
 
技术债务的形成
技术债务的形成技术债务的形成
技术债务的形成
 
我们不了解的计算机世界(二)
我们不了解的计算机世界(二)我们不了解的计算机世界(二)
我们不了解的计算机世界(二)
 
HBase
HBaseHBase
HBase
 
我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历
 
实时任务调度
实时任务调度实时任务调度
实时任务调度
 
节约内存:Instagram的redis实践
节约内存:Instagram的redis实践节约内存:Instagram的redis实践
节约内存:Instagram的redis实践
 
晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”
 

《我们如何工作》—质量保障