第1章 软件工程的内容与方法 1
1.1 软件的定义 2
1.2 软件工程的定义 4
1.3 软件工程在软件行业中的作用 8
1.4 软件工程方法论 10
1.4.1 软件工程方法论的提出 10
1.4.2 面向过程方法 11
1.4.3 面向对象方法 12
1.4.4 面向元数据方法 13
*1.4.5 形式化方法 14
*1.4.6 面向业务基础平台的方法 18
1.4.7 软件工程方法论小结 20
1.5 软件工程实践论 21
1.5.1 软件工程实践论的提出 21
1.5.2 面向流程分析 22
1.5.3 面向元数据设计 22
1.5.4 面向对象实现 22
1.5.5 面向功能测试 23
1.5.6 面向过程管理 23
1.5.7 软件工程实践论小结 23
1.6 软件支持过程 24
1.7 软件管理过程 25
1.8 实例分析——某港口信息系统
建设案例 26
1.9 本章小结 28
习题1 28
第2章 软件生命周期与开发模型 29
2.1 软件生命周期模型概论 30
2.2 瀑布模型 31
2.3 增量模型 33
2.4 原型模型 34
2.5 迭代模型 36
2.6 螺旋模型 39
2.7 喷泉模型 41
2.8 XP模型 41
2.9 各种模型之间的关系 42
2.10 本章小结 44
习题2 45
第3章 软件立项与合同 46
3.1 软件立项方法与文档 47
3.2 签订合同的方法与文档 47
3.3 软件招标与投标 48
3.4 下达任务的方法与文档 49
3.5 本章小结 53
习题3 53
第4章 软件需求分析 54
4.1 需求分析的基本概念 55
4.2 需求分析的任务 58
4.3 需求分析的方法 63
4.4 需求描述工具 68
4.4.1 描述工具概述 68
4.4.2 面向元数据的需求描述工具 68
4.4.3 面向过程的需求描述工具 69
4.4.4 面向对象的需求描述工具 72
4.5 需求过程管理 77
4.6 需求分析文档 79
4.7 本章小结 81
习题4 82
第5章 软件策划 83
5.1 软件策划概论 84
5.2 软件规模估计方法 87
5.3 软件费用与资源估计方法 89
5.4 软件策划文档 90
5.5 本章小结 91
习题5 91
第6章 软件建模 92
6.1 三个模型的建模思想 93
6.2 数据模型设计概论 96
6.3 数据库设计的理论与方法 100
6.4 数据模型建模实例分析——
“混凝土公司信息管理系统”
建模案例 106
6.5 三个模型建模实例分析——
“某省级新华书店信息
管理系统”建模案例 109
6.6 三个模型建模思想总结 114
6.7 本章小结 115
习题6 116
第7章 软件设计 117
7.1 软件设计概论 118
7.2 软件设计原理 120
7.3 面向过程设计 124
7.3.1 面向过程概要设计 124
7.3.2 面向过程详细设计 127
7.4 面向对象设计 130
7.4.1 面向对象设计描述工具 130
7.4.2 面向对象设计的步骤 138
7.5 面向元数据设计 140
7.6 软件设计方法学总结 143
7.7 软件设计文档 144
7.8 本章小结 145
习题7 146
第8章 软件实现 147
8.1 软件实现概论 148
8.2 软件编码技术 151
8.3 软件实现管理 155
8.4 本章小结 158
习题8 158
第9章 软件测试 159
9.1 软件测试概论 160
9.2 软件测试模型 165
9.3 黑盒测试方法 167
9.3.1 等价类划分法 168
9.3.2 边界值分析法 169
9.3.3 错误推测法 170
9.3.4 因果图分析法 170
9.3.5 场景分析法 171
9.3.6 黑盒测试用例设计 171
9.3.7 黑盒测试的优缺点 174
9.4 白盒测试方法 174
9.5 灰盒测试方法 178
9.6 测试过程与测试文档 178
9.7 本章小结 182
习题9 182
第10章 软件实施与维护 184
10.1 软件产品的分类 185
10.2 软件产品的发布 186
10.3 软件产品的实施 188
10.4 软件维护的传统方法 189
10.5 软件维护的最新方法 192
10.6 软件维护文档 194
10.7 本章小结 195
习题10 196
第11章 软件管理 197
11.1 软件过程改进模型CMMI 198
11.1.1 CMMI内容简介 198
11.1.2 CMMI实施思路 201
*11.1.3 成熟度等级2过程域的
解释 205
*11.2 敏捷文化现象 206
11.3 软件配置管理 208
11.3.1 配置管理的基本概念 208
11.3.2 配置管理员的职责 211
11.3.3 配置管理工具VSS的
工作原理 211
11.4 软件质量保证 213
11.4.1 软件质量保证基本概念 213
11.4.2 软件质量保证文档 216
11.5 软件项目管理 217
11.5.1 项目与项目管理的定义 217
11.5.2 项目经理的七项职责及
十项工作程序 217
11.5.3 项目经理对程序员的八项
要求 219
11.5.4 从大学生到项目经理 221
11.5.5 软件企业人才管理策略 222
11.5.6 软件企业架构及工作流 223
11.6 本章小结 226
习题11 227
参考文献 228