《Scrum精髓:敏捷转型指南》—1 引子
第一章
引子
2000年6月21日,我受雇成为Genomica公司的执行副总裁。这是一家生物信息技术公司,位于科罗拉多州博耳德市。我之所以记得那一天,是因为我的儿子Asher正好是在那天凌晨1点出生的。
孩子的出生开启了美好的一天。Asher在预产期那天准时出生(在美国,这样的比例是5%),也就是说我们(实际上是我妻子Jenine)如期完成了一个为期9个月的“项目”。而且“项目”最后还有一个完美的结局,Asher在阿普伽新生儿评测[1]中得分非常高,这说明我们的孩子是健康、优生的!我们最大的利益干系人、大儿子Jonah因为弟弟的到来而兴奋不已。准时,优生,满心欢喜的利益干系人——真是美好的一天!
我小睡片刻后就检查了一下电子邮件,看到Genomica的CEO发来一个紧急消息,要我那天早上8点参加董事会的会议。我恋恋不舍地离开医院去参加会议。
来到会议室之后,他们告诉我,主管工程的副总裁在前一天晚上被解雇了,现在由我来接管90人的工程团队。我并不感到意外。这几个月以来,管理层和董事会一直在讨论Genomica为什么无法按时交付质量让人满意的、有价值的产品,工程副总裁也是讨论的焦点。
产品开发团队在工作成效上需要做出重大改进,这个工作现在交由我负责。这件事情给我留下了深刻的印象,没想到我的孩子刚刚顺利出生,我就开始承担这个新职责。
销售和市场营销方面的管理工作已经让我忙得不可开交,所以他们告诉我,可以新招一个工程副总裁向我汇报工作。我招的是Mike Cohn(Cohn 2004;Cohn 2006;Cohn 2010),我们决定采用Scrum。
什么是Scrum?
Scrum是一种用于开发创新产品和服务的敏捷方式。图1.1显示了一个简单、通用、敏捷的开发方式。
图1.1 敏捷开发概述
在敏捷方式中,首先要建立产品列表——一个按优先级排列的、成功开发产品所需的特性及其他功能的列表。在产品列表的指导下,我们总是先做最重要或优先级最高的条目。在资源(例如时间)耗尽时,所有未完成工作的优先级都比已完成工作的优先级低。
工作本身是在一些短期的、时长固定的迭代中完成的,每个迭代一般是从1周到1个月。在每个迭代中,自组织、跨职能的团队完成所有必需的工作——例如设计、构建和测试——产生完整的、可工作的、可以放入产品的特性。
一般情况下,产品列表中的工作量远远不是团队在一个短期迭代内能够完成的。所以,在每个迭代开始时,团队需要制定计划,说明在下一个迭代中要创建产品列表中哪一个高优先级子集。比如说在图1.1中,团队同意创建特性A、B和C。
在迭代结束时,团队与利益干系人一起评审已经完成的特性,获取他们的反馈。根据反馈,产品负责人和团队既可以对下一步工作内容进行修改,也可能修改以前的工作方式。例如,如果利益干系人在看到一个完成的特性时,意识到自己没有考虑到另一个必须包含在产品中的特性,此时,产品负责人只需建立一个代表该特性的新条目并把它以适当的优先顺序插入产品列表,留到后面的迭代中迭代完成。
在每个迭代结束时,团队应当得到一个潜在可发布产品(或产品增量),如果业务上适合,就可以发布。如果不适宜在每次迭代后发布,可以把多个迭代的一组特性合并在一起发布。
在每个迭代结束后,从规划下一个迭代开始,重新开始整个过程。
- 点赞
- 收藏
- 关注作者
评论(0)