《软件体系结构的原理、组成与应用》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:万建成,卢雷编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2002
  • ISBN:7030106733
  • 页数:382 页
图书介绍:计算机应用技术教材:本书全面讨论了软件体系结构研究的由来和发展,介绍了有关体系结构概念的构成和关于体系结构的不同观点,并给出了描述体系结构的有关理论和方法的研究成果。

第1章 概述 1

1.1 软件体系结构 1

1.2 当前的软件设计 3

1.3 软件设计的层次 4

1.4 体系结构与软件的工程设计 5

1.5 软件体系结构的知识体系 6

习题一 7

第2章 软件体系结构的研究与发展 8

2.1 软件工程设计和软件体系结构 8

2.1.1 软件设计的目标 9

2.1.2 软件设计中出现的问题 11

2.1.3 针对问题提出的软件设计思想 12

2.2 什么是软件体系结构 14

2.2.1 关于软件体系结构的认识发展 14

2.2.2 当前对软件体系结构的认识 15

2.3.1 体系结构在软件开发中的意义 16

2.3 软件体系结构的意义和目标 16

2.3.2 软件体系结构的目标 17

2.3.3 与其他软件设计活动的关系 17

2.4 软件体系结构的发展 18

2.4.1 来自程序抽象方面的发展 18

2.4.2 来自软件工程和概念模型方面的发展 19

2.4.3 来自体系结构方面的发展 20

2.5 软件体系结构的研究范畴 21

2.5.1 与体系结构有关的研究:风格、设计模型、框架 22

2.5.2 体系结构的观点 25

2.5.3 领域结构风格 29

2.5.4 体系结构的描述语言 29

2.5.5 体系结构的形式化 32

2.5.6 体系结构的工具和环境 33

2.6 软件体系结构与其他软件技术 34

2.7 软件体系结构的现状 35

习题二 37

3.1 从建筑学看软件的构成 38

第3章 软件体系结构的层次性 38

3.2 软件的物质基础 39

3.3 软件的结构基础 42

3.3.1 结构化控制流 42

3.3.2 部件连接方式 44

3.3.3 结构化连接模式 47

3.3.4 基本数据类型 48

3.3.5 抽象数据类型 49

3.3.6 进程及其运行环境 51

3.3.7 分时并发计算 54

3.3.8 资源共享/并行同步 56

3.3.9 实时系统 56

3.3.10 软件结构的四视图观 58

3.4 软件的层次结构模型 61

3.4.1 计算机网络的体系结构 61

3.4.2 计算机操作系统的体系结构 63

3.4.3 层次体系结构的对比 65

3.5 软件体系结构的层次模型 66

3.6 软件体系结构的体系 70

习题三 74

第4章 体系结构的设计原理 75

4.1 体系结构的设计原理 75

4.2 软件的非功能特性 78

习题四 81

第5章 部件与连接器 82

5.1 部件 82

5.1.1 部件及其作用 82

5.1.2 部件的实现形式 82

5.1.3 部件的表达形式 83

5.1.4 部件的类别 84

5.1.5 部件的特性 84

5.2 连接 86

5.2.1 连接的种类 87

5.2.2 连接的实现机制 87

5.2.4 连接的特性 88

5.2.3 连接的协议 88

5.2.5 连接的不匹配及其解决方法 90

5.3 连接器 91

5.3.1 连接器及其作用 91

5.3.2 连接器的层次性 91

5.3.3 连接器的表达形式 92

5.3.4 连接器的类别 93

5.3.5 连接器的特性 94

习题五 96

第6章 体系结构的一般描述 97

6.1 主程序与子过程 97

6.2 数据抽象和面向对象设计 98

6.2.1 基本要点和特征 99

6.2.2 对象的实现类型 99

6.2.3 设计时的考虑 100

6.2.4 对象的运行机制 100

6.3 层次结构 101

6.2.5 面向对象的优缺点 101

6.3.1 适应的设计问题 102

6.3.2 设计结构 102

6.3.3 层次结构的特性 103

