第1章 绪论 1
1.1 研究背景 1
1.1.1 计算机系统发展历程 1
1.1.2 软件过程和开发方法 3
1.2 软件复用 6
1.2.1 软件构件技术 7
1.2.2 领域工程 8
1.2.3 软件再工程 9
1.2.4 开放系统技术 9
1.2.5 软件体系结构 9
1.2.6 软件工厂 10
1.3 软件体系结构概述 11
1.3.1 软件体系结构基本概念 12
1.3.2 软件体系结构研究动态 14
1.3.3 研究中的难点和待解决的问题 15
小结 17
第2章 软件体系结构的构建模式 18
2.1 管道过滤模式 18
2.1.1 管道过滤模式特征 18
2.1.2 管道过滤模式实例 21
2.2 面向对象模式 23
2.2.1 面向对象模式特征 23
2.2.2 面向对象模式实例 25
2.3.1 事件驱动模式特征 30
2.3 事件驱动模式 30
2.3.2 事件驱动模式实例 36
2.4 分层模式 41
2.4.1 分层模式特征 41
2.4.2 分层模式实例 43
2.5 知识库模式 47
2.5.1 知识库模式特征 47
2.5.2 知识库模式实例 48
2.6 解释器模式 53
2.6.1 解释器模式特征 53
2.6.2 解释器模式实例 53
2.7 过程控制环模式 61
2.8 异构模式的集成 68
小结 72
第3章 软件体系结构组态分析与应用 74
3.1 J2EE应用服务器-JBoss 74
3.1.1 J2EE和企业级应用 74
3.1.2 JBoss应用服务器 77
3.2 面向对象模式分析 82
3.2.1 JBoss的面向对象结构 82
3.2.2 JBoss的面向对象实现 86
3.3 管道过滤模式分析 88
3.3.1 EJB容器底层通信模型 90
3.3.2 EJB容器处理远程调用模型 95
3.4.1 基于分层模式的JNDI 103
3.4 分层模式分析 103
3.4.2 分层模式JNDI的实现 106
小结 115
第4章 软件体系结构的形式化描述 117
4.1 软件体系结构形式化描述的方法 117
4.1.1 软件体系结构形式化描述的研究现状 117
4.1.2 软件体系结构的形式化语义基础——CSP语义学简介 128
4.1.3 基于WRIGHT的软件体系结构形式化描述 130
4.1.4 软件体系结构形式化描述的验证 153
4.2 软件体系结构设计的技术手段 164
4.2.1 软件体系结构的设计空间及规则 164
4.2.2 复合模型体系结构的设计空间及规则 170
4.3 AEGIS实例描述 180
4.3.1 简介 180
4.3.2 AEGIS存在的问题 181
4.3.3 原先的体系结构描述规范 182
4.3.4 分析和更改体系结构描述 188
小结 195
第5章 软件体系结构集成开发环境的设计与实现 196
5.1 软件体系结构描述语言 196
5.1.1 构件建模 198
5.1.2 连接器建模 199
5.1.3 体系结构配置建模 200
5.2.1 设计目标 202
5.2 软件体系结构集成环境 202
5.2.2 集成环境原型 203
5.3 Darwin系统介绍 206
5.3.1 Darwin语法基础 207
5.3.2 Darwin软件体系结构集成开发环境 215
5.3.3 Badge系统体系结构定义 223
5.4 几种体系结构描述语言的分类比较 230
5.4.1 构件建模 231
5.4.2 连接器建模 235
5.4.3 体系结构配置 238
5.4.4 体系结构集成开发环境比较 244
小结 246
6.1 21世纪计算机软件技术展望 247
第6章 软件体系结构研究的展望 247
6.2 软件体系结构的发展与研究 249
6.2.1 目前软件体系结构的研究方向 250
6.2.2 IEEE在软件体系结构方面的标准 251
6.2.3 几种主要软件体系结构的风格和比较 254
6.2.4 用软件体系结构的理论指导软件设计的优点 257
6.3 领域特定的软件体系结构的发展 258
6.3.1 特定领域软件开发的趋势 258
6.3.2 软件体系结构在STARS和DSSA中的应用 260
小结 264
主要英文缩写索引 265
参考文献 267