第1章 软件工程概述 1
1.1 软件危机与软件工程 1
1.2 软件开发过程模型 4
1.3 软件系统分析与设计的重要性 7
1.4 软件开发方法 8
1.5 软件工程工具 10
1.6 本章小结 13
1.7 思考与练习 13
第2章 结构化分析和设计方法 14
2.1 结构化分析 14
2.2 概要设计 18
2.3 模块详细设计 21
2.4 本章小结 22
2.5 思考与练习 23
第3章 面向对象分析和设计方法概述 24
3.1 面向对象的核心概念 24
3.2 面向对象开发过程 30
3.3 统一建模语言 32
3.4 统一开发过程 41
3.5 OOCASE:Rational Rose工具简介 48
3.6 本章小结 51
3.7 思考与练习 51
第4章 需求分析与用例建模 52
4.1 需求分析的核心概念和任务 52
4.2 用例图 56
4.3 用例之间的关系 62
4.4 用例图的规格说明 66
4.5 案例分析 67
4.6 本章小结 75
4.7 思考与练习 75
第5章 静态建模 76
5.1 面向对象分析和设计的关系 76
5.2 类图 77
5.3 类之间的关系 81
5.4 对象图 86
5.5 接口 88
5.6 包 90
5.7 案例分析 93
5.8 本章小结 98
5.9 思考与练习 98
第6章 动态建模 99
6.1 消息 99
6.2 时序图 101
6.3 协作图 106
6.4 时序图和协作图的关联与差异 109
6.5 状态图 111
6.6 活动图 120
6.7 案例分析 125
6.8 本章小结 136
6.9 思考与练习 136
第7章 实现建模 138
7.1 逻辑建模和实现建模 138
7.2 构件和构件图 140
7.3 部署图 143
7.4 案例分析 146
7.5 本章小结 148
7.6 思考与练习 149
第8章 软件体系结构概述 150
8.1 软件体系结构的描述 150
8.2 动态软件体系结构 152
8.3 Web服务体系结构 153
8.4 软件产品线体系结构 154
8.5 案例分析 155
8.6 本章小结 156
8.7 思考与练习 156
第9章 软件体系结构风格 157
9.1 软件体系结构风格的定义 157
9.2 经典的软件体系结构风格 158
9.3 客户机/服务器结构 161
9.4 浏览器/服务器结构 163
9.5 公共对象请求代理体系结构 164
9.6 正交软件体系结构 165
9.7 异构软件体系结构 166
9.8 基于云计算的软件体系结构 167
9.9 案例分析 168
9.10 本章小结 169
9.11 思考与练习 170
第10章 设计模式 171
10.1 设计模式概述 171
10.2 设计模式的分类 173
10.3 设计模式的原则 174
10.4 典型设计模式 177
10.5 基于构件和基于体系结构的软件开发 189
10.6 案例分析 189
10.7 本章小结 190
10.8 思考与练习 191
第11章 软件体系结构评估 192
11.1 体系结构评估的主要方式 192
11.2 体系结构评估方法 193
11.3 ATAM评估方法 194
11.4 本章小结 197
11.5 思考与练习 198
参考文献 199