第1章 软件体系结构概论 1
1.1 软件危机 1
1.2 软件复用 3
1.3 软件构件的组织与检索 8
1.4 软件构件化 12
1.5 软件体系结构 16
习题 25
第2章 软件体系结构建模 26
2.1 软件体系结构建模概述 26
2.2 软件体系结构模型 26
2.3 软件体系结构的形式化描述 29
2.4 软件体系结构的生命周期 32
2.5 软件体系结构的建模语言 34
2.6 基于软件体系结构的开发 47
习题 50
第3章 软件体系结构风格 51
3.1 软件体系结构风格概述 51
3.2 常用的软件体系结构风格 51
3.3 管道/过滤器体系结构风格 52
3.4 面向对象体系结构风格 53
3.5 事件驱动体系结构风格 54
3.6 分层体系结构风格 55
3.7 C2体系结构风格 56
3.8 数据共享体系结构风格 57
3.9 解释器体系结构风格 59
3.10 反馈控制环体系结构风格 60
3.11 客户机/服务器体系结构风格 61
3.12 浏览器/服务器体系结构风格 66
3.13 公共对象请求代理体系结构风格 68
3.14 正交体系结构风格 69
3.15 基于层次消息总线的体系结构风格 71
3.16 MVC体系结构风格 74
3.17 异构体系结构集成 76
习题 78
第4章 特定领域的软件体系结构 79
4.1 特定领域的软件体系结构定义 79
4.2 DSSA的基本活动 80
4.3 DSSA的参与者 88
4.4 DSSA的生命周期 91
4.5 DSSA的建立 93
4.6 基于DSSA的软件开发 96
4.7 DSSA与软件体系结构风格 101
4.8 DSSA对软件开发的意义 101
4.9 DSSA的应用实例 102
习题 103
第5章 Web服务体系结构 104
5.1 Web服务概述 104
5.2 Web服务技术 106
5.3 面向服务的体系结构 116
5.4 企业服务总线 118
5.5 网格体系结构 124
习题 129
第6章 软件演化技术 130
6.1 软件演化概述 130
6.2 软件需求演化 131
6.3 软件演化的分类 132
6.4 软件静态演化技术 137
6.5 软件动态演化技术 142
6.6 可演化软件的设计 154
习题 155
第7章 软件产品线 156
7.1 软件产品线的起源 156
7.2 软件产品线定义 158
7.3 软件产品线的基本活动 160
7.4 软件产品线需求分析 163
7.5 软件产品线开发评价 171
7.6 软件产品线的建立 173
7.7 软件产品线开发模型 174
7.8 软件产品线的组织结构 177
7.9 软件产品线测试 178
7.10 软件产品线的优点 179
7.11 软件产品线开发所面临的问题 180
习题 180
第8章 设计模式 181
8.1 设计模式概述 181
8.2 软件设计原则 190
8.3 创建型设计模式 194
8.4 结构型设计模式 201
8.5 行为型设计模式 206
习题 217
第9章 软件体系结构评估 218
9.1 软件体系结构评估概述 218
9.2 软件体系结构评估的主要方式 222
9.3 基于场景的软件体系结构评估方式 224
9.4 基于度量的软件体系结构评估方式 231
9.5 基于评估矩阵的软件体系结构评估示例 233
9.6 软件体系结构评估方法比较 235
9.7 软件体系结构评估领域的研究重点和方向 236
习题 238
第10章 云计算 239
10.1 云计算的概念 239
10.2 云计算体系结构 246
10.3 云计算的发展历史和应用现状 248
10.4 云计算与相关计算模型的关系 250
10.5 云计算核心技术简介 252
10.6 云计算的安全问题 261
10.7 云计算应用实例 265
10.8 云计算的研究和发展方向 267
习题 268
参考文献 269