第一章 绪论 1
第一节 软件工程的产生与发展 1
第二节 软件生命周期 5
第三节 典型软件方法 11
第四节 软件开发过程模型与管理 15
第五节 小结 18
第二章 软件需求分析 19
第一节 需求分析的任务 19
第二节 需求获取的技术 21
第三节 需求规格说明书 22
第四节 需求分析的过程 26
第五节 结构化需求分析方法 28
第六节 原型化需求分析方法 30
第七节 小结 30
第三章 结构化方法 32
第一节 结构化程序 32
第二节 结构化分析与设计的一般步骤 39
第三节 结构化分析 40
第四节 结构化设计的图表工具 48
第五节 面向数据流的设计 57
第六节 面向数据结构的设计 61
第七节 模块化技术 65
第八节 小结 76
第四章 面向对象方法 77
第一节 面向对象概念与特征 77
第二节 软件生命周期与开发模型 92
第三节 典型面向对象方法 94
第四节 标准建模语言UML 108
第五节 Rational Rose 126
第六节 小结 134
第五章 软件测试 135
第一节 软件测试概述 135
第二节 白盒测试 141
第三节 黑盒测试 149
第四节 测试用例 153
第五节 调试 155
第六节 面向对象的测试 157
第七节 软件测试的发展趋势 161
第八节 小结 165
第六章 软件维护 167
第一节 软件维护概念 168
第二节 软件维护的工作量 171
第三节 软件维护的过程 173
第四节 软件可维护性 178
第五节 软件再工程 182
第六节 应用实例 186
第七节 小结 187
第七章 软件工程管理 189
第一节 软件工程管理的目标 189
第二节 软件项目管理 193
第三节 软件配置管理 196
第四节 软件质量管理 199
第五节 软件风险管理 207
第六节 软件项目人力资源管理 213
第七节 小结 215
第八章 软件新技术项目管理与计划 217
第一节 新技术项目管理概念 217
第二节 软件过程和项目度量 218
第三节 可行性研究 221
第四节 软件项目估算 222
第五节 软件开发成本估算 224
第六节 软件开发风险估算 229
第七节 进度安排 231
第八节 软件项目的组织与计划 232
第九节 小结 235
第九章 软件工程新技术概述 237
第一节 客户/服务器软件工程 239
第二节 构件接口技术 242
第三节 软件复用 250
第四节 敏捷开发思想 256
第五节 典型的软件工程新技术 257
第六节 模型驱动软件开发 262
第七节 小结 264
参考文献 266