《敏捷估计与规划》一书为对敏捷项目进行估计与规划提供了权威实际的指导方针。在本书中,敏捷联盟的共同创始人Mike Cohn讨论了敏捷估计与规划的思想,并使用现实的例子与案例分析向您详细地展示了如何完成工作。本书清晰地阐述了有关的概念,并引导读者逐步认识到下列一些问题的答案:我们要构建什么?它的规模有多大?需要在什么时候完成?到那个时候我们到底能完成多少?您首先会认识到优秀的计划由哪些东西组成,接着会了解到如何才能使计划成为敏捷的。
《敏捷估计与规划》支持所有敏捷的、半敏捷的或迭代的开发过程,包括Scrum、极限编程、功能驱动的开发、Crystal开发、自适应软件开发、DSDM、统一过程以及许多其他开发方式。它将是每个开发经理、开发小组领导和开发小组成员不可或缺的宝贵资源。此书也获得了亚马逊网站“五星级”赞誉!
第Ⅰ部分 问题与目标
第1章 规划的目的
第2章 规划失败的原因
第3章 敏捷方法
第Ⅱ部分 规 模 估 计
第4章 使用故事点估计规模
第5章 使用理想日进行估计
第6章 估计方法
第7章 重估
第8章 在故事点和理想日之间进行选择
第Ⅲ部分 为价值作规划
第9章 确定主题的优先级
第10章 确定经济优先级
第11章 确定合意性优先级
第12章 分割用户故事
第IV部分 进 度 安 排
第13章 发布规划基础
第14章 迭代规划
第15章 选择迭代长度
第16章 估计速度
第17章 为不确定性缓冲计划
第18章 规划多小组的项目
第Ⅴ部分 跟踪与交流
第19章 监督发布计划的执行
第20章 监督迭代计划的执行
第21章 与计划有关的沟通
第Ⅵ部分 敏捷规划有效的原因
第22章 敏捷规划有效的原因
第Ⅶ部分 案例分析
第23章 案例分析:Bomb Shelter Studio
Mike Cohn是专门进行过程和项目管理咨询与培训的Mountain Goat Software公司的创始人。Mike拥有超过20年的行业经验,担任过从刚起步的新公司到财富40强企业的技术负责人,还是敏捷联盟的发起成员之一。他经常在业界相关杂志上发表文章并出席有关会议,也是User Stories Applied(Addison-wesley公司2004年出版)一书的作者。
本书名差点被定为《估计与规划敏捷项目》。不过,最终确定的是《敏捷估计与规划》。两者的差异似乎微不足道,但实际上并非如此。现在的书名明确了估计和规划过程本身就应该是敏捷的。不采用敏捷估计和规划,就不可能有敏捷开发项目。
本书的大部分是关于规划的,我把它看作是用来回答“我们要建立什么以及何时建立?”这一问题。但是,要回答关于规划的问题,我们还必须解决关于估计(“它有多大规模?”)和进度安排(“什么时候能完成?”和“到那时我能得到多少?”)的问题。
本书由7个部分共23章组成。每一章的结尾都有对重点的小结和一组讨论题。由于估计和规划应该是整个小组的工作,因此我希望对本书的阅读方式是小组成员每周聚在一起讨论一下看过的内容以及每章结尾的讨论题。由于敏捷软件开发在全世界都受到欢迎,所以我尽可能避免让本书显得过分以美国为中心。为了达到这一目的,我使用了一种通用的货币单位,将金额写作500“币”,而不是500美元或者500欧元。
本书的第I部分说明了规划为什么重要、我们常会遇到的问题,以及敏捷方法的目标。第1章是本书的起始,说明了规划的目的、一个优秀的计划由哪些部分组成,以及什么会使规划成为敏捷规划。第2章中说明了为什么传统估计和规划方法是导致难以令人满意结果的最重要原因。最后,第3章首先简要地重述了敏捷的含义,然后概括说明了本书其他部分在不同层次上所采取的敏捷估计和规划的方法。
本书的第II部分介绍了估计的一个主要原则,即对规模和时间长度的估计应该相互独立。第4和第5章介绍了两个适于对要开发的功能规模进行估计的计算单位:故事点和理想日。第6章说明了采用故事点和理想日进行估计的技巧,并包括了对规划扑克的介绍。第7章说明何时以及如何进行重估。第8章则提供了有关如何在故事点和理想日间进行选择的建议。
第III部分“为价值进行规划”提供的建议告诉项目小组如何确认他们正在构建尽可能好的产品。第9章介绍了在为功能确定优先级时需要综合考虑的一些因素。第10章展示了对功能或功能集的经济回报进行建模的一种方法,以及如何对经济回报进行比较以便开发小组首先处理最具价值的特性。第11章主要讲述有关如何评估产品用户对各个功能的需求程度并确定其优先级的建议。第12章对本部分进行总结,给出一些建议,帮助将大的功能分解成更小的、更易管理的功能。
在第IV部分中,我们将重点转移到了有关安排项目时间进度的方面。第13章首先讨论对一个相对简单的、单开发小组的项目进行编排时所涉及的步骤。接下来,第14章讨论如何规划一个迭代周期。第15章和第16章讨论如何选择合适的迭代周期长度以及如何估计开发小组的初始进度率。第17章详述如何安排一个具有很高不确定性的,或是在时间进度上很可能出错的项目的进度表。第18章是这一部分的结尾,说明了对由多个小组共同开发的项目进行估计和规划所必需的其他步骤。
一旦建立了计划,就必须和整个公司的其他部门进行交流,并根据计划进度对开发小组的进度进行监督。这是第V部分的3章的主要内容。第19章主要关注对发布计划进行监督,而第20章关注对迭代计划进行监督。这一部分的最后一章,第21章主要解决如何就计划及其进度进行沟通。
第22章是第VI部分唯一的一章。这一章与第2章说明的为什么传统方法会失败相对照,讨论了为什么敏捷估计和规划方法会有效。
第VII部分是全书的最后一部分,也只有一章。第23章是一个扩展的案例分析,在一个假想的背景中重述了本书的重点。
无封面