第一篇 基础篇 1
第一章 概述 1
第一节 计算机系统的开发过程 1
第二节 软件及其分类 3
第三节 软件工程的由来和发展 4
第四节 软件的生命周期 6
第五节 软件生存期模型 7
小结 13
第二章 软件计划 14
第一节 确定软件范围 14
第二节 软件开发中的资源需求 14
第三节 软件成本估算 16
第四节 软件开发进度的安排 30
小结 34
第一节 需求分析的任务 36
第三章 软件需求分析 36
第二节 需求规约说明书(SRS) 37
第三节 结构化需求分析方法 39
第四节 原型化需求分析方法 50
第五节 面向对象方法 56
小结 61
第四章 软件设计 62
第一节 软件设计的任务 62
第二节 软件设计的概念和原则 63
第三节 软件概要设计 67
第四节 软件详细设计 72
第五节 结构化设计方法 82
第六节 面向数据结构的设计方法 90
第七节 面向对象的设计方法 98
第八节 其他设计方法 105
小结 108
第一节 程序设计语言的分类 111
第五章 程序编码 111
第二节 编码风格 112
第三节 面向对象的编程语言 116
小结 118
第六章 软件测试 119
第一节 软件测试基础 119
第二节 测试步骤和策略 120
第三节 测试用例设计 129
第四节 软件可靠性 137
第五节 面向对象的测试 140
小结 146
第七章 软件维护 148
第一节 软件维护的概念 148
第二节 软件的可维护性 148
第三节 提高可维护性的方法 150
第四节 软件再工程 153
小结 156
第八章 软件复用 157
第一节 软件复用概念 157
第二节 领域工程 160
第三节 可复用构件的建造及复用 163
第四节 面向对象的软件复用技术 170
小结 172
第二篇 中级篇 173
第九章 面向对象的软件工程 173
第一节 面向对象的基本概念 174
第二节 面向对象建模及统一建模语言UML 182
第三节 面向对象的软件需求分析及设计 198
第四节 面向对象的软件需求分析方法及其在图书馆系统的应用 202
第五节 基于UML的网络管理平台的分析与设计 206
小结 209
第一节 软件质量概念 212
第十章 软件质量保证 212
第二节 软件质量保证 213
第三节 软件复审 215
第四节 统计质量保证 217
第五节 ISO9000质量标准 218
第六节 软件质量预测模型及应用 223
小结 227
第十一章 软件的技术度量 228
第一节 软件技术度量概述 228
第二节 软件分析模型的度量 231
第三节 软件设计模型的度量 234
第四节 源代码度量 239
第五节 软件测试的度量 241
第六节 软件维护的度量 242
第七节 面向对象的度量 243
小结 251
第十二章 软件工程经济学 252
第一节 基本COCOMO模型 253
第二节 中级COCOMO模型 258
第三节 详细COCOMO模型 263
第四节 COCOMO的优缺点 266
第五节 COCOMOⅡ 267
小结 269
第十三章 软件开发工具与环境 270
第一节 软件开发工具 270
第二节 软件开发环境 271
第三节 计算机辅助软件工程 273
小结 278
第三篇 高级篇 280
第十四章 软件工程管理 280
第一节 软件工程文化 280
第二节 现代人件 284
第三节 软件工程36计 291
第四节 软件风险分析与管理 298
第五节 软件配置管理 303
第六节 软件工程标准化 306
第七节 软件的知识产权保护 308
小结 312
第十五章 软件过程管理 314
第一节 软件能力成熟度模型(CMM) 314
第二节 CMM的主要内容 316
第三节 CMM各级之间的关系 323
第四节 CMM实施的人员构成和组织机构的划分 326
第五节 个体软件过程(PSP) 328
小结 333
第十六章 基于构件的软件工程 334
第一节 基本概念 334
第二节 可复用构件的分类与查询 339
第三节 基于构件的软件重用成熟度 343
第四节 构件技术应用 344
小结 350
第十七章 客户/服务器(C/S)软件工程 352
第一节 C/S系统结构 352
第二节 C/S系统分析 356
第三节 C/S系统设计 356
第四节 C/S系统测试 359
小结 361
第十八章 柔性软件开发技术 362
第一节 什么是柔性软件系统 362
第二节 软件柔性特性分析 363
第三节 柔性软件的体系结构 365
第四节 柔性软件的开发 368
小结 371
参考文献 372