出版社: 电子工业出版社
出品方: 博文视点
原作名: Software Estimation
译者: 宋锐
出版年: 2007年12月1日
页数: 324 页
定价: 49.00元
装帧: 平装
ISBN: 9787121052958
内容简介 · · · · · ·
“软件估算”一直以来笼罩着神秘的光环,就像深遂太空中的一艘宇宙飞船,被视为高深莫测的魔法。作者在这本业界翘首盼望的书中,把这些遥不可及的软件估算学抛在一边,将读者带到了触手可及的软件估算术的世界,揭示了软件估算这个“黑匣子”中的玄机。 如果作为高级管理人员的你,期望获得一个误差较小的软件项目估算结果,以使项目延期在一个可控的范围之内;如果你是一名项目经理,想改变无休止的“死亡之旅”似的项目历程,想使开发的节奏更加合理;如果你是一个想摆脱“加班是家常便饭”现状的开发人员;那么,在本书中将能够找到你要的答案。
在《软件估算——“黑匣子”揭秘》一书中,著名的软件开发书籍的作者Steve McConnell揭开了围绕在软件估算周围的层层迷雾。作者在深入浅出地介绍了与软件估算有关的主要概念之后,深入、全面地介绍了与软件估算有关的多种估算方法。
本书的主要内...
“软件估算”一直以来笼罩着神秘的光环,就像深遂太空中的一艘宇宙飞船,被视为高深莫测的魔法。作者在这本业界翘首盼望的书中,把这些遥不可及的软件估算学抛在一边,将读者带到了触手可及的软件估算术的世界,揭示了软件估算这个“黑匣子”中的玄机。 如果作为高级管理人员的你,期望获得一个误差较小的软件项目估算结果,以使项目延期在一个可控的范围之内;如果你是一名项目经理,想改变无休止的“死亡之旅”似的项目历程,想使开发的节奏更加合理;如果你是一个想摆脱“加班是家常便饭”现状的开发人员;那么,在本书中将能够找到你要的答案。
在《软件估算——“黑匣子”揭秘》一书中,著名的软件开发书籍的作者Steve McConnell揭开了围绕在软件估算周围的层层迷雾。作者在深入浅出地介绍了与软件估算有关的主要概念之后,深入、全面地介绍了与软件估算有关的多种估算方法。
本书的主要内容包括:估算与计划和项目控制,以及估算与目标和承诺之间的关系;不确定性锥与估算中的误差来源以及影响估算的各种因素;先计数、再计算,无法可想时才依靠判断的基本估算原则;用于估算软件项目的三个重要部分——规模、工作量和进度估算的基本方法;与规模、工作量和进度估算有关的特殊问题;估算的概率论观点以及如何采用适当的方式来表达估算结果中的不确定性;如何进行与估算有关的沟通,从而使技术人员和非技术人员达成共识。
本书主要面向软件开发项目中要进行估算的开发人员和技术管理人员。
但本书所涉及的与软件估算有关的背景知识,以及有关估算谈判和表达方式的讨论,对于非技术人员出身的主管和项目的其他有关人员同样大有裨益。
软件估算的创作者
· · · · · ·
-
史蒂夫·迈克康奈尔 作者
作者简介 · · · · · ·
史蒂夫·迈克康奈尔(Steve McConnell)是IEEE Software的总编,Construx Software的总工程师兼总裁,多家世界知名软件公司的顾问,在美国软件业享有很高的声誉。他编著的图书包括获得1993年度美国Jolt图书大奖的《完美的编码法则》,获得1999年Jolt图书大奖的《淘金热的背后——成为专业的软件工程人员》《微软项目:求生法则》。
目录 · · · · · ·
第1章 “估算”的含义 3
1.1 估算、目标和承诺 3
1.2 估算和计划的关系 4
1.3 有关估算、目标和承诺的沟通 5
1.4 以概率的方式表示估算结果 6
· · · · · · (更多)
第1章 “估算”的含义 3
1.1 估算、目标和承诺 3
1.2 估算和计划的关系 4
1.3 有关估算、目标和承诺的沟通 5
1.4 以概率的方式表示估算结果 6
1.5 对“良好”估算的常见定义 9
1.6 估算与项目控制 11
1.7 估算的真正目的 13
1.8 对“良好的估算”的初步定义 14
1.9 其他资源 14
第2章 你的估算水平如何 15
2.1 简单的估算测验 15
2.2 关于测验结果的讨论 16
2.2.1 “90%置信度”的置信度 16
2.2.2 估算的范围应该取多宽? 18
2.2.3 使用较窄范围的压力来自何方? 18
2.2.4 该测验对真实软件估算的代表性 19
第3章 准确估算的价值 21
3.1 高估更好还是低估更好 21
3.1.1 反对高估的观点 21
3.1.2 反对低估的观点 22
3.1.3 权衡各种观点 23
3.2 软件行业估算情况的详细记录 24
3.2.1 项目会延误多少? 26
3.2.2 一个公司的经历 26
3.2.3 软件估算的系统性偏差 27
3.3 准确估算带来的好处 27
3.4 可预测性与项目其他属性的价值比较 29
3.5 常见估算方法的问题 30
3.6 其他资源 31
第4章 估算误差的来源 33
4.1 估算不确定性的来源 34
4.2 不确定性锥 35
4.3 混乱的开发过程 41
4.2.1 是否可以突破不确定性锥的限制? 37
4.2.2 锥形不会自行缩小 38
4.2.3 在软件估算中考虑不确定性锥的影响 39
4.2.4 不确定性锥和承诺的关系 40
4.2.5 不确定性锥和迭代开发 40
4.4 不稳定的需求 42
对需求增长的估算 43
4.5 遗漏的活动 44
4.6 没有理由的乐观主义 46
4.7 主观性和偏差 47
4.8 即兴估算 49
4.9 无根据的精度 51
4.10 其他的误差来源 52
4.11 其他资源 53
第5章 影响估算的因素 55
5.1 项目规模 55
5.1.1 本书使用代码行表示规模的原因 56
5.1.2 规模不经济 56
5.1.3 何时可以安全地忽略规模不经济 60
5.1.4 软件估算中规模不经济的重要性 61
5.2 待开发软件的不同类型 61
5.3 人员因素 63
5.4 编程语言 64
5.5 影响项目的其他因素 65
5.6 再论规模不经济 70
5.7 其他资源 72
第二部分 基本估算方法 77
第6章 估算方法概述 77
6.1 选择估算方法时考虑的问题 77
6.1.1 待估算的内容 77
6.1.2 项目规模 78
6.1.3 软件开发方式 78
6.1.4 开发阶段 80
6.1.5 可能的准确度 80
6.2 估算方法适用性表 81
第7章 计数、计算和判断 83
7.1 首先计数 84
7.2 计数的对象 85
7.3 通过计算把计数值转换成估算值 86
7.4 只把判断作为最后的手段 88
7.5 其他资源 89
第8章 估算校准和历史数据 91
8.1 历史数据可以提高准确度并带来其他益处 91
8.1.1 考虑开发组织的影响 92
8.1.2 避免主观性和无根据的乐观 93
8.1.3 减少估算中政策的影响 93
8.2 要收集的数据 95
8.2.1 与规模度量有关的问题 95
8.2.2 与工作量度量有关的问题 96
8.2.3 与日历时间度量有关的问题 97
8.2.4 与缺陷度量有关的问题 97
8.2.5 其他的数据收集问题 98
8.3 如何校准 98
8.4 使用项目数据精化估算值 99
8.5 使用行业的平均数据进行校准 100
8.6 小结 102
8.7 其他资源 102
第9章 专家的个人判断 105
9.1 有组织的专家判断 106
9.1.1 由谁进行估算? 106
9.1.2 粒度 106
9.1.3 使用范围 107
9.1.4 公式 108
9.1.5 检查表 110
9.2 比较估算值和实际值 110
9.3 其他资源 112
第10章 分解和重组 113
10.1 计算准确的整体预期情况 113
10.1.1 大数法则 115
10.1.2 估算的小对象应小到什么程度? 116
10.2 通过基于活动的工作分解结构进行分解 117
10.3 累加最好情况和最差情况估算的危害 118
10.3.1 警告:接下来是数学问题! 119
10.3.2 问题的来源 119
10.4 建立有意义的总体最好情况和最差情况估算 120
10.4.1 对少量任务计算总体最好情况和最差情况(简单标准偏差公式) 121
10.4.2 对大量任务计算总体最好情况和最差情况(复杂标准偏差公式) 122
10.4.3 建立总体最好情况和最差情况估算值 124
10.4.4 有关百分比置信度估算的注意事项 126
10.5 其他资源 126
第11章 类比估算 127
11.1 类比估算的基本方法 127
11.1.1 步骤1:获取以前相似项目详细的规模、工作量和成本结果数据 128
11.1.2 步骤2:比较新项目和以前相似项目的规模 129
11.1.3 步骤3:根据新项目相对旧项目的比例估算其规模 130
11.1.4 步骤4:根据新项目规模相对旧项目规模的情况计算工作量估算值 131
11.1.5 步骤5:检查两个项目中的假设是否一致 131
11.2 有关Triad估算中的不确定性的说明 132
估算中的不确定性、计划和承诺 133
第12章 基于代理的估算 135
12.1 模糊逻辑 136
12.1.1 如何获得平均规模数值 136
12.1.2 如何对新功能进行分类 137
12.1.3 模糊逻辑不能解决的问题 137
12.1.4 对模糊逻辑的扩展 138
12.2 标准组件 138
12.2.1 按照百分点使用标准组件 140
12.2.2 标准组件的局限 141
12.3 故事点 142
有关尺度的警告 143
12.4 “T恤衫”式规模估算 145
12.5 基于代理的估算方法的其他用途 147
12.6 其他资源 147
第13章 专家小组判断法 149
13.1 小组评审 149
13.2 宽带Delphi法 150
13.2.1 宽带Delphi法的有效性 152
13.2.2 “原来如此” 154
13.2.3 何时采用宽带Delphi法 154
13.3 其他资源 155
第14章 软件估算工具 157
14.1 使用软件估算工具可以完成而手工无法完成的事 157
14.2 校准工具时所需的数据 162
14.3 即使采用工具也不应做的事 162
14.4 可用工具概述 163
14.5 其他资源 164
第15章 使用多种估算方法 165
其他资源 169
第16章 获得良好估算的软件项目中的估算流程 171
16.1 未获得良好估算的项目中的单个估算流程 171
16.2 获得良好估算的项目中的单个估算流程 172
16.3 按照时间顺序描述的项目估算流程 173
16.3.1 大型项目的估算流程 174
16.3.2 小型项目的估算流程 175
16.4 估算的精化 175
16.5 如何向项目的其他干系人提供重估结果 176
16.5.1 何时进行重估 177
16.5.2 管理层不允许重估怎么办? 178
16.6 一个获得良好估算的项目视图 179
第17章 标准化估算规程 181
17.1 标准化规程的常用要素 181
17.2 采用阶段—门槛过程进行估算 182
17.3 顺序式项目的标准化估算规程 185
17.4 迭代式项目的标准化估算规程 188
17.5 一个高级开发组织的标准化估算规程 190
17.6 改进标准化规程 192
17.7 其他资源 193
第三部分 特定的估算挑战 197
第18章 规模估算中的特殊问题 197
18.1 软件规模估算中的挑战 197
代码行在规模估算中的作用 198
18.2 功能点估算 200
把功能点转换成代码行 202
18.3 简化的功能点方法 203
18.3.1 Dutch方法 203
18.3.2 GUI元素 204
18.4 规模估算方法小结 205
18.5 其他资源 206
第19章 工作量估算中的特殊问题 207
19.1 影响工作量的因素 207
19.2 根据规模计算工作量 209
19.2.1 使用和历史项目的非正规比较来计算工作量估算值 209
19.2.2 估算值中包括哪类工作量? 210
19.3 使用估算学方法计算工作量估算值 210
19.4 行业平均工作量图 210
19.5 ISBSG方法 216
19.6 比较工作量估算值 218
19.7 其他资源 219
第20章 进度估算中的特殊问题 221
20.1 基本进度公式 221
20.2 使用与历史项目的非正式比较来计算进度 223
20.3 Jones的一阶估算实践 224
20.4 使用估算学方法计算进度估算值 225
20.5 进度压缩和最短的可能进度 226
20.6 进度和工作量之间的折衷 228
进度压缩和团队规模 229
20.7 进度估算和人员限制 230
20.8 比较不同方法的结果 231
20.9 其他资源 232
第21章 计划参数的估算 233
21.1 对分解的项目活动进行估算 233
21.1.1 估算分配给不同技术活动的工作量 233
21.1.2 估算需求的工作量 234
21.1.3 估算管理工作量 235
21.1.4 估算所有活动 235
21.1.5 根据项目类型进行调整 236
21.1.6 给活动分配工作量的例子 237
21.1.7 开发人员与测试人员的比例 237
21.2 估算不同活动的进度 238
21.3 把估算工作量(理想工作量)转换成计划工作量 239
21.4 成本估算 241
21.4.1 加班 241
21.4.2 项目成本是直接成本、全额负担成本还是其他形式的成本? 241
21.4.3 其他直接成本 241
21.5 对缺陷的产生和排除情况进行估算 241
21.5.1 估算缺陷排除情况 242
21.5.2 估算缺陷排除效率的例子 243
21.6 对风险和意外缓冲进行估算 245
21.7 其他经验规则 247
21.8 其他资源 247
第22章 估算结果的表达方式 249
22.1 就估算假设进行沟通 249
22.2 表达不确定性 251
22.2.1 正负修饰量 251
22.2.2 量化风险 251
22.2.3 置信度因子 252
22.2.4 基于场景的估算 254
22.2.5 约略的日期时段 255
22.3 使用(各种类型的)范围 256
22.3.1 以范围表示的估算结果的用途 256
22.3.2 范围和承诺 257
22.4 其他资源 257
第23章 政治、谈判和解决问题 259
23.1 主管们的特点 259
23.2 对估算有影响的政治因素 260
23.2.1 外部约束 260
23.2.2 预算和日期 261
22.2.3 对估算值还是对承诺进行谈判 261
23.2.4 如果估算值不被接受该怎么办? 262
23.2.5 技术人员要教育非技术干系人 262
23.3 解决问题和原则谈判法 263
23.3.1 近似谈判的问题解决法 264
23.3.2 把人和问题隔离开 264
23.3.3 关注利益而不是立场 265
23.3.4 创造可以共同获利的选项 266
23.3.5 坚持使用客观标准 268
23.4 其他资源 270
附录A 估算合理性检查 271
附录B 第2章“你的估算水平如何?”测验的答案 273
附录C 软件估算提示 275
参考文献 287
索引 295
· · · · · · (收起)
喜欢读"软件估算"的人也喜欢 · · · · · ·
- 软件研发之道 8.1
- 高质量程序设计艺术 8.1
- 轻快的Java 7.4
- 走查、审查与技术复审手册 8.0
- 浮现式设计 6.7
- UML精粹 6.7
- 质量·软件·管理(第Ⅲ卷) 9.3
- 死亡之旅 8.1
- 敏捷数据 7.5
软件估算的书评 · · · · · · ( 全部 7 条 )
给出了一些方法,但是路还是要自己走
> 更多书评 7篇
论坛 · · · · · ·
在这本书的论坛里发言这本书的其他版本 · · · · · · ( 全部2 )
-
Microsoft Press (2006)暂无评分 12人读过
以下书单推荐 · · · · · · ( 全部 )
- 项目管理/产品管理/流程管理/质量管理 (Divine)
- 17th Annual Jolt Award Winners (Jeff)
- 每个程序员都应读的书 (吃西瓜放糖)
- 书单|图书类Jolt大奖和生产力大奖 (zpp)
- Stack Overlflow 推荐 (yang_bigarm)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
- 在豆瓣转让 有293人想读,手里有一本闲着?
订阅关于软件估算的评论:
feed: rss 2.0
1 有用 坚果 2013-02-26 15:39:10
干货颇丰。最大的见解就是"精度"不等于"准确度",过于细致的预估可能徒增消耗。并没有完全看书,而是通过 http://ishare.iask.sina.com.cn/f/20507863.html 的Slides,观点总结 http://ww2.sinaimg.cn/large/67b05ff9jw1e26ufzj3e3j.jpg
1 有用 袁乙钧 2009-08-24 09:21:24
一定要看!这本书的风格简直就是我梦想中的。旁征博引,那么多与这个主题相关的论文都利用到,写出平易近人的文字。作者对这个主题和对文字的驾驭都游刃有余。
0 有用 jun 2010-09-18 21:43:33
中文版介绍
0 有用 James Wu 2008-07-30 12:30:23
这本书还没有读完,无法做出最终的评价
0 有用 Lonely Highway 2024-01-08 16:47:32 浙江
十多年了,终于读完。 大型项目必备!
0 有用 Lonely Highway 2024-01-08 16:47:32 浙江
十多年了,终于读完。 大型项目必备!
1 有用 Shaojun 2019-08-19 16:03:27
老板给的书
0 有用 星空 2019-07-30 11:28:36
值得认真研读学习的好书。
0 有用 非洲小白脸 2016-03-26 04:46:45
醍醐灌顶
0 有用 softenger 2014-04-12 23:48:09
在软件估算方面,这本书是我见到的最通俗、最易读、最容易在实践中使用和操作的