6.3.4 层次结构的实现 104

6.3.5 应用实例 106

6.3.6 层次结构的变种 107

6.3.7 层次结构的应用实例 107

6.3.8 层次结构的优缺点 108

6.4 形式化描述:类属理论(Category Theory) 109

6.4.1 基本概念 109

6.4.2 代数规范(Algebraic Specification) 111

6.4.3 类属规范Spec 111

6.4.4 类属规范P-Spec 113

6.4.5 函数型体系结构理论 116

6.4.6 进程代数体系结构理论 118

6.5 形式化描述:Z标记语言(Z Notation) 119

6.5.1 数学基础 120

6.5.2 基本概念 122

6.5.3 类型构造器:架构(schema) 123

6.5.4 应用例 126

6.6 化学抽象机模型 128

6.6.1 基本概念 128

6.6.2 应用例 130

6.7 UniCon 131

6.8 ACME 137

6.8.1 ACME的核心概念 138

6.8.2 ACME中体系结构的风格 144

6.8.3 定义ACME族(Family) 146

6.9 软件工程设计方法与体系结构描述 148

习题六 149

第7章 体系结构的基础结构模式 150

7.1 独享/共享对象 150

7.2 对象的导出成员(Derived Item) 152

7.3 动态约束 153

7.4 惟一对象(Singleton) 155

7.5 引用计数/句柄(Reference Counter/Handle) 156

7.6 汇集(Collection) 159

7.7 循环器(Iterator) 162

7.8 对象关联(Object Association) 166

7.9 注册/观察器(Observer) 168

7.10 责任链(Chain of Responsibility) 170

7.11 聚集(Aggregation)和特性(Property) 173

7.12 策略(Policy/Strategy) 176

7.13 表达式计算和堆栈 181

7.14 对象工厂(Factory) 183

7.15 转换器(Convertor/Builder) 186

7.16 对象的状态/生存周期(State/Life Cycle) 187

7.17 虚拟设备(Virtual Devices) 191

7.18 代理(Proxy) 192

7.19 小结 194

习题七 196

8.1.1 界面设计的可变性需求 197

8.1 模型-视图-控制(MVC:Model-View-Controller) 197

第8章 体系结构的设计模式 197

8.1.2 MVC的结构 198

8.1.3 MVC的实现 200

8.1.4 MVC的变化及其他 203

8.2 网络通信套接(Windows Sockets) 205

8.2.1 Windows Sockets规范和结构关系 205

8.2.2 Windows Sockets的结构特性 210

8.2.3 WinSock控件 213

8.3 串行通信 216

习题八 220

第9章 运行调度层体系结构 221

9.1 进程通信 221

9.1.1 信号 221

9.1.2 管道 224

9.1.3 FIFO管道 226

9.1.4 IPC进程间消息通信 228

9.2.1 内核对象 230

9.2 Windows 2000进程管理和控制的内核对象 230

9.2.2 进程间共享内核对象 231

9.3 Windows 2000的作业 232

9.4 Windows 2000的进程 234

9.4.1 进程的工作属性 235

9.4.2 创建进程 236

9.4.3 子进程 237

9.4.4 终止进程 238

9.5 Windows 2000的线程 238

9.5.1 创建线程 239

9.5.2 线程的运行和调度 240

9.5.3 多线程运行的问题 242

9.5.4 线程同步机制 243

9.5.5 使用内核对象的线程同步机制 245

9.6 线程池 251

习题九 253

10.1.1 事件与消息 254

第10章 资源及管理层体系结构 254

10.1 消息机制与隐式调用 254

10.1.2 消息的处理 256

10.1.3 消息过滤器 257

10.1.4 消息机制的特点 258

10.2 动态链接库 258

10.2.1 动态链接库 259

10.2.2 动态链接库的作用 260

10.2.3 何时使用动态链接库 261

10.3.1 注册表 262

10.2.4 动态链接库的建立和使用 262

10.3 注册表 262

10.3.2 注册表信息的访问 264

10.4 剪贴板 266

