硝烟中的Scrum 和XP
〔瑞典〕Henrik Kniberg
序1——Jeff Sutherland
开发团队需要了解一些Scrum的基础知识。该怎样创建产品backlog,对它进行估算?怎样把它转化成sprint backlog?怎样管理燃尽图(burndown chart),计算团队的生产率(velocity)?Henrik的书可以用作一些基础实践的入门指南,帮助团队从试用Scrum中成长,最终成功地实施Scrum。
当前,良好的Scrum执行过程对需要风险投资的团队正变得日益重要。我现在是一个风险投资团队的敏捷教练;为了帮助他们达成目标,我给出的建议是:只给敏捷实践实施情况良好的敏捷公司投资。团队中的资深合伙人(senior partner)在向所有的待投资企业问同一个问题:你们是否清楚团队的生产率?目前他们都很难做出明确的答复。要想在将来得到投资,开发团队就必须清楚自己的软件生产率。
为什么这一点如此重要呢?如果团队不清楚自己的生产率,那么产品负责人(product owner)就无法用可靠的发布日期来创建产品路线图。如果没有可靠的发布日期,公司的产品就可能会失败,投资人的钱就有可能化为乌有!
无论公司规模大小,创办时间长短,或者是否有资金注入,这个问题都是它们所要面对的。在最近在伦敦举办的一个大会上,我们曾讨论过Google内部的Scrum实施状况,当时的听众有135个人,我问他们中有多少人在使用Scrum,只有30个举手。我又接着问他们是否在根据Nokia标准来做迭代开发。迭代开发是敏捷宣言的基本原则——在早期频繁地交付可工作的软件。Nokia用了几年时间,对上百个Scrum团队的工作进行了回顾,总结出迭代开发的基本需求:
□ 迭代要有固定时长(被称为“时间盒”,即timebox),不能超过六个星期;
□ 在每一次迭代的结尾,代码都必须经过QA的测试,能够正常工作。
使用Scrum的30个人里面,只有一半人说他们遵守了N…