敏捷与Scrum
1+1<2
10 vs 1000
敏捷 = 快?
敏捷 ≠ 快!
快是敏捷的结果之一
另外中间需要一个『计算』过程
其实快是由团队成长带来的
快只是成果交付的一个维度
精益思维
完成最小可用的产品,通过学习和反馈迭代优化。
- 消除浪费
- 增强学习
- 延迟决策
- 尽快发布
- 下放权力
- 嵌入质量
- 全局优化
- 人与人的交互,重于过程和工具;
- 可用的软件,重于详细的文档;
- 与客户协作,重于合同谈判;
- 随时应对变化,重于循规蹈矩。
2001
- Idependent(独立的)
- Negotiable(可协商的)
- Valuable to users or customers(对用户或者客户是有价值的)
- Estimatable(可估算的)
- Small(小的)
- Testable(可测试的)
如何提需求:用户故事(INVEST)
As a .. I want ... So that
Given When Then
Scrum是敏捷软件开发过程管理实践之一,同时也是组织变革的方法论,可以通过一次次的迭代进而形成业务和团队两方面同时进化的效果。
Scrum
Scrum在英语是橄榄球运动中争球的意思
Scrum的原意
- Scrum 在英语中是『 英式橄榄球运动中争球 』的意思,在争球过程中,两个队的前锋在球前面围成一圈,彼此的胳膊架在一起,低头争夺球权,此时球队两军对垒,剑拔弩张,环境变化很快,如果团队没有共同目标和方向,力量分散,很难抢到球。
- 当抢到球后,必须把球往后场传递以便得分,这又需要球队作为一个整体具有高度的默契与高超的技巧才办得到。
- 最后赛场上所有球员处于同一时间和空间,赛场的秋毫变化(球的位置、队友的位置、敌对人员的位置、观众的加油声、团队士气与人员状况、天气与球场的状况、裁判的表现和教练的战术等等的变化)都被实时共享,大家瞬间聚力讨论快速决策适应这些变化,这样的状态对于取得争球的胜利是至关重要的。
Sprint(冲刺)
一小段历史
-
1945 二战 -> 麦克阿瑟 -> 日本
-
戴明 -> 1950 PDCA -> 1980 NBC
-
1986 New New Product Development Game -> 美国
-
1995 Scrum
Scrum创始人
Scrum三大核心原则
透明 · 检查 · 调整
Scrum价值观
承诺 · 勇气 · 专注 · 开放 · 尊重
- 固定周期,固定团队
- 每次时间不能超过一个月
- 估算,考虑投入度
- 保证结束时,有可交付增量
- 分配任务,主动领取
- 集体所有,责任属于整个团队
- 团队内部自组织,跨职能配合
Sprint要点
Scrum process
Scrum角色
-
Scrum Master:教练和团队带头人,确保团队合理的运作Scrum,并帮助团队移除实施中的障碍;
-
产品负责人:确定产品的方向和愿景,定义产品发布的内容、优先级及交付时间,为产品投资回报率(ROI)负责
-
执行团队:一个自组织跨职能的小团队,人数5-9人,团队拥有交付可用软件需要的各种技能。
-
其他:用户,客户,经理
Scrum工件
- Product Backlog,定义完成
- Sprint Backlog
- 燃尽图,燃烧图等
- 剩余工作量及时间的预估
- 可交付增量
Sprint Backlog
原则上是可以在Sprint过程中调整的
燃尽图
Scrum会议
- Sprint 计划会议 2小时
- 每日站会 15分钟
- Sprint 评审会议 1小时
- Sprint 回顾会议 1小时
计划会议
-
产品或项目负责人展示按照价值排好序的待办事项列表
-
列表中的每个任务都能明确完成的定义
-
执行团队通过估时领取任务,最终确定本次Sprint的范围
估算扑克
每日站会
- 昨天,我为帮助团队达成 Sprint 目标做了什么?
- 今天,我为帮助团队达成 Sprint 目标准备做什么?
- 是否有任何障碍在阻碍我或团队达成 Sprint 目标?
反模式
- 由于团队成员时间总对不上,站立会被推迟到下班之前
- 开会时间过长或者过短
- 每日站立汇报会
- 发言表达混乱,没有主次
- 抛出障碍无人响应
正模式
- 有规矩成方圆,尊重团队约定
- 要有仪式感,回答3个问题
- 迭代目标,明确当日任务
- 聚焦圆心,不开汇报会
- 障碍有回应
- 团队一起优化改进,互相监督
说说每日站立会
评审会议
- 产品或项目负责人与执行团队,Scrum Master,和其他干系人一起对本期交付成果进行展示和讨论。
- 发现展示成果中的一些不足,执行团队会后进行微调。
- 这个会议上的一些讨论可能会影响产品或项目负责人更新其待办事项列表,增加新任务或者调整优先级
回顾会议
Scrum Master,产品或项目负责人和执行团队一起讨论本次Sprint整个团队,哪里做的好,哪里做的还不够好,以及在接下来的Sprint中改进的行动项。
团队速率
守 · 破 · 离
Scrum of Scrums
Scrum+XP+看板+DevOps
看板(白板)
看板的警示作用
看板的警示作用
看板的警示作用
看板的警示作用
-
Scrum可以部分实施,但那就不是Scrum了
-
Scrum不仅用于开发,也可以用于其他部门管理项目,甚至可以用于每个人的家庭生活
-
Scrum易学难精,成功落地需要每个Sprint认真对待,每个回顾认真反思,每个回顾都有集体达成共识的行动项并真的去行动
-
Scrum是业务和团队并行迭代,比只迭代业务要难
-
长期执行Scrum的理想结果是进入良性循环,形成战斗力更强的自组织团队
几点心得
-
不是,但是对于应对变化和不确定性是有效的
-
有可能会落地失败,但无需自责
-
可能,你现在的团队还不适应
-
可能,你负责的事情就是不适合这套理论的
-
也有可能,还没有完全理解透彻
-
但是,无论如何,建议你考虑一下
-
试一试也无妨
敏捷和Scrum是万能的么?
推荐阅读(不信和犹豫)
参考资料(相信且行动)
敏捷与Scrum
By Richard Yu
敏捷与Scrum
no introduction
- 758