《Scrum要素 – THE ELEMENTS OF SCRUM》
[美]Chris Sims,Hillary Louise Johnson 著
徐毅 译
人民邮电大学出版社
2013年2月
这本书写的还不错,推荐一读。虽然不是那种让人惊艳的感觉,但是确实愿意花时间多读几次,特别是项目开始之前或者结束之后。不同的人——指不同的角色——应该会有不同的收获。
我们目前工作中使用的开发方式,应该是“瀑布式”和“敏捷式”的结合。当然,我们号称是“敏捷式”的。
项目开始之前,会有产品经理收集需求,编写项目说明书;项目中的参与者们评审完之后,是交互/视觉的设计;接着又是一堆的评审,然后是技术方案的设计;技术方案也需要评审,评审完之后,进入编码阶段;编码完成之后进行测试,然后就上线了。这是经典的瀑布开发流程。
下面根据使用的情况,产品经理或者运营会收集一些用户的反馈,整理出修改的需求之后,针对每一个需求,安排一个日常进行改善。这里的每一个改善,就相当于一个sprint——更加简化版的sprint——我们会进行需求评审,开发,测试,最后再进行一个回归测试,保证不影响以前的功能。
这里的主要问题,在原型的开发中,也有大设计前置(BDUF)的问题;而且在开发过程中,产品经理和交互、视觉同学不进行参与或者参与度太低,导致开发中的一些问题没有很及时很恰当的解决——最差的结果是,开发出来的结果,大家都不满意;产品经理不满意、开发同学也不满意。在后期的迭代开发中,一般来讲,整个项目的所有成员,没有完全参与进来。
这个过程中,缺少一些指导性的东西,导致有时陷入迷茫之中。
大家都在讲敏捷式开发,但是估计都是“中国特色的敏捷”,真正学到的只是迭代式开发这一点,其他的要素要么不知道,要么就是根据自己的习惯、资源进行了。所以,某种意义上,很需要这样的书。
这本书用很简洁的语句告诉我们Scrum的要素。这里记录几个有感触的点,不覆盖全部。
1. “作为scrum团队成员,要完成的不是你的工作,而是这份工作”。
这句话的重点是,所有的任务大家共同完成,而不是某个人负责一方面。大家共同为这项工作负责,这不是绝对意义上的平等;scrum也不要求所有成员都是可互换的,而是他们在需要的时候,可以完成一些不在他们舒适区中的工作。大家平等的参与编码的工作,万一出现进度问题,所有人都可以进行协助,保证sprint的进度。
2. Sprint规划
其实就是编码开始前的设计和评审,同时估算工作量。比较特别的是,这里使用了故事点的概念来衡量工作量;每个sprint中,完成的工作量基本一致,可以最大程度的保证完成时间,从而也能够保证项目质量。
每个sprint的工作总量足够小,从而保证sprint的规划会议能够在限定的时间内完成,而不是陷入无休无止的评审会议之中。
3. 任务板
任务板是一种信息辐射器,用来同步项目的进度,对所有人可见。这里最大限度的让大家了解目前的进展,不管你是不是项目中的成员。
最简单的任务版由代办(to do),办理(doing)和已办(done)组成。
4. 完成定义
因为细分了具体的故事点,所以可以清晰的定义每一个故事的终结。避免含糊的事件存在,这也是信息透明的一个表现。
5. 用户故事
也就是产品的细节功能点,这里的翻译觉得有点看不懂,不过还是按照书中的概念来。
模版:
作为<某类用户>
我想<做某事>
从而<创造出某些价值>
说实话,目前看到的PRD,很少有能够把需求说的明确的。……作为一个开发,迫切需要一个没有歧义的需求描述。
6. 工作量评估
团队估算游戏:集体排队+你的数字是?。
很神奇,但是确实很有可能把工作量说清楚。对于一个项目来说,我们可以把所有需要的工作量估算出来,然后根据需求和进度安排几个sprint进行处理。有点迫不及待的感觉了。
7. 铁三角和“单指针表盘”
衡量功能、进度和成本的神奇工具。帮助我们进行优先级排队。
8. 项目微章程
代号、电梯演讲、价值、里程碑……
瞬间觉得有点高端大气了。
整本书总体上来讲,还是让人满意的,但是还是有点瑕疵。全书最让我觉得不太舒服的,就是名词的翻译了,比如sprint和用户故事。我现在还是靠猜来进行理解的,希望其他读者能够理解地清楚些。
最后,用书中的寓言进行结尾。
一头猪和一只鸡走在路上。鸡看着猪说,“嘿,我们一起开个餐馆怎么样?”猪回过头,看着鸡说,“好主意,那取个什么名字好呢?”鸡想了想,说“不如叫‘火腿和鸡蛋’吧?”“我可不这么想,”猪说道,“我得委身其中(committed),而你不过是参与其中(involved)罢了”。
在项目的开发中,一方面,我们需要每个人都全力投入,而不是involved;另一方面,我们需要分辨出谁是鸡谁是猪,从而能够减少不必要的意见对我们的影响。
以上是当前阶段的一些理解,希望随着经验的积累,再次翻开这本书的时候,能有不同的理解。
相关推荐
浓缩了3个月的读书心得和知识要点,包含了大部分篇章
### Scrum精髓:敏捷转型指南读书笔记 #### 第一章:Scrum的适用范围 - **Cynefin框架**:本书介绍了Cynefin框架作为理解Scrum适用环境的基础。该框架将工作环境划分为五个区域:复杂、繁杂、混乱、简单以及无序。...
### Scrum Master 认证考试知识点解析 #### 标题:Scrum Master 认证考试原题 **解析**:本题目集旨在帮助考生通过Scrum Master (CSM) 认证考试,该考试评估考生对Scrum框架、原则及实践的理解与应用能力。 #### ...
#### 四、Scrum 实践的关键要素 - **透明度**:确保所有团队成员都清楚项目的进展和存在的问题。 - **反馈循环**:建立快速反馈机制,以便及时调整方向。 - **跨功能团队**:构建具备完成所有任务所需技能的团队。 ...
Scrum 教材总结 Scrum 是一种敏捷开发框架,对于软件开发和项目管理非常重要。本文将对 Scrum 的起源、Scrum 模型、Scrum 框架、现状和为什么会失败等方面进行详细的介绍。 一、Scrum 起源 Scrum 的 idea 来自于 ...
"Scrum专业Scrum Master II题库" Scrum是一种敏捷项目管理方法,旨在帮助团队更好地协作、更快速地交付价值。Scrum Master扮演着关键角色,是Scrum团队的 facilitator、 coach和servant leader。Scrum Master负责...
scrum及常见问题 ,scrum及常见问题处理解决办法等等
### Scrum概述与核心概念 **Scrum**作为一种敏捷开发框架,在软件开发及项目管理领域内备受推崇。本文旨在帮助读者在短时间内理解Scrum的基本原理及其应用价值。 #### Scrum的核心理念 Scrum被定义为一种简单的...
在本文中,我们将深入探讨Scrum的关键要素和实践,以指导团队顺利实施敏捷开发。 首先,项目的启动阶段涉及一系列准备工作。项目发起后,经过预立项、可行性研究和公司立项,确定产品经理或客户代表的角色。在产品...
### Scrum Guide 知识点解析 #### 一、Scrum 概览 **Scrum** 是一种敏捷开发方法,由 Ken Schwaber 和 Jeff Sutherland 共同开发和完善。它基于行业的最佳实践,并且置于经验过程理论的基础之上。Scrum 的核心理念...
Scrum是一种敏捷开发框架,由Ken Schwaber和Jeff Sutherland在1990年代初创立,主要用于应对复杂的项目管理问题,特别是在软件开发领域。2010年,他们发布了首版Scrum指南,以帮助全球用户理解和应用Scrum。随着时间...
Scrum是一种迭代式增量软件开发方法,强调在开发过程中项目的可管理性和控制。Scrum的三个主要组成部分是角色、事件、和工件,它们共同构成了一套规则和实践,来支持团队在复杂产品开发中的工作。以下为详细知识点:...
#### 五、成功实施Scrum的关键要素 - **明确的角色分工**:确保每个团队成员都清楚自己的角色和责任。 - **充分的前期准备**:包括产品需求规划、优先级排序、开发和测试环境准备等。 - **团队协作**:培养团队之间...
Redmine 是一个开源的项目管理工具,而"redmine scrum 敏捷组件"是Redmine中的一个扩展,旨在帮助团队采用Scrum敏捷开发方法进行项目管理。Scrum是一种广泛应用于软件开发领域的敏捷框架,强调迭代和增量交付,以...
SPRiNT-iT的敏捷教练,包括Scrum培训师Boris Gloger,从主流Scrum书籍中抽取了Scrum的基本要素,并融入他们集体的长期实践经验,从而为大家带来《Scrum Checklists》这本精简概炼的迷你书。这本小册子为大家带来一...
考虑到Scrum的复杂性和深度,初学者建议进一步阅读Ken Schwaber的《敏捷项目管理》或《敏捷软件开发》,并考虑参加Scrum联盟提供的培训课程。这些资源不仅提供了理论基础,还包含了实践经验分享和案例研究,有助于更...
通过阅读这份FAQ,我们可以获取到权威的见解,以解决团队在采用Scrum过程中可能遇到的疑惑。 "Scrum_Guide_Sept09.pdf"是官方的Scrum指南,是理解Scrum核心概念和规则的必备资料。这份2009年的版本可能包含了Scrum...
### Scrum知识体系详解 #### 一、Scrum概述与必要性 Scrum是一种轻量级的敏捷项目管理框架,旨在帮助团队高效地管理和交付高质量的产品。它通过一系列明确的角色、活动和工件来实现这一目标。在传统项目管理方法中...