Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mountain Goat Software, LLC 关于 SCRUM. Mountain Goat Software, LLC Presented by 关于 Scrum.

Similar presentations


Presentation on theme: "Mountain Goat Software, LLC 关于 SCRUM. Mountain Goat Software, LLC Presented by 关于 Scrum."— Presentation transcript:

1 Mountain Goat Software, LLC 关于 SCRUM

2 Mountain Goat Software, LLC Presented by 关于 Scrum

3 Mountain Goat Software, LLC 作者的联系方式 Presentation by: Mike Cohn mike@mountaingoatsoftware.co m www.mountaingoatsoftware.com (720) 890-6110 (office) Presentation by: Mike Cohn mike@mountaingoatsoftware.co m www.mountaingoatsoftware.com (720) 890-6110 (office) 感谢 Mike Cohn 提供以下内容. Thanks.

4 Mountain Goat Software, LLC 版权信息 你可以免费: 共享 ― 拷贝, 分发和传播这些成果 在你的工作中重用 ― 应用这些成果 在以下前提下: 归属 : 你必须以作者或者许可授权者规定的方式来声明成果的 归属。 ( 但不能采用任何表明他们支持你或者你使用这些成果 的方式来声明成果的归属。 ) 本许可证中任何内容都不损害或者限制作者 的道德权利。. 更多信息提供于 http://creativecommons.org/licenses/by/3.0/

5 Mountain Goat Software, LLC 我们将输掉这场 ‘ 接力跑 ’ Hirotaka Takeuchi and Ikujiro Nonaka, “The New New Product Development Game”, Harvard Business Review, January 1986. “‘ 接力跑 ’ 式的产品开发 …… 模式一定程度上 违背了以人为本,最大化生产力,灵活的生 产方式的原则。相反另一种团队,如同一场 橄榄球赛的团队合作方式 —— 这种模式下, 整个团队通过无间合作,灵活机动的处理接 球,传球,并像一个整体迅速突破防线 —— 这可能更加适应于今天更具挑战市场需求。

6 Mountain Goat Software, LLC SCRUM 使得我们能够专注于如何在最短的时间内 实现最有价值的部分。 SCRUM 使得我们能够快速的经常的监督实际产品 发展的状况. (每两周或一个月) 团队按照商业价值的高低先完成高优先级的产品功 能,并自主管理,凝结了团队智慧创造出最好的方 法因而提高效率。 每隔一两周或者一个月,我们就可以看到实实在在 的可以上线的产品。此时,就可以下一步的决定是 继续完善功能实现更多需求或者直接发布了。 Scrum 的精髓

7 Mountain Goat Software, LLC Scrum 的发源 Jeff Sutherland Initial scrums at Easel Corp in 1993 IDX and 500+ people doing Scrum Ken Schwaber ADM Scrum presented at OOPSLA 96 with Sutherland Author of three books on Scrum Mike Beedle Scrum patterns in PLOPD4 Ken Schwaber and Mike Cohn Co-founded Scrum Alliance in 2002, initially within the Agile Alliance

8 Mountain Goat Software, LLC Scrum 被知名企业广泛采用 : 微软 雅虎 谷歌 电艺 飞利浦 西门子 诺基亚 英国广播公司 尼尔森视界公司 第一美国不动产经纪公司 美国第一资本投资国际集团 Intuit High Moon Studios Lockheed Martin BMC Software Ipswitch John Deere Lexis Nexis Sabre Salesforce.com Time Warner Turner Broadcasting Oce

9 Mountain Goat Software, LLC Scrum 被运用的领域 : 商业软件 集中式开发 根据契约进行的开发 固定投资开发 财务软件 ISO 9001 认证应用 嵌入式系统 0 当机系统软件 联合攻击战斗机 游戏软件 药监管理软件 网站 掌上电脑软件 手机 网络交换路由设备 独立软件开发 一些大型软件开发

10 Mountain Goat Software, LLC 特点 自我管理的团队 以 “sprint” 为周期迭代的产品开发 以一系列 “ 产品 Backlog” 记录了产品需求 没有特定的工程实践惯例 在以生成规则创造的敏捷开发环境交付产品 他是其中一种 “ 敏捷方法 ”

11 Mountain Goat Software, LLC 敏捷宣言作者们的价值观 开发过程和工具 个人与交互 重于 始终遵循固定的计划 对变化的响应变化 重于 资源来自 : www.agilemanifesto.org 复杂的文档 可用的软件 重于 对合同的谈判 寻求客户的合作 重于 重视

