27
Copyright © 2010 OutSofting. All Rights Reserved. Scrum 敏敏敏敏敏敏 敏敏 OutSofting 敏敏敏

Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Scrum 敏捷实施实例讲解

OutSofting 鲍央舟

Page 2: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Lean/Scrum/XP 的侧重点

Page 3: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

自我介绍

• OutSofting敏捷咨询师

• Certified Scrum Professional• InfoQ 敏捷板块编辑• Blog:

http://www.cnblogs.com/brendabao/

Page 4: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

案例介绍

• 法国电信 Orange-FT• 整个部门 Scrum 转型• HomeScreen 手机应用

Page 5: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

软件过程有没有万能解决方案?

No silver bullet!

没有银弹!

1975

Page 6: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

• Scrum 和敏捷基于软件开发没有万能钥匙的假设。只是提供框架让发现问题和解决问题变得更容易。

Page 7: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

我们面对的问题?

• 多方需求均不在本地,且需求变化频繁• 界面设计需其他干系人拍板• 测试人员为外包人员,手动测试,反馈时

间长• 团队成员同时工作于很多项目• …

Page 8: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

客户期望的结果

• 缩短交付时间• 更好管理需求变动

Page 9: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

我们采取的策略 -- Scrum

Page 10: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Scrum 实施详解• 谁来做产品负责人( PO )?• 谁来做 ScrumMaster ?• 团队如何组成?• Product Backlog 如何来写?• Sprint 的长度及具体实施

Page 11: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

谁来做 Product Owner ?• 产品经理?• 商业分析师?• 老板?• 用户?• 项目经理?

• 如何解决以下问题?– 多方需求均不在本地,且需求变化频繁– 界面设计需其他干系人拍板

Page 12: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

谁来做 Product Owner ?

远程 Product Owner 小组

代表本地 UI 团队

Page 13: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

团队如何组成?• 5-9 人• 全职:不允许团队成员工作在不同的项目中• 同地协作 (co-located) :让测试人员和开发人员一起工

作• 跨职能 ( cross-functional ):测试人员开发人员在一

个团队• 自管理( Self-organizing ):没有 PM 管理• …

• 解决以下问题– 测试人员为外包人员,手动测试,反馈时间长– 团队成员同时工作于很多项目

Page 14: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

谁来做 ScrumMaster

• Team Leader ?• 项目经理?• 团队成员?• 老板?

Page 15: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

谁来做 ScrumMaster

Scrum 敏捷教练

Page 16: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Product Backlog 如何来写?• 用户故事

– 用户故事是从用户角度对系统行为的简短描述

• Backlog 优化– 建议团队每个 Sprint花 5%-10% 的时间和

PO 一起优化 Backlog

为了去看一场现场比赛 , 作为一个球迷 , 我想要看到赛事安排。

为了去看一场现场比赛 , 作为一个球迷 , 我想要看到赛事安排。

要求 PO 有思想上的转变!!!

Page 17: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Sprint 的长度及具体实施• 1 周

Backlog 优化会议

Sprint 计划会议

Sprint评审及回顾

Page 18: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

信息透明:白板的应用

Page 19: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

客户进一步期望的结果• 提高质量

• 此项目的代码会被重复使用,很多别的产品都依赖此项目的代码

Page 20: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

我们采取的策略 2 – 工程实践

• 软件工程实践是指软件流程之下的,技术相关的考虑事项,以及如何使之实现。也就是构建高质量软件所直接需要的东西。

• 工程实践可以在 Scrum 框架下无障碍展开

Page 21: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

改变代码的代价

改变的代价

时间

有工程实践

没有工程实践

Page 22: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

维护成本

生命周期阶段

没有工程实践的维护成本

需求 设计

维护

生命周期阶段

有工程实践的维护成本

需求 设计

维护

Page 23: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

工程实践详解• 持续集成

– 持续集成( CI )是一种软件开发实践,实践中团队成员频繁地集成他们的工作。每次集成都会通过自动化构建(包括自动化测试)来及时发现集成中的错误

• TDD– 测试驱动开发( TDD )是一种软件开发技巧,它基于

重复的很小的开发循环:开发人员首先写一个失败的单元测试,这个测试定义了期望的功能改进或者新的功能,然后开发人员写代码让这个测试通过,最后根据标准重构新的代码

• 重构– 重构是指用一种改变系统的方法,使得系统的外部行

为不受改变,而使内部构造得到改善

Page 24: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

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

Page 25: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

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%

天数

Page 26: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

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数量

Page 27: Scrum敏捷实施实例讲解 out_softingtemplate.ppt_

Copyright © 2010 OutSofting. All Rights Reserved.

Thank you!谢谢 !