Scrum in 5 minutes

srum: An introduction

Sprint: a fucosed effort for a 30-day period toward fixed goal[为固定目标的、以30天为周期的集中式努力]Scrum is based on Sprint.

Product owner: Product Owner 复责编辑产品计划中的变化,并其对可能功能进行优先级划分。[A PO compiles all the changes planned for the product and prioritizes the possible functionalities.]

Product Backlog: Product Owner 的工作结果就是一个Product Backlog。Product Backlog是To-do 列表, 并且这个列表的会经常被重新排列优先级。在每一个Sprint之前, 优先级最高的goals会被添加到Sprint 的Backlog当中去。

Scrum Team:和用户一起, 由5-9人组成的Project Team组成一个Scrum Team。并且在同Product Owner的讨论当中, Sprint的目标将被设定[determined], 并且已经优先级排列的功能被进一步划分、减弱[broken-down]为更叫详细的Task.这个小组是完全自组织的, 他们共同完成目标以达到预期的结果。【The team is self-organized and the members have a joint responsibility for the results.】

Scrum Master: 负责指导这个开发team, 清除任何可能的障碍和经常性的工作来保证整个team有一个进可能好的环境, 来实现Sprint设定的目标。

在每一个Scrum的Sprint的过程当中, 产品的市场价值不断的被增强, 同时不断的添加新的功能, 和对已有功能的改进,最后生产出一个可以交付用户的一个迭代产品。

三 Roles

The scrum team: 实际问题的解决者和设计者。 通常由5-9人组成,这个人数数字是由实践和研究证明最适合这种类型的工作。Team成员觉得任务将被如何安排, 以及这些任务如何被分派。这里没有Set 工程角色:每一个成员都应该和同组的人交换工作。同样的,这种交换也不会限制个人对某一个领域情有独钟~~。

The Product Owner: 他代表了客户的意愿并且保证Scrum Team的工作人员从商业的角度来做正确的事情。PO管理一个Product Backlog:该Product Backlog是一个正在使用的to-do list,它从每个产品的预计获利来描述产品的规格说明。该BAck log是对全部组织开发的,用以使得每一个成员来时刻意识到产品发布后的价值期望是什么。Product Owner可以是Customer的角色,同时他也是一个内部组织的一个有机部分,这项工作要求Product Owner拥有渊博的知识:工程、市场和商业知识。

Scrum Master:scrum Master拥有多重职责,他是team的coacher,fixer和gatekeeper。Scrum Master采用简要会议的形式与组内成员会面和交流,称之为Daily Scrums.当组外人员由于有重要的问题需要与组内成员讨论的时候, Scrum Master需要保证组内的设计者们工作上的干扰达到最小化。

Scrum Master在工作上采用Here-and-how 观点。该观点的核心在于如何保证组内成员在最好的环境下来实现Sprint阶段设定的目标。在每个Sprint阶段的结束后, Scrum Master通常会和所以组内成员举行一个评价会,称作Sprint Retrospective.在会议期间,主要是回顾Sprint间的经验和总结。其主要目的是对本组的知识水平的评价以及加深对下一阶段Sprint的目标的理解。

四 过程Process

1 Creating A BackLog

Product Owner 编辑所有的请求和规格说明,这些成为产品变更的基础,如功能变化和修复bug。当这些目标被定义清楚以后, 整个产品的整体被细化成小的segments。每一个Segment都有各自设定的商业价值以及都可以被部分交付(sub-delivery)。

一个优先级列表在此时也要制定出来, 由Product Owner个人来完成这个任务。包括这些更改应该以什么的样的顺序来进行和交付。其结果就是一个根据市场的需求和客户的请求来安排的to-do list。当一个新的Sprint开始的时候, Product Owner冻结该to-do list,同时召集Scrum Team开会。

2 The Sprint Phrase:

在Sprint的30天的周期里, 首先,是要创建一个Sprint Backlog, 当工作和时间安排已经被决定以后, Product Owner的这一阶段的工作结束。到现在,Scrum Team独立工作,他们的工作是自组织的[时间,任务调整是自己制定,在满足Sprint goal的前提下。]

3 DAily scrum:

每天固定的时间段, Scrum Master和Scrum team一起举行一个简短的会议,目的是消除阻碍小组进度的障碍。每个成员需要以某种方式回答三个问题:

     A 从上次会议到现在,你做了哪些工作

     B 从本次会议结束到下次会议工作,你准备做哪些工作

     C 在你计划完成的工作当中,你预计会有什么问题会阻碍你的工作完成。

前两个问题目的是让会议的参加人员对整个project的进度有个更加完整的认识,第三个问题提供了一个解决问题的基础,范围很广,可以是小到新的鼠标问题,大到公司组织结构的变更。

任何人都可以来参加该会议,但只有Scrum Master和Teamer允许发言。

4 Demonstration和Evaluation。

每个Sprint 结束的时候都会有一演示, 它是在更大范围的成员面前,如在product owner, 用户,公司管理层的代表等。这是评价会议的基础,而评价之后就是下一个Sprint的开始。

五 敏捷开发方法:

Scrum被划分为敏捷开发的一种方法。 敏捷开发是一组工作方法和工具盒的集合, 目的是:

     A 提高对来自于市场的请求和需求的快速反应能力

     B 消减被浪费和等待的时间周期

     C 在减少雇员的压力的同时, 增加生产力。

那些坚持敏捷开发的开发者都拥有着极高的工作热情。敏捷开发哲学被浓缩在以下:

重要:

     过程和工具

     详细的文档

     合同协商

     符合计划{following plan}

更加重要:   

     个人和交互作用。

     功能软件。

     与客户的协作。

     对变化的适应。

具体来说, 敏捷开发是对过程的及时反馈,这些过程在理论上合理有效, 在实践当中却很难被支持下去。敏捷方法是被描述成实践型的,它整体基于那些被证明是正确的实践经验和工作方法。

敏捷方法的中心概念是适应外部因素变化的能力, 而从前的方法是基于预测的, 并且试图预测未来的需求, 而敏捷方法是适应的并且可以快速适应新的需求的,它坚持“怀抱变化”箴言。唯一的检测标准是产品的功能。

另外,敏捷方法的另外一个重要准则,是简单化和偏向思考(lean thinking)。

其它敏捷的方法:

XP极限编程是除Scrum之外另外一个闻名的敏捷开发方法。同SCRUM相比, XP是不同的方法,它更像是一个用来处理如何在project中工作的方法。十二个实验构成了它的基础,包括成对编程和测试生成在编程前(test case production before coding).

另外一个敏捷开发方法是:Lean Development。它起源于制造行业的Just-in-time和Lean-production concepts. Lean development 更多时候是处理如何在管理层次上组织整个公司开发活动的问题。

总的来说,这几个开发方法间是互补的关系:

Lean Development考虑的是适用于整个开发组织的统一的原则

Scrum是处理一个Project如何组织和计划。

XP处理的是如何编程的问题。

posted @ 2011-07-18 18:47  yub0yue  阅读(319)  评论(0编辑  收藏  举报