12 Mountain Goat Software, LLC 项目噪音水平 简单的 复杂度 混乱的 较复杂的 技术难度 需求数量 远离一致 接近一致 接近团 队能力 远远超出 团队能力 Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.

13 Mountain Goat Software, LLC Scrum CancelGift wrapReturn 迭代周期 2-4 周 功能 1 Sprint 目标 迭代 backlog 潜在可以发布的 增量产品 产品 backlog 功能 3 功能 4 功能 3 功能 2 24 小时

14 Mountain Goat Software, LLC 全面视角的 Scrum 开发 图片源于 www.mountaingoatsoftware.com/scrum

15 Mountain Goat Software, LLC Sprints Scrum 项目周期以一组迭代周期 “sprints” 组成 可以和极限开发的迭代周期类比 典型的迭代周期为 2-4 周或者最多一个自然月 一个固定的周期能够创造出项目的更优美的节奏 感 产品的设计,开发,测试全部都在一个迭代内完 成

16 Mountain Goat Software, LLC 顺序 vs. 重叠开发过程 资源来自 : “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986. Scrum 并非以一段时间 集中完成一个过程... 而是将所有过程中必 须的每一部分集中在这 段时间内完成 需求设计代码测试

17 Mountain Goat Software, LLC 确保一个迭代周期的稳定 一个迭代周期的长短的设定取决于您能够保 障多长时间需求变化不影响到产品开发 变化

18 Mountain Goat Software, LLC Scrum 结构框架 产品所有者 ScrumMaster 团队 职能 迭代计划 迭代验收 迭代回顾 每天召开的 scrum 会议 仪式 产品 backlog 迭代 backlog 进度曲线图 产出

19 Mountain Goat Software, LLC Scrum 结构框架 迭代计划 迭代验收 迭代回顾 每天召开的 scrum 会议 仪式 产品 backlog 迭代 backlog 进度曲线图 产出 产品所有者 ScrumMaster 团队 职能

20 Mountain Goat Software, LLC 产品所有者 定义所有产品功能 决定产品发布的内容以及日期 对产品的投入产出负责 根据市场变化对需要开发的功能排列优先顺 序 合理的调整产品功能和迭代顺序 认同或者拒绝迭代的交付

21 Mountain Goat Software, LLC ScrumMaster 对项目的直接管理 领导团队完成 Scrum 的实践以及体现其价值 排除团队遇到的困难 确保团队的胜任其工作,并保持高效的生产率 使得团队紧密合作,使得团队个人具有多方面 职能的工作能力 保护团队不受到外来无端影响

22 Mountain Goat Software, LLC 团队 经典团队拥有 5-9 人 团队成员都是是多面手 : 程序员, 测试员, 用户经验设计, 等等. 团队成员都全职工作 特殊职能可以例外 ( 例如, 数据库管理员 ) 团队自我组织和管理 团队关系在一个迭代中应该是固定的,个人的 职能可以在新迭代开始时发生调整

23 Mountain Goat Software, LLC 产品 backlog 迭代 backlog 进度曲线图 产出 Scrum 结构框架 产品所有者 ScrumMaster 团队 职能 迭代计划 迭代验收 迭代回顾 每天召开的 scrum 会议 仪式

24 Mountain Goat Software, LLC 迭代 计划会议 迭代 优先级 分析和评估产品 Backlog 各项 目 选择一些作为迭代的目标 迭代 计划 决定如何实现迭代目标 从产品的 backlog 中选择一些创 建迭代 backlog( 任务 ) 以小时为单位评估迭代任务工 作量 迭代目 标 迭代 backlog 商业机会 团队能力 产品 backlog 技术 写有产品

25 Mountain Goat Software, LLC 迭代计划 团队自己从产品的 backlog 中选择一些他们能够完成的 任务作为迭代的 backlog 迭代 backlog 被创建 任务被确认并且每一任务估计工作量应该在 1-16 小时左右 迭代的 backlog 的确定是团队协作的结果,而不是只有 scrummaster 的决定 概要设计已经讨论过 为了选择好去处度 过这个假期,我需 要先看到酒店的照 片. 编写后台和中间层 (8 小时 ) 编写界面 (4) 编写测试用例 (4) 写类 foo(6) 更新性能测试用例 (4)

26 Mountain Goat Software, LLC 每天的 Scrum 会议 属性 每天都会开 15 分钟结束 站着开会 不是为了解决问题 所有相关的人被邀请 只有 Scrum master ,产品所有者,团队成员能 够在会上发言 避免无关的讨论

27 Mountain Goat Software, LLC 团队成员需要回答 3 个问题 对于 ScrumMaster 来说这些问答不是工作 进度报告 他们是团队成员彼此的承诺 昨天你做了什么 ? 1 1 今天你将要做什么 ? 2 2 你有需要帮助的地方吗 ? 3 3

