分布式开发
- 1. 分布式 发实践
张凯峰
ThoughtWorks
Thursday, May 17, 12 1
- 2. 提纲
• 分布式 发的优势
• 分布式 发的挑战
• 分布式 发的经验
Thursday, May 17, 12 2
- 3. 定义
• 研发团队
• 跨多个地区
• 区 于外包和虚拟团队
Thursday, May 17, 12 3
- 4. 为什么会出现分布式
• 资源
• 客户
• 成本
Thursday, May 17, 12 4
- 5. 分布式 发的优势
• 降低 发成本
• 24*7 发周期
• 利用全球人才库
• 本地化及当地市场
• 小对单一人才市场的依赖
Thursday, May 17, 12 5
- 6. 分布式 发的挑战
• 物理距离导致协作不畅,增加误解风险
• 代码依赖和系统集成
• 跨区域维护团队和工程纪律
Thursday, May 17, 12 6
- 9. 项目启动
• 启动会议
• 团队搭建
• 沟通协定
Thursday, May 17, 12 9
- 11. 项目团队之团队搭建
• 地均设立BA,并定期交换
• 设立PO的代理角色
• 按照功能而非活动组织团队
Thursday, May 17, 12 11
- 12. 非功能团队
Dysfunctional
Developers Developers Testers Testers
Customers Customers
Developers Developers Analysts Analysts
Customers Customers
Location 1 Location 3
Thursday, May 17, 12 12
- 13. 半功能团队
Developers Testers Functioning Customers Analysts
Developers Testers Customers Analysts
Thursday, May 17, 12 13
- 14. 全功能团队
Developers Testers Developers Testers
Customers Analysts Customers Analysts
Thursday, May 17, 12 14
- 15. 项目启动之模拟分布式 发
• 在不同的楼层工作
• 在不同的会议室 会
Thursday, May 17, 12 15
- 17. 项目进行之站立会议
• 大团队拆分为小团队,分 做Standup
• Super Standup
Thursday, May 17, 12 17
- 18. 项目进行之视频会议
• 大屏幕
• 故事墙
• 会议电话
Thursday, May 17, 12 18
- 20. 项目进行之同步视频
• 地配备即时影像
• 独立麦克风
Thursday, May 17, 12 20
- 24. 项目进行之持续集成
• 定期收集对需求理解和功能实现的反馈
• 尽早发现和消除集成问题
Thursday, May 17, 12 24
- 25. 项目进行之测试
• 用测试脚本表述需求
• 发前经过PO等利益相 人验证
Thursday, May 17, 12 25
- 28. 项目进行之面对面交流
• 双向Travel
• 沟通协定
Thursday, May 17, 12 28
- 30. 项目进行之回顾
• www.edistorm.com
• 白板和便签贴
• 分组和投票
• www.ideaboard.com
• Google Doc
Thursday, May 17, 12 30