目 录 1
译者序 1
前言 1
第1章软件需求与估算的语境 1
1.1软件危机 3
1.2软件和软件工程 6
1.3软件生命周期 7
1.3.1瀑布软件生命周期模型 7
1.3.2 V型生命周期模型 11
1.3.3原型生命周期模型 12
1.3.4增量生命周期模型 13
1.3.5快速应用开发模型 14
1.3.6螺旋生命周期模型 16
1.4软件项目 17
1.5软件项目中的管理活动 20
1.6组织的过程导向 23
1.7好的开始是成功的一半 25
1.8需求工程 25
1.9软件估算 27
1.10本书结构 36
第2章需求工程 37
2.1什么是需求工程 39
2.2需求导出 41
2.2.1发现事实 41
2.2.2需求收集 42
2.2.3评估 43
2.2.4确定优先级 43
2.2.5统一 44
2.3需求导出技巧 46
2.3.1受控的需求表达 47
2.3.2基于问题的信息系统 48
2.3.3面向特征的领域分析 50
2.3.4联合应用设计 52
2.3.5原型 55
2.3.6质量功能实施 58
2.3.7软件系统方法学 61
2.4需求分析 64
2.5需求分析模型 64
2.5.1数据流图 65
2.5.2实体关系图 67
2.5.3 对象-类图 70
2.5.4状态转换图 70
2.5.5用例 72
2.6需求文档化 75
2.6.1软件需求规格说明的特征 76
2.6.2软件需求规格说明的内容 79
2.6.3软件需求规格说明的常见问题 86
2.7需求评审 89
2.7.1连续评审 90
2.7.2阶段结束评审 90
2.7.3需求签字 94
2.8需求管理 95
2.8.1改变管理过程 95
2.8.2维护需求的可跟踪性 97
2.9小结 98
第3章规模估算 101
3.1两种规模估算观点 102
3.2功能点分析 104
3.2.1计算开发功能点 105
3.2.2计算增强功能点 114
3.2.3功能点的优点 118
3.2.4功能点的缺点 119
3.3 MARKⅡFPA 119
3.4完全功能点 126
3.5其他功能点扩展 128
3.5.1特征点 128
3.5.2对象点 129
3.5.3 3-D功能点 130
3.6近似功能点计算 130
3.6.1快速FPA计数 131
3.6.2快速应用程序业务量估算 132
3.7功能规模度量的发展方向 133
3.6.3 NESMA估算和象征性FP 133
3.7.1功能规模度量的ISO标准 134
3.7.2 COSMIC 134
3.8 LOC估算 135
3.8.1系统分解结构 137
3.8.2自由讨论和Wideband Delphi估算法 138
3.9两种规模度量之间的转换 142
3.10转换和维护的规模估算 143
3.11小结 145
第4章工作量、进度和成本估算 147
4.1什么是生产率 149
4.2估算因素 150
4.2.1规模和工作量 150
4.2.2进度和工作量 152
4.2.3品质与工作量和进度 153
4.2.4影响生产率的其他因素 154
4.3软件项目的行为——Rayleigh曲线 154
4.4工作量和进度估算的方法 157
4.5 MarkⅡFP估算 158
4.6 COCOMOⅡ 161
4.6.1合成应用程序模型 163
4.6.2初期设计和后构架模型 164
4.6.3复用和维护工作量估算 172
4.6.4需求易变性说明 172
4.7 COCOMO组的其他模型 172
4.7.1 COCOTS 172
4.7.2 CORADMO 174
4.7.3 COQUALMO 174
4.7.5 COPROMO 175
4.7.4 COSSEMO 175
4.8 COCOMO 81 176
4.8.1基础模型 176
4.8.2中级模型 177
4.8.3具体模型 177
4.9 Putnam估算模型 180
4.10复杂度算子 183
4.11其他的算法模型 184
4.12类比估算 184
4.13自底向上的估算 186
4.13.1工作分解结构 186
4.13.2 Wideband Delphi估算方法 188
4.14成本估算 189
4.14.1工作人员成本 189
4.15验证软件估算 191
4.14.4项目组培训 191
4.14.2硬件和软件 191
4.14.3通信和差旅 191
4.16小结 192
第5章过程框架 195
5.1过程成熟度 197
5.2需求工程的成熟度 200
5.2.1高成熟度等级 201
(4级和5级)特征 201
5.2.2转向2级 203
5.2.3 3级特征 205
5.2.4成熟度的使能者 206
5.3估算的成熟度 207
5.3.1高成熟度等级 207
(4级和5级)的特征 207
5.3.2转向2级 211
5.3.3 3级的特征 212
5.3.4成熟度的使能者 214
5.4需求使用的数据库 215
5.5估算使用的数据库 216
5.5.1数据库内容 217
5.5.2度量尺度标准程序 218
5.5.3更多有关收集工作量数据的信息 220
5.6模型校准 221
5.7重要参与人 223
5.7.1分析师 223
5.7.2用户 224
5.7.3开发者的管理层 224
5.7.4估算师 226
5.8.1不要忽视其他方面 227
5.7.5项目组成员 227
5.8需求的戒律 227
5.8.2理解领域 228
5.8.3理解需求及不良情况 228
5.8.4不要着急 229
5.8.5不要认为一切是显而易见的 229
5.8.6不要暗自操作 230
5.8.7要学会说“不” 230
5.8.8团队工作 231
5.8.9不要期待分析师来读取你的 231
想法 231
5.8.10没有严格的SRS 231
评审就不要签字认可 231
5.9.1不要为满足预算而估算 232
5.9估算的戒律 232
5.9.2不要玩“因为他会打 233
对折而加倍开价”的游戏 233
5.9.3不要炫耀 233
5.9.4不要玩数字游戏 235
5.9.5不要过分精确 235
5.9.6要现实,而不要处在过去的 236
状态 236
5.9.7避免健忘——忽视并不是祝福 236
5.9.8说出实情 236
5.9.9不要压迫人给出较少估算 237
5.9.10不要太贪婪 237
5.10小结 237
第6章工具 239
6.1需求管理工具应具备的特征 240
6.2一些需求管理工具 242
6.2.1 Caliber-RM 242
6.2.2 RDD 243
6.2.3 XTie-RT 243
6.2.4 Vital Link 244
6.2.5 RequisitePro 245
6.2.6 DOORS 246
6.2.7QSSRequireIT 246
6.2.8 icConcept/RTM Workshop 247
6.2.9 CRADLE 247
6.3软件估算工具应具备的特征 248
6.3.1规模估算 248
6.3.2工作量和进度估算 249
6.3.3成本估算 250
6.3.4贯穿整个生命 250
周期的估算和项目管理 250
6.3.5使用的模型 251
6.3.6接口/集成 252
6.3.7为组织进行定制 253
6.4一些有用的软件估算工具 254
6.4.1 SLIM 254
6.4.2 Function Point Workbench 255
6.4.3 KnowledgePLAN 255
6.4.4 CA-Estimacs 256
6.4.5 PQMPlus 257
6.4.6 ProjectBridgeModeler 257
6.4.8 Results Management v5.0 258
6.4.7 Function Point Manager 258
6.4.9 Estimate Professional 259
6.4.10 Costar 260
6.4.11 USC的COCOMOⅡ工具 261
6.4.12 ANGEL 261
6.4.13 Before You Leap 262
第7章工业资源 263
7.1国际功能点用户组 263
7.2 Metrics Practices Committee,UK 265
7.3 UQAM-SEMRL 266
7.4通用软件度量国际联盟 266
7.5国际标准化组织 267
7.5.1 ISO 14143 268
7.5.2 ISO 9001——ISO 9000-3 268
7.6软件工程研究所 269
7.7 IEEE 270
7.8国际软件基准标准组的基准服务 270
7.9 INCOSE 272
7.10 COCOMO 272
7.11量化软件管理 273
7.12 QAI 274
7.13软件生产率研究室 274
7.14其他培训者和咨询组织 275
附录A 277
附录B 289
附录C 295
附录D 297
附录E 299
参考文献 311