28 Mountain Goat Software, LLC 迭代结果的验收 团队需要演示所完成的迭代工作 典型的做法是使用演示形式展示新功能或者 底层架构的实现 非正式的 2 小时的提前准备 不需要正式演示文档 整个团队都需要参加 邀请所有关注产品的人参加

29 Mountain Goat Software, LLC 迭代的回顾 周期性的回顾,总结工作中的经验和教训 一般 15–30 分钟 在每个迭代结束时开始做 整个团队都需要参加 ScrumMaster 产品所有者 团队 可能还包括客户

30 Mountain Goat Software, LLC 启动 / 停止 / 继续 整个团队集结一起讨论以下方案 : 开始做开始做 停止做 继续做继续做 仅仅是诸多迭代 回顾的活动的一 种参考.

31 Mountain Goat Software, LLC Scrum 结构框架 产品所有人 ScrumMaster 团队 职能 迭代计划 迭代验收 迭代回顾 每天召开的 scrum 会议 仪式 产品 backlog 迭代 backlog 进度曲线图 产出

32 Mountain Goat Software, LLC 产品 backlog 需求 项目中待完成的工作列表 理想的是每一个待完成的工 作都将对客户和用户产生价 值 产品所有者将对这个列表进 行优先级排序 每个迭代开始前优先级的排 序工作还需要再度修正 一组产品 backlog

33 Mountain Goat Software, LLC 产品 backlog 的样例 Backlog 列表估计量 顾客可以酒店预定 3 顾客可以取消预定. 5 顾客可以提前更改预定的日期. 3 酒店工作人员可以出具 RevPAR(revenue- per-available-room) 报告 8 提高对突发事情的处理能力 8...30...50

34 Mountain Goat Software, LLC 迭代目标 简短陈述这个迭代将要完成什么 数据库应用 金融服务 生命科学 功能用于人口遗传学研究. 提供比 ABC 更实时的数据流 量来支持更多的技术指标. 应用可以运行于 Oracle 和 SQL Server 环境.

35 Mountain Goat Software, LLC 管理迭代的 backlog 团队的个人将要签收其将拥有的工作 工作不是单向的分配 对于剩余工作量的估计每天需要更新 团队中任何人都可以添加,删减或者更改迭代中 的工作项目 为了迭代目标以及将发布的结果而工作 如果对将要面对的困难不清楚,最好先定义一个 相对工作量较大的工作项目然后适时在以后将其 分散成较小额工作量的几个部分 更新每个项目的剩余工作量

36 Mountain Goat Software, LLC 迭代 backlog 的样例 任务 编写用户界面 编写中间层 测试中间层 编写在线帮助 编写 Foo 类 Mon 8 16 8 12 8 Tues 4 12 16 8 Wed Thur 4 11 8 4 Fri 8 8 增加对错误的日志记录 8 10 16 8 8

37 Mountain Goat Software, LLC 迭代耗散图 小时数

38 Mountain Goat Software, LLC 小时数 40 30 20 10 0 MonTueWedThuFri 任务 编写用户界面 编写中间层 测试中间层 编写在线帮助 Mon 8 16 8 12 Tues Wed Thur Fri 4 12 16 7 11 8 10 168 50

39 Mountain Goat Software, LLC 扩展性 典型的一支敏捷团队的人数是 7± 2 人 通过 “ 团队中团队 ” 的方法扩展 扩展团队时需要考虑的因素 所开发产品的类型 团队大小 团队的分布 项目周期 Scrum 方法可用于总数超过 500 人的项目

40 Mountain Goat Software, LLC 通过 “Scrum of scrums” 的 方式扩展团队

41 Mountain Goat Software, LLC Scrum of scrums of scrums

42 Mountain Goat Software, LLC 推荐资源 www.mountaingoatsoftware.com/scrum www.scrumalliance.org www.controlchaos.com scrumdevelopment@yahoogroups.com

43 Mountain Goat Software, LLC 推荐书籍 Agile and Iterative Development: A Manager’s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Agile Software Development Ecosystems by Jim Highsmith Agile Software Development with Scrum by Ken Schwaber and Mike Beedle Scrum and The Enterprise by Ken Schwaber User Stories Applied for Agile Software Development by Mike Cohn Lots of weekly articles at www.scrumalliance.org


Download ppt "Mountain Goat Software, LLC 关于 SCRUM. Mountain Goat Software, LLC Presented by 关于 Scrum."

Similar presentations


Ads by Google