详述用于估算和计划任何敏捷项目的行之有效的技巧
敏捷联盟联合创始人Mike Cohn全新作品 每位研发精力、团队经理和成员不可或缺的宝贵资源
Mike Cohn是专注于流程与项目管理的咨询与培训公司Mountain Goat Software的创始人。Mike拥有逾20年的行业经验,担任过创业公司乃至财富40强企业的技术负责人,他还是敏捷联盟的发起成员之一,经常在业界相关杂志上发表文章并出席有关会议。他也是User Stories Applied (Addison-Wesley ,2004年出版)一书的作者。
第Ⅰ部分 问题与目标
第1章 计划的目的 3
1.1 为何要进行估算和计划 4
1.1.1 减少风险 5
1.1.2 降低不确定性 5
1.1.3 提供更好的决策支持 5
1.1.4 建立信任 6
1.1.5 传递信息 6
1.2 的计划是什么 7
1.3 敏捷计划是什么 7
1.4 小结 8
1.5 讨论题 8
第2章 计划失败的原因 9
2.1 基于活动而不是基于特性进行计划 9
2.1.1 活动不会提前完成 10
2.1.2 延误沿着计划表向下传递 10
2.1.3 活动不是互相独立的 11
2.2 多任务处理导致更多的延迟 12
2.3 不按优先级开发特性 13
2.4 忽视了不确定性 13
2.5 把估算当作保障 14
2.6 小结 14
2.7 讨论题 15
第3章 敏捷方法 17
3.1 项目的敏捷开发方法 18
3.1.1 敏捷团队作为一个整体工作 18
3.1.2 敏捷团队按短迭代周期工作 19
3.1.3 敏捷团队每次迭代交付一些成果 19
3.1.4 敏捷团队关注业务优先级 20
3.1.5 敏捷团队进行检查和调整 21
3.2 敏捷计划方法 21
3.2.1 计划的不同层次 22
3.2.2 满意条件 23
3.3 小结 25
3.4 讨论题 25
第Ⅱ部分 估 算 大 小
第4章 使用故事点估算大小 29
4.1 故事点是相对的 29
4.2 速度 31
4.3 小结 33
4.4 讨论题 33
第5章 使用理想人天进行估算 35
5.1 理想时间和软件开发 36
5.2 以理想人天作为对大小的度量 37
5.3 给出一个而不是多个估算值 37
5.4 小结 38
5.5 讨论题 38
第6章 估算方法 39
6.1 共同估算 40
6.2 估算的尺度 41
6.3 得到估算值的方法 42
6.3.1 专家意见 43
6.3.2 类比 43
6.3.3 分解 43
6.4 计划扑克 44
6.4.1 更小规模的会议 45
6.4.2 何时玩计划扑克 45
6.5 为什么计划扑克会有效 46
6.6 小结 46
6.7 讨论题 47
第7章 重估 49
7.1 SwimStats Web站点 49
7.2 不进行重估的情况 50
7.3 需要重估的情况 51
7.3.1 场景1:不进行重估 52
7.3.2 场景2:重估完成的故事 52
7.3.3 场景3:相对大小改变时进行重估 52
7.4 重估部分完成的故事 52
7.5 重估的目的 53
7.6 小结 53
7.7 讨论题 54
第8章 在故事点和理想人天之间进行选择 55
8.1 有利于故事点的考虑因素 55
8.1.1 故事点有助于驱动跨功能的行为 55
8.1.2 故事点估算不会过期 56
8.1.3 故事点是对大小的纯粹度量 56
8.1.4 故事点估算通常更快 57
8.1.5 我的理想人天不等于你的理想人天 57
8.2 有利于理想人天的考虑因素 58
8.2.1 理想人天在团队以外更容易解释 58
8.2.2 理想人天估算更容易开始 58
8.2.3 理想人天便于预测速度 58
8.3 建议 58
8.4 小结 59
8.5 讨论题 59
第Ⅲ部分 为价值制定计划
第9章 确定主题的优先级 63
9.1 确定优先级时的因素 63
9.1.1 价值 64
9.1.2 成本 64
9.1.3 新知识 65
9.1.4 风险 66
9.2 综合4个因素 68
9.3 一些例子 68
9.3.1 基础设施 68
9.3.2 用户界面设计 69
9.4 小结 69
9.5 讨论题 70
第10章 确定经济优先级 71
10.1 收入的来源 72
10.1.1 新收入 73
10.1.2 增量收入 73
10.1.3 留存收入 73
10.1.4 操作效率 73
10.2 例子:WebPayRoll 74
10.2.1 计算新收入 74
10.2.2 计算增量收入 75
10.2.3 计算留存收入 76
10.2.4 计算操作效率 76
10.2.5 估算开发成本 77
10.2.6 整合 78
10.3 经济指标 78
10.3.1 金钱的时间价值 79
10.3.2 净现值 79
10.3.3 内部收益率 80
10.3.4 投资回收期 82
10.3.5 折现回收期 83
10.4 对利润的比较 83
10.5 小结 84
10.6 讨论题 84
第11章 确定渴望度优先级 85
11.1 客户满意度的Kano模型 85
11.2 相对权重:另一种方法 89
11.3 小结 91
11.4 讨论题 91
第12章 分解用户故事 93
12.1 何时分解用户故事 93
12.2 按照数据边界分解 94
12.3 按照操作边界分解 95
12.4 去除横切考虑 96
12.5 忽略满足性能限制 97
12.6 分解具有混合优先级的用户故事 97
12.7 不要把故事分解成任务 97
12.8 避免相关变化的诱惑 98
12.9 组合用户故事 98
12.10 小结 98
12.11 讨论题 99
第Ⅳ部分 进 度 计 划
第13章 计划精粹 103
13.1 计划 103
13.1.1 确定满意条件 105
13.1.2 估算用户故事 105
13.1.3 选择迭代周期长度 105
13.1.4 估算速度 105
13.1.5 确定用户故事优先级 105
13.1.6 选择用户故事和日期 106
13.2 更新计划 107
13.3 例子 107
13.3.1 确定满意条件 108
13.3.2 估算大小 108
13.3.3 选择迭代周期长度 108
13.3.4 估算速度 109
13.3.5 确定用户故事优先级 109
13.3.6 选择用户故事 109
13.4 小结 110
13.5 讨论题 110
第14章 迭代计划 111
14.1 迭代计划时不分配任务 113
14.2 迭代计划和计划的区别 113
14.3 速度驱动的迭代计划 114
14.3.1 调整优先级 115
14.3.2 确定目标速度 116
14.3.3 确定迭代目标 116
14.3.4 选择用户故事 116
14.3.5 把用户故事分解成任务 117
14.3.6 对任务进行估算 119
14.4 保障驱动的迭代计划 121
14.5 我的建议 124
14.6 任务估算值和故事点的联系 124
14.7 小结 126
14.8 讨论题 126
第15章 选择迭代长度 127
15.1 选择迭代长度时考虑的因素 127
15.1.1 的总时间长度 127
15.1.2 不确定性的多少 128
15.1.3 获得反馈的难易程度 128
15.1.4 优先级可以保持多久不变 128
15.1.5 在没有外部反馈之下进行工作的意愿 129
15.1.6 迭代的系统开销 129
15.1.7 紧迫感维持 130
15.2 做出决策 130
15.3 两个案例分析 131
15.3.1 Napa项目 131
15.3.2 Goodman项目 132
15.4 小结 133
15.5 讨论题 133
第16章 估算速度 135
16.1 使用历史值 135
16.2 进行一次迭代 137
16.3 做出预测 138
16.3.1 估算可用小时数 &nb
“你的项目进展顺利吗?对需求变更感到沮丧?前途未卜?产品质量不佳,又延误了截止期限?Mike Cohn极富洞察力,他清晰明了地展示了如何有效地开发具有业务价值的软件。通过阅读本书,你可将精力专注于真正关键的行动,当环境条件变化时也将继续如此。”
——Rick Mugridge,Rimu Research有限公司总监,Fit for Developing Software 的及时作者
“我们是本书所述敏捷方法的忠实信徒,通过实践和持续采用这些方法,获得了许多极其重要的积极影响。我强烈向有志于使软件开发更可行、更有效的所有读者推荐此书。”
——Mark M. Gutrich,Fast 401k公司总裁兼首席执行官
好书,印刷清晰内容强!我喜欢
很好的书
这本书很经典,我非常喜欢
学习中
好评
难得的一本好书,说得挺透彻的,推荐。
简单易学,不要深究,参考就行。