第1章 软件工程的内容与方法 1
1.1 软件工程的定义 2
1.2 软件工程的作用 6
1.3 软件的开发方法 8
1.3.1 软件工程的三种开发方法 8
1.3.2 软件工程的五个面向理论 11
1.4 软件的支持过程 13
1.5 软件的管理过程 14
1.5.1 ISO 9000体系 14
1.5.2 微软企业文化模式 21
1.5.3 SW-CMM模型 23
1.6 软件工程与信息系统工程 28
1.6.1 信息系统的定义 28
1.6.2 信息系统的建设方法 32
1.7 信息系统建设案例 34
1.8 本章小结 35
习题1 36
第2章 软件生存周期及开发模型 39
2.1 软件生存周期概论 40
2.2 瀑布模型 41
2.3 增量模型 42
2.4 迭代模型 44
2.5 原型模型 47
2.6 本章小结 48
习题2 49
第3章 软件立项与合同 51
3.1 立项方法 52
3.2 立项文档 52
3.3 签订合同的方法与合同文档 57
3.4 下达任务的方法与相关文档 59
3.5 任务书案例 60
习题3 64
3.6 本章小结 64
第4章 软件策划 67
4.1 软件策划概论 68
4.2 软件策划方法 70
4.3 软件策划文档 74
4.4 策划管理方法与文档 79
4.5 本章小结 80
习题4 80
第5章 软件需求 83
5.1 需求分析的重要性 84
5.2 需求分析的任务 85
5.3 需求分析的目的 89
5.4 需求分析方法 90
5.5 需求管理过程 94
5.6 需求分析文档 96
5.6.1 需求报告和需求规格说明书的差异 96
5.6.2 用户需求报告 97
5.6.3 需求规格说明书 103
5.6.4 需求管理文档 109
5.7 本章小结 110
习题5 111
第6章 软件设计 113
6.1 设计方法概论 114
6.2 三层结构设计 115
6.2.1 数据层的设计 117
6.2.2 应用逻辑层的设计 117
6.2.3 表示层的设计 117
6.3 数据库设计概论 118
6.3.1 数据库与数据库管理系统 118
6.3.2 数据库的组成 119
6.3.3 数据库设计的内容与步骤 120
6.4 数据库设计的14条技巧 122
6.5 数据库设计工具PowerDesigner 126
6.6 数据模型的设计实例 134
6.7.1 概要设计说明书 138
6.7 软件设计文档 138
6.7.2 详细设计说明书 144
6.7.3 设计管理文档 149
6.8 本章小结 150
习题6 151
第7章 软件建模 153
7.1 UML的建模思想 154
7.1.1 UML对软件工程的重大影响 154
7.1.2 UML的概念模型 155
7.1.3 UML的建模思想 159
7.1.4 UML的软件开发生存周期 167
7.1.5 UML的缺点与不足 170
7.1.6 UML的支撑环境Rose 172
7.1.7 UML的未来 176
7.2 三个模型的建模思想 177
7.2.1 三个模型概论 177
7.2.2 业务模型 179
7.2.3 功能模型 180
7.2.4 数据模型 181
7.3 信息系统建模实例分析 182
7.3.1 新华书店信息系统案例 182
7.3.2 移动电信营业系统案例 187
7.3.3 港口生产信息系统案例 194
7.3.4 劳资信息系统案例 196
7.4 三个模型建模思想总结 198
7.5 本章小结 200
习题7 201
第8章 软件实现 203
8.1 软件实现方法 204
8.2 源程序设计风格 206
8.3 屏幕界面设计 209
8.3.1 控件级定义 209
8.3.2 窗口级定义 213
8.3.3 系统级定义 217
8.4 帮助信息 218
8.4.1 在线帮助 218
8.4.2 提示信息 220
8.4.3 其他规定 222
8.5 软件实现文档 223
8.6 本章小结 228
习题8 229
第9章 软件测试 231
9.1 软件测试概论 232
9.1.1 软件测试的作用 232
9.1.2 软件评测中心 233
9.1.3 软件测试分类 234
9.1.4 软件测试方法 236
9.2 测试案例分析 237
9.3 软件测试文档 239
9.4 软件产品测试提问单 243
9.5 本章小结 252
习题9 252
第10章 软件发布与实施 253
10.1 软件产品分类 254
10.2 软件产品发布 256
10.3 软件产品实施 257
10.4 本章小结 258
习题10 259
第11章 软件维护 261
11.1 软件维护的传统方法 262
11.2 软件维护的最新方法 265
11.3 软件维护文档 268
11.4 本章小结 270
习题11 270
第12章 软件过程管理 271
12.1 CMM基本概念 272
12.2 CMM软件过程资源 280
12.3 CMM实施思路 284
12.4 KPA文档样例分析 289
12.5 CMM的发展方向 298
12.6 本章小结 299
习题12 299
第13章 软件配置管理 301
13.1 配置管理的重要性 302
13.2 配置管理的定义与范围 303
13.3 配置管理的基本概念 306
13.4 配置管理员的职责 308
13.5 配置管理工具VSS 309
13.6 配置管理工具ClearCase 312
13.7 本章小结 315
习题13 315
第14章 软件质量保证 317
14.1 软件质量基本概念 318
14.2 软件质量保证方法 319
14.3 软件质量保证文档 322
14.3.1 质量保证文档 322
14.3.2 质量保证管理文档 326
14.4 本章小结 326
习题14 327
第15章 软件培训 329
15.1 软件培训方法 330
15.1.1 公司集中培训 331
15.1.2 项目组分散培训 331
15.1.3 对客户的培训 331
15.2 软件培训文档 332
15.2.1 培训文档 332
15.2.2 培训管理文档 332
15.3 本章小结 333
习题15 334
第16章 软件项目管理 335
16.1 项目管理定义 336
16.2 项目管理的重要性 337
16.3 项目管理认证体系 339
16.4 项目经理职责及工作程序 341
16.5 项目经理对程序员的9条要求 343
16.6 项目经理谈项目管理7条经验 346
16.7 高层经理谈项目管理10大原则 350
16.8 本章小结 353
习题16 354
附录A 文档编写指南索引表 355
附录B 案例索引表 356
附录C 英文缩略词英汉对照表 357
参考文献 361