49
乔梁 http://weibo.com/Tony1130 http://www.ContinuousDelivery.info

service-oriented agile team-Q con-beijing2012

Embed Size (px)

Citation preview

Page 1: service-oriented agile team-Q con-beijing2012

乔梁 http://weibo.com/Tony1130

http://www.ContinuousDelivery.info

Page 2: service-oriented agile team-Q con-beijing2012

0

5

10

15

20

2525

3 3.8 3 2.5

Page 3: service-oriented agile team-Q con-beijing2012

这是一个成功案例?

Page 4: service-oriented agile team-Q con-beijing2012

项目背景

Page 5: service-oriented agile team-Q con-beijing2012

V4.3

V2.4

V3.1

Page 6: service-oriented agile team-Q con-beijing2012

V4.3

V2.4

V3.1

Page 7: service-oriented agile team-Q con-beijing2012

V5.3

V2.5

V3.2

V4.3

V2.4

V3.1

V3.8

V1.8

V2.8

Conf_A= 3 Conf_A= 5 Conf_A= 6

Page 8: service-oriented agile team-Q con-beijing2012

需求不断 问题不断

响应不及时 项目总延期

进度不可预期 项目周期长 插入事件多

系统越来越混乱 维护代价越来越大

Page 9: service-oriented agile team-Q con-beijing2012

不再重蹈覆辙

Page 10: service-oriented agile team-Q con-beijing2012

敏捷101

产品化

服务化

3月

7月

11月

Page 11: service-oriented agile team-Q con-beijing2012

分析 开发 测试

分析 开发 测试

分析 开发 测试

1 2 n ……

系统测试

试运行

正式上线

n+1 n+2 需求分析 设计

系统测试

开发阶段 测试阶段

敏捷101

Page 12: service-oriented agile team-Q con-beijing2012

为什么呢?

Page 13: service-oriented agile team-Q con-beijing2012

项目交付符合预期

Page 14: service-oriented agile team-Q con-beijing2012

建立新的开发协作流程

Page 15: service-oriented agile team-Q con-beijing2012

建立必备的基础设施

Page 16: service-oriented agile team-Q con-beijing2012

项目计划

需求收集

模块开发 模块联调

测试 试运

行 正式上线

测试

开发阶段 测试阶段

模块开发

分析设计

Page 17: service-oriented agile team-Q con-beijing2012

需求折分与排序估算

http://www.infoq.com/cn/articles/ql-using-sort-method-to-estimate-user-story

Page 18: service-oriented agile team-Q con-beijing2012

项目计划的制订

• 前提假设

• 预留多少Buffer,为什么

分析 开发 测试

分析 开发 测试

分析 开发 测试

测试

1 2 n n+1 BUF

预留

Page 19: service-oriented agile team-Q con-beijing2012

进度跟踪与风险控制

3W

Page 20: service-oriented agile team-Q con-beijing2012

总体项目进程

需求收集 与理解

需求讨论 Story折分

总体设计

总体设计评审

开发 测试

系统测试

工作量估算 总体排期

迭代 上线

Page 21: service-oriented agile team-Q con-beijing2012

开发 测试

迭代流程

选择本次迭代 的Story,初步 分析并记录 Story

开发 迭代回顾

Page 22: service-oriented agile team-Q con-beijing2012

开发 测试

Story开发流程

分析设计、 验收条件 达成共识 本地调试

自动化测试

在测试机进行 自动化用例调试

手工测试

开发

自动化用户 准备与调试

本地演示

简单验收

提交代码

提交自动化 测试用例

CI通过 各级测试

提测

部署至 系统测试 环境

Page 23: service-oriented agile team-Q con-beijing2012

本地环境 开发用

测试环境 Localbuild.sh

SVN Hudson

Localbuild.sh

Page 24: service-oriented agile team-Q con-beijing2012

Tips

Page 25: service-oriented agile team-Q con-beijing2012

• 合理的业务目标

• 透明的项目计划

• 团队是工作流程的Owner

• 回顾会议不可裁剪

• 持续集成和自动化测试是基础

Page 26: service-oriented agile team-Q con-beijing2012

阶段二:产品化

Page 27: service-oriented agile team-Q con-beijing2012

1. 有规律地短周期发布

2. 质量不降低

3.减少测试人力投入

Page 28: service-oriented agile team-Q con-beijing2012

“项目”消失了

Page 29: service-oriented agile team-Q con-beijing2012

One Product Backlog

Release 2: (x年x月x日) Story A, B, C, D Release 3: Story E, G, K Release 4: …… Release 8: Feature F, H, I

Page 30: service-oriented agile team-Q con-beijing2012

自动化与配置管理

Page 31: service-oriented agile team-Q con-beijing2012

产品的SVN目录整理

模块的SVN目录整理

产物的目录结构

Page 32: service-oriented agile team-Q con-beijing2012

Personal Test System

Test

Explore

Test

Capacity

Test Go live

Page 33: service-oriented agile team-Q con-beijing2012

Module A

B

C V6.0

Page 34: service-oriented agile team-Q con-beijing2012

• 质量优先原则

• 运维需求的优先级提高

• RD/QA/OP沟通常态化

Tips

Page 35: service-oriented agile team-Q con-beijing2012

阶段三:服务化

Page 36: service-oriented agile team-Q con-beijing2012

V6.0

Page 37: service-oriented agile team-Q con-beijing2012

V6.0

Page 38: service-oriented agile team-Q con-beijing2012

V6.0

Page 39: service-oriented agile team-Q con-beijing2012

共性服务与个性化的平衡

Page 40: service-oriented agile team-Q con-beijing2012
Page 41: service-oriented agile team-Q con-beijing2012
Page 42: service-oriented agile team-Q con-beijing2012

Tips

Page 43: service-oriented agile team-Q con-beijing2012

需求一直会有, 就看你怎么对待它

Page 44: service-oriented agile team-Q con-beijing2012

小结

Page 45: service-oriented agile team-Q con-beijing2012

用户故事

完整团队

增量交付

发布计划

迭代开发

用户验收测试

代码规范 开放式 工作环境

持续集成 站立会议

回顾会议 代码集体共有

测试驱动开发

简单设计

重构 结对编程

1

2

3

LEVEL

Page 46: service-oriented agile team-Q con-beijing2012

用户故事

完整团队

增量交付

发布计划

迭代开发

验收测试 代码规范 开放式

工作环境

持续集成 站立会议

回顾会议 代码集体共有

测试驱动开发

简单设计

重构 结对编程

1

2

3

LEVEL

Page 47: service-oriented agile team-Q con-beijing2012

用户故事

完整团队

增量交付

发布计划

迭代开发

验收测试 代码规范 开放式

工作环境

持续集成 站立会议

回顾会议 代码集体共有

测试驱动开发(UT)

简单设计

重构 结对编程

1

2

3

LEVEL

Page 48: service-oriented agile team-Q con-beijing2012

用户故事

完整团队

增量交付

发布计划

迭代开发

验收测试 代码规范 开放式

工作环境

持续集成 站立会议

回顾会议 代码集体共有

测试驱动开发(UT)

简单设计

重构 结对编程

1

2

3

LEVEL

Page 49: service-oriented agile team-Q con-beijing2012

乔梁: http://weibo.com/Tony1130

http://www.ContinuousDelivery.info

Q&A