《软件体系结构》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:覃征,李旭,王卫红编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302511441
  • 页数:282 页
图书介绍:通过本书,读者可以了解软件体系结构的研究背景、描述方法、设计风格、评估方法、开发工具和柔性软件体系结构等内容。本书采用最近几年的案例、数据、图示以及其他相关材料以反映软件体系结构的最新发展。本书可以作为计算机以及相关专业的研究生和本科生学习软件体系结构的教材和参考书,对从事软件体系结构研究和软件开发的科研人员也有一定的理论参考价值和实用价值。

第1章 软件体系结构的起源和发展 1

1.1 软件的产生与发展 1

1.2 软件危机的出现与软件工程的兴起 2

1.3 软件体系结构的诞生与发展 5

1.3.1 软件体系结构诞生的背景及意义 5

1.3.2 软件体系结构概念的形成与发展 8

1.4 软件体系结构在软件生命周期中的定位 12

1.5 软件体系结构的研究内容、原理及标准 14

1.5.1 软件体系结构的研究内容 14

1.5.2 软件体系结构的设计原理 15

1.5.3 软件体系结构标准 16

1.6 软件体系结构的3个层次级别 18

1.7 小结 21

第2章 软件体系结构风格和模式 23

2.1 软件体系结构风格和模式基础 23

2.2 管道-过滤器风格 25

2.2.1 概述 25

2.2.2 优缺点 26

2.2.3 案例 27

2.3 面向对象风格 30

2.3.1 概述 30

2.3.2 优缺点 31

2.3.3 案例 32

2.4 事件驱动风格 37

2.4.1 概述 37

2.4.2 优缺点 39

2.4.3 案例 40

2.5 分层风格 45

2.5.1 概述 45

2.5.2 优缺点 46

2.5.3 案例 47

2.6 数据共享风格 50

2.6.1 概述 50

2.6.2 优缺点 51

2.6.3 案例 51

2.7 解释器风格 54

2.7.1 概述 54

2.7.2 优缺点 55

2.7.3 案例 55

2.8 反馈控制环风格 58

2.8.1 概述 58

2.8.2 优缺点 58

2.8.3 案例 58

2.9 云体系结构风格 59

2.9.1 概述 59

2.9.2 优缺点 62

2.9.3 案例 62

2.10 体系结构风格比较 65

2.11 异构风格的集成 66

2.12 小结 68

附录2A 案例一:SMCSP项目 69

2A.1 项目背景 69

2A.2 功能需求 70

2A.3 系统设计 73

2A.4 系统实现 74

2A.5 案例小结 89

附录2B 案例二:Recommender项目 89

2B.1 项目背景 89

2B.2 功能需求 89

2B.3 系统设计 90

2B.4 系统实现 92

2B.5 案例小结 96

第3章 软件体系结构描述 98

3.1 软件体系结构建模概述 98

3.1.1 软件体系结构建模问题 98

3.1.2 软件体系结构描述方法 99

3.2 基于UML的软件体系结构描述 100

3.2.1 UML概述 100

3.2.2 UML结构分析 101

3.2.3 UML的软件体系结构描述 105

3.3 UML体系结构描述方式案例分析 109

3.3.1 “4+1”视图模型 109

3.3.2 教务管理系统的非形式化描述案例 111

3.4 基于ADL的软件体系结构描述 117

3.4.1 ADL概述 118

3.4.2 ADL结构分析 121

3.5 ADL体系结构描述方式案例分析 125

3.5.1 构件与连接器描述 126

3.5.2 配置的描述 129

3.6 可扩展体系结构语言基础框架FEAL 133

3.6.1 设计意图 133

3.6.2 FEAL结构 135

3.6.3 FEAL映射器 136

3.6.4 FEAL应用示例 136

3.7 小结 138

第4章 软件体系结构级别的设计策略 139

4.1 软件体系结构设计的重用 139

4.2 体系结构设计空间与规则 140

4.3 SADPBA 141

4.3.1 总览 141

4.3.2 使用设计空间对设计过程进行拆分 142

4.3.3 SADPBA的追踪机制 144

4.3.4 软件体系结构的生命周期模型 144

4.3.5 实践中的SADPBA 145

4.4 示例:MEECS 151

4.4.1 MEECS简介 151

4.4.2 将SADPBA应用到MEECS 152

4.5 小结 158

第5章 软件体系结构集成开发环境 159

5.1 软件体系结构集成开发环境的作用 159

5.1.1 软件体系结构集成开发环境的优点 159

5.1.2 软件体系结构集成开发环境的作用 159

5.2 体系结构IDE原型 162

5.2.1 用户界面层 163

5.2.2 模型层 163

5.2.3 基础层 165

5.2.4 体系结构集成开发环境设计策略 165

5.3 ArchStudio 5系统 166

5.3.1 ArchStudio 5简介 166

5.3.2 安装ArchStudio 5 169

5.3.3 ArchStudio 5概况 169

5.3.4 ArchStudio 5的使用 174

5.4 其他开发环境 178

5.4.1 ArchWare:体系结构改进开发环境 178

5.4.2 自适应软件体系结构开发环境 178

5.4.3 面向UniCore体系结构的集成开发环境 180

5.4.4 图文法规则制导的软件体系结构开发环境 180

5.5 小结 181

第6章 软件体系结构评估 183

6.1 软件体系结构评估概述 183

6.1.1 质量属性 183

6.1.2 评估的必要性 185

6.1.3 评估方法分类 186

6.2 质量属性专题研讨会方法 189

6.3 软件构架分析方法 190

6.3.1 SAAM的一般步骤 190

6.3.2 场景生成 191

6.3.3 体系结构描述 191

6.3.4 场景的分类和优先级确定 192

6.3.5 间接场景的单个评估 192

6.3.6 对场景关联的评估 193

6.3.7 形成总体评估 193

6.4 体系结构权衡分析方法 194

6.4.1 最初的ATAM 195

6.4.2 改进版ATAM 196

6.4.3 ATAM的一般过程 197

6.4.4 体系结构描述及收集与评估有关的信息 199

6.4.5 以体系结构为中心进行分析 201

6.4.6 以风险承担者为中心进行分析 202

6.4.7 提交评估结果 203

6.5 积极的中间设计审核方法 203

6.6 体系结构层次上的软件可维护性预测方法 204

6.7 基于度量的评估方法 205

6.8 评估方法比较 205

6.8.1 比较框架 206

6.8.2 评估方法概览和比较 208

6.9 小结 223

第7章 柔性软件体系结构 225

7.1 什么是柔性软件体系结构 225

7.1.1 动态软件体系结构 225

7.1.2 基于行为视角的π-ADL 227

7.1.3 基于反射视角的MARMOL 232

7.1.4 基于协调视角的LIME 238

7.1.5 柔性软件体系结构 243

7.2 为什么使用柔性软件体系结构 246

7.3 怎样使用柔性软件体系结构 248

7.3.1 Rainbow 248

7.3.2 MADAM 250

7.4 小结 253

第8章 软件体系结构的前景 255

8.1 国内外软件体系结构应用 255

8.1.1 全球软件产业状况 255

8.1.2 软件体系结构在系统中的应用 260

8.1.3 五大计算的软件体系结构 264

8.2 软件体系结构研究的不足和展望 270

8.3 小结 272

参考文献 273