Upload
agiletourchina
View
1.666
Download
4
Embed Size (px)
DESCRIPTION
Citation preview
Copyright © 2010 OutSofting. All Rights Reserved.
Scrum 敏捷实施实例讲解
OutSofting 鲍央舟
Copyright © 2010 OutSofting. All Rights Reserved.
Lean/Scrum/XP 的侧重点
Copyright © 2010 OutSofting. All Rights Reserved.
自我介绍
• OutSofting敏捷咨询师
• Certified Scrum Professional• InfoQ 敏捷板块编辑• Blog:
http://www.cnblogs.com/brendabao/
Copyright © 2010 OutSofting. All Rights Reserved.
案例介绍
• 法国电信 Orange-FT• 整个部门 Scrum 转型• HomeScreen 手机应用
Copyright © 2010 OutSofting. All Rights Reserved.
软件过程有没有万能解决方案?
No silver bullet!
没有银弹!
1975
Copyright © 2010 OutSofting. All Rights Reserved.
• Scrum 和敏捷基于软件开发没有万能钥匙的假设。只是提供框架让发现问题和解决问题变得更容易。
Copyright © 2010 OutSofting. All Rights Reserved.
我们面对的问题?
• 多方需求均不在本地,且需求变化频繁• 界面设计需其他干系人拍板• 测试人员为外包人员,手动测试,反馈时
间长• 团队成员同时工作于很多项目• …
Copyright © 2010 OutSofting. All Rights Reserved.
客户期望的结果
• 缩短交付时间• 更好管理需求变动
Copyright © 2010 OutSofting. All Rights Reserved.
我们采取的策略 -- Scrum
Copyright © 2010 OutSofting. All Rights Reserved.
Scrum 实施详解• 谁来做产品负责人( PO )?• 谁来做 ScrumMaster ?• 团队如何组成?• Product Backlog 如何来写?• Sprint 的长度及具体实施
Copyright © 2010 OutSofting. All Rights Reserved.
谁来做 Product Owner ?• 产品经理?• 商业分析师?• 老板?• 用户?• 项目经理?
• 如何解决以下问题?– 多方需求均不在本地,且需求变化频繁– 界面设计需其他干系人拍板
Copyright © 2010 OutSofting. All Rights Reserved.
谁来做 Product Owner ?
远程 Product Owner 小组
代表本地 UI 团队
Copyright © 2010 OutSofting. All Rights Reserved.
团队如何组成?• 5-9 人• 全职:不允许团队成员工作在不同的项目中• 同地协作 (co-located) :让测试人员和开发人员一起工
作• 跨职能 ( cross-functional ):测试人员开发人员在一
个团队• 自管理( Self-organizing ):没有 PM 管理• …
• 解决以下问题– 测试人员为外包人员,手动测试,反馈时间长– 团队成员同时工作于很多项目
Copyright © 2010 OutSofting. All Rights Reserved.
谁来做 ScrumMaster
• Team Leader ?• 项目经理?• 团队成员?• 老板?
Copyright © 2010 OutSofting. All Rights Reserved.
谁来做 ScrumMaster
Scrum 敏捷教练
Copyright © 2010 OutSofting. All Rights Reserved.
Product Backlog 如何来写?• 用户故事
– 用户故事是从用户角度对系统行为的简短描述
• Backlog 优化– 建议团队每个 Sprint花 5%-10% 的时间和
PO 一起优化 Backlog
为了去看一场现场比赛 , 作为一个球迷 , 我想要看到赛事安排。
为了去看一场现场比赛 , 作为一个球迷 , 我想要看到赛事安排。
要求 PO 有思想上的转变!!!
Copyright © 2010 OutSofting. All Rights Reserved.
Sprint 的长度及具体实施• 1 周
Backlog 优化会议
Sprint 计划会议
Sprint评审及回顾
Copyright © 2010 OutSofting. All Rights Reserved.
信息透明:白板的应用
Copyright © 2010 OutSofting. All Rights Reserved.
客户进一步期望的结果• 提高质量
• 此项目的代码会被重复使用,很多别的产品都依赖此项目的代码
Copyright © 2010 OutSofting. All Rights Reserved.
我们采取的策略 2 – 工程实践
• 软件工程实践是指软件流程之下的,技术相关的考虑事项,以及如何使之实现。也就是构建高质量软件所直接需要的东西。
• 工程实践可以在 Scrum 框架下无障碍展开
Copyright © 2010 OutSofting. All Rights Reserved.
改变代码的代价
改变的代价
时间
有工程实践
没有工程实践
Copyright © 2010 OutSofting. All Rights Reserved.
维护成本
生命周期阶段
没有工程实践的维护成本
需求 设计
维护
生命周期阶段
有工程实践的维护成本
需求 设计
维护
Copyright © 2010 OutSofting. All Rights Reserved.
工程实践详解• 持续集成
– 持续集成( CI )是一种软件开发实践,实践中团队成员频繁地集成他们的工作。每次集成都会通过自动化构建(包括自动化测试)来及时发现集成中的错误
• TDD– 测试驱动开发( TDD )是一种软件开发技巧,它基于
重复的很小的开发循环:开发人员首先写一个失败的单元测试,这个测试定义了期望的功能改进或者新的功能,然后开发人员写代码让这个测试通过,最后根据标准重构新的代码
• 重构– 重构是指用一种改变系统的方法,使得系统的外部行
为不受改变,而使内部构造得到改善
Copyright © 2010 OutSofting. All Rights Reserved.
Scrum 实施 4 个月反馈
• 69.3% 的人认为 Scrum帮助更好地管理需求 • 100% 的人认为 Scrum帮助团队专注在有真正价值的工作
• 76.9 % 的人认为 Scrum帮助增加团队产出率• 84.6% 的人认为在 Scrum 的流程下更有动力工作• 84.6 % 的人认为帮助团队更好地团队协作。 • 84.6 % 的人认为团队有能力自管理• 92.3% 的人认为更愿意继续使用 Scrum
Copyright © 2010 OutSofting. All Rights Reserved.
Scrum 实施结果 – Bug 解决周期
0
5
10
15
20
25
Bef ore Scrum Af ter Scrum
Average Bug Li f ecycl e dropped 30%
天数
Copyright © 2010 OutSofting. All Rights Reserved.
Scrum 实施结果 – Req Cycle time
0
10
20
30
40
50
1- 2天 3- 5天 6- 10天 11- 15天
Requi rement Cycl e Ti me分布
Req数量
Copyright © 2010 OutSofting. All Rights Reserved.
Thank you!谢谢 !