10.5 过程调用/本地过程调用LPC/远程过程调用RPC 268

10.5.1 LPC和RPC及其实现 268

10.5.2 RPC 269

10.5.4 使用WinSock实现的RPC和消息传递 270

10.5.3 LPC和RPC实现的考虑 270

10.6 开放数据库互连:ODBC 271

10.6.1 ODBC及其原理 271

10.6.2 ODBC的体系结构 272

10.6.3 ODBC的驱动程序类型及结构 274

10.6.4 ODBC一致性级别 274

习题十 275

第11章 系统结构模式层体系结构 276

11.1 管道-过滤器 276

11.1.1 管道-过滤器结构 276

11.1.2 管道-过滤器的特性 277

11.1.3 管道-过滤器的类型 278

11.1.4 管道-过滤器的优缺点 278

11.2 实时与连续计算 279

11.2.1 实时与连续计算的系统结构 280

11.2.2 控制系统概念 280

11.2.4 系统的设计和实现 281

11.2.3 系统类型 281

11.3 客户/服务器结构 283

11.3.1 客户/服务器概述 283

11.3.2 客户/服务器的结构分析 284

11.3.3 客户/服务器的连接 286

11.3.4 客户/服务器的运行机制 288

11.4 仓库系统:Microsoft SQL Server的C/S体系结构 290

11.4.1 SQL Server的结构 290

11.4.2 服务接口 295

11.4.3 线程池和线程的多任务处理 296

11.5 黑板系统 297

11.5.1 黑板系统的结构 297

11.5.2 HEARSAY-Ⅱ和其他黑板结构应用 298

11.5.3 黑板结构的变体 299

11.6.1 解释器的组成 300

11.6.2 解释器的工作机制 300

11.6 解释器/虚拟机 300

11.7 COM/DCOM组件 301

11.7.1 COM由来 301

11.7.2 COM结构 302

11.7.3 COM接口 304

11.7.4 COM类型 306

11.7.5 COM运行 308

11.7.6 COM扩展 311

11.8.1 独立组件体系结构 313

11.8 独立组件体系结构及其通信机制 313

11.8.2 组件的消息机制 314

11.8.3 从COM机制看组件与客户的通信 317

11.9 WWW万维网 317

11.9.1 libWWW的构成 318

11.9.2 应用libWWW的万维网的C/S体系结构 319

11.9.3 公共网关接口CGI 320

11.9.4 应用Jigsaw的新体系结构 321

11.10 WWW浏览器 322

11.11.1 需求和解决方案 326

11.11 微核(Microkernal) 326

11.11.2 系统结构 327

11.11.3 动态特性 328

11.11.4 实现过程 329

11.11.5 微内核的变异及其他 331

习题十一 333

第12章 领域应用层体系结构 334

12.1 IBM San Francisco框架 334

12.2.1 层次构成和抽象 336

12.2 IBM San Francisco的体系结构 336

12.2.2 平台无关性 338

12.3 IBM San Francisco基础层 339

12.3.1 Entity实体 340

12.3.2 Dependent对象及其他 341

12.4 IBM San Francisco公共业务对象层 343

12.5 IBM San Francisco核心业务处理层 345

12.6 IBM San Francisco的设计模式 347

12.7.1 配置和服务器管理 349

12.7 IBM San Francisco系统支持 349

12.7.2 安全配置及其他 352

12.8 IBM San Francisco应用的开发方法 353

12.9 MetaH嵌入式软件体系结构描述语言和工具 355

习题十二 357

第13章 体系结构应用例 358

13.1 汽车车速控制问题的软件体系结构 358

13.2 DOS操作系统中的汉字处理 362

13.3 WINDOWS操作系统中的汉字处理 364

13.4.1 总体结构 365

13.4 电力调度网损数据管理系统 365

13.4.2 系统的部件和连接描述 367

13.4.3 系统运行结构图 371

13.5 远程数据传输RDT(Remote Data Transmision) 372

13.6 体系结构的混合 374

习题十三 376

结束语:开放的体系结构研究 377

参考文献 379