体系结构的层次模型
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题描述 对于任意两个部件A和B,由于在实现机
制、数据表示、通信、包装、同步、语法、 控制等方面的差异,A和B部件不能协调工 作。
连接的不匹配及其解决方法
解决方案
修改部件A的实现 修改AB的数据传输
A
B
协议“握手”机制
在正式开始传输前,识别协议。确定可接受的 连接行为
连接的不匹配及其解决方法
3. 基础控制描述层
该层面是对软件所处理问题的数据对象及其之间 关系最深入、最具体的描述,也反映了人们通常 对于软件结构的认识。
在该层对软件结构的描述可以划分为:
方法I
以数据对象和操作算法为代表的高级层面 实现代码结构的低级层面
方法II
处理软件运行所维持的内在数据和关系的内在概念模型 外在操作结构或界面 用户与内在模型实现交互的手段
最小性 部件接口或界面中任一操作,都不能由其他操作组合而实现。
正交性 设法使两个不同的操作交叉重复部分达到最小。
方便性 提供用户欢迎的操作。可能会破坏最小性和正交性要求
效率 接口操作的执行效率
部件的特性
部件的运行特性
中断处理 实时系统:消息机制 / 中断处理
并行调度 考虑进程的产生、撤销、通信和调度管理
…
状态和指令的集合 状态和中断服务
编程工具 提供汇编及宏汇编语言
软件构成的基础
3. 基础控制描述层
软件描述层
程序控制 数据描述
支持该层的软件系统模型 主程序/子程序、结构化程序、模块化程序、
面向对象程序、状态转换等
支持该层的设计工具 程序设计语言、结构化分析设计、面向对象分
析设计
消息连接 高层:不同类型消息的属性与取值 低层:消息的传递和处理规则
连接的特性
连接的方向性
连接的角色 连接双方的地位
连接的激发 引起连接行为的方式
连接的响应特性 “从动方”对连接请求的处理特性。
实时性、时间、方式(同步/异步)、并发处理的能力。
连接的不匹配及其解决方法
连接冲突或不匹配的原因 连接的实现机制、协议、特性等。
多用户服务 部件具有事件触发和多线程运行的能力
部件的特性
部件的远程服务特性
提供数据和功能服务 网络的分布计算环境的要求
部件的特性
部件的关联特性 部件与相关联部件所建立的联系和联系的方式 e.g. 向其他部件请求信息或服务
动态/静态处理联系
连接的实现形式影响部件的设计与实现 e.g. 同步调用/异步调用
部件的类别
概念层次
基础部件、中层部件、高层部件
应用 通用部件、专用部件
功能 数据服务部件、功能服务部件、逻辑处理部件、界面
部件、控制部件、连接部件、体系结构部件等
运行特性 调度和非调度部件、中断和非中断部件、多客户服务
部件。
部件的特性
部件的接口特性
完备性 使用者可以用它完成部件应该能够完成的一切工作。
必须等待处理结果 调用后即可返回,不等待结果
连接的实现机制
硬件层
实现高层连接的基础
过程调用 功能服务和抽象连接
中断 复杂连接
存储 共享
栈
高层过程调用的参数传递
DMA 大体积快速共享传输
串行和并行 高层输入/输出连接的基础
连接的实现机制
基础控制描述层 过程调用(同步/异步调用) 动态约束 流和文件 责任链 网络
CAD工具软件、统计分析设计、领域专家系统设计
体系结构层次模型的概念划分和构成
部件与连接器
部件:软件系统的组成单元 连接器:承担连接作用的特殊部件
部件
部件及其作用 部件的实现形式 部件的表达形式 部件的类别 部件的特性
部件及其作用
部件定义
从系统构成 在系统运行中承担一定功能、发挥一定作用的软件体 从程序设计角度 模块、类、对象或者一个相关功能集合
支持该层的软件系统模型 分布式计算、程序组装
支持该层的设计工具 编译器设计、组件设计
6. 应用层
从应用领域出发建立的系统结构概念
包括的概念 企业管理、公文处理、控制系统、CAD系统…
支持该层的软件系统模型 企业管理、组态控制、过程控制、统计分析、动画制
作等
支持该层的设计工具 事务处理设计、公文处理设计、控制系统组态环境、
单个计算机系统内的连接器
有/无专用连通介质。 系统中需要建立两端的接收、发送和计算处理。
分类: 连接器两端处于同一个系统内部 并发 / 非并发部件 连接器两端处于不同系统 两端系统同时 / 非同时运行
连接器的特性
关系 1:1、1:n、n:1、m:n
角色和方向 角色:参与方的作用或地位 方向:双向 / 单向
A端接口
连接器
B端接口
A端接口
A端 接收、 发送、
计算
B端 接收、 发送、
计算
B端接口
连接器的表达形式
多端连通的连接器 1对多单向、多对1单向、 1对多互连、多对1
互连
连接器的类别
直接连接 不需要专门连接器的连接
具有物理隔离的不同计算机系统之间的连接器
有专用连通介质的连接器 系统中需要建立单端的接收、发送和计算处理。
部件分类(作用)
控制部件
负责系统运行管理
协调部件
负责部件间协作关系
连接部件
负责部件间链接作用和转换
服务提供部件 为其他部件提供特定服务功能
信息控制部件 负责安全检查和信息转接传递
构造部件
完成对象的产生和撤销
部件的实现形式
部件
无行为能力 有行为能力
简单数据 内部结构+操作行为
部件的基本实现形式就是对象
交互方式 请求信息传递的形式 信号式 / 语言式
连接器的特性
可扩展性 操作接口、功能、连接关系的动态可扩展性
互操作性 建立连接的双方,直接或间接操作对方信息的
能力。
动态连接性 连接行为的动态约束特性
连接器的特性
连接请求的响应特性 响应的顺序性、同时性、并发性
连接请求的处理策略 请求的传递、扩展、撤销。
连接器及其作用
连接器 实现部件之间联系的特殊机制或特殊部件
联系:消息和信号的传递、功能和方法的请求或调用、 数据的转换和传送…
连接部件与一般部件
一般部件:软件功能设计和实现的承载体 连接器:负责完成部件之间信息交换和行为联系的专
用部件
连接器的表达形式
部件之间的直接连接
部件A
部件B
有/无专用介质
解决方案
使B的连接支持多种实现机制和协议
A
B
使用标记语言 e.g. <XML>
为B提供信息输入/输出的转换器
A
B
连接的不匹配及其解决方法
解决方案
使用信息交换的中间形式
在部件外部建立信息交换表示 推广信息交换的通用标准
使用中介部件(连接器)
A
使用代理包装A
A
B B
连接器
连接器及其作用 连接器的表达形式 连接器的类别 连接器的特性
连接的代价,处理速度或能力 对连接器性能的评价
连接器的特性
连接器的概念等级或层次 由所处理问题的概念层次确定
共享数据的连接器 共享数据区 / 共享文件
谢谢!
体系结构的层次模型
Байду номын сангаас
软件体系结构的层次模型
层次性是软件体系结 构的不变性,是软件 构成的共同规律。
1.硬件基础层
软件运行的物质基础 处理器、存储器、时钟、中断及控制、
I/O端口、I/O通道、…
基于冯.诺依曼结构
2. 软化的硬件层
形成 以命名代理的形式对硬件的操作加以描述
处理方式
处理器 中断
层次模型中部件的概念
是在基本的部件形式上经过复合和概念提升而产生的 e.g. 数组、树; 注册表; 浏览器
部件的表达形式
具有操作接口定义的抽象数据类型描述
组成
内部数据结构及其操作 对外提供的操作方法集合
按照访问目的对操作方法进行划分,得到部件的多个操作接口 接口:Interface(Java) 接口定义:IDL(Interface Description Language)
连接的实现机制
资源及管理调度层 进程、线程、共享、同步、并行、分时
并发、事件、消息、异常、…
面向应用层次 管道、解释器、编译器、组件/中间件、
OLE、ActiveX、ODBC、…
连接的协议
协议:连接的规约,实现有意义连接的保证
广义的协议 / 层次性
过程调用 高层:参数的个数与类型、排列次序 低层:运行环境、参数的计算和压栈次序
连接的本质在于: 实现机制和信息交换协议,简称机制和协议
机制 连接得以发生和维持的机制 e.g. 参数调用方式 / 串口通讯
协议 正确进行信息交换的规则
连接的种类
按照连接的目的划分
操作/过程调用 控制/事件/消息发送 数据传输
连接的实现机制
同步 e.g. 串口的阻塞传输
异步 e.g. 网络中的异步发送
4. 资源和管理层
操作系统的协调和控制
提供基于操作系统的资源和功能服务
支持该层的软件系统模型 进程控制、分时系统、消息控制、微核系统、可视化
程序结构
支持该层的设计工具 体系结构语言、可视化程序设计
5. 系统结构模式层
体系结构风格或系统级别的设计模式
e.g. 解释器、编译器、编辑器、客户/服务器、浏览器 B/S、…
部件的特性
部件的动态特性
运行调度 运行环境资源的分配和多任务的并行执行
生存期管理 部件运行实例的产生和撤销,包括由部件负责 的其他类型部件的产生和撤销。
部件的特性
部件的概念等级或层次
连接
连接的种类 连接的实现机制 连接的协议 连接的特性 连接的不匹配及其解决方法
连接
连接
部件与部件之间建立和维持行为关联和信息传递的途 径
制、数据表示、通信、包装、同步、语法、 控制等方面的差异,A和B部件不能协调工 作。
连接的不匹配及其解决方法
解决方案
修改部件A的实现 修改AB的数据传输
A
B
协议“握手”机制
在正式开始传输前,识别协议。确定可接受的 连接行为
连接的不匹配及其解决方法
3. 基础控制描述层
该层面是对软件所处理问题的数据对象及其之间 关系最深入、最具体的描述,也反映了人们通常 对于软件结构的认识。
在该层对软件结构的描述可以划分为:
方法I
以数据对象和操作算法为代表的高级层面 实现代码结构的低级层面
方法II
处理软件运行所维持的内在数据和关系的内在概念模型 外在操作结构或界面 用户与内在模型实现交互的手段
最小性 部件接口或界面中任一操作,都不能由其他操作组合而实现。
正交性 设法使两个不同的操作交叉重复部分达到最小。
方便性 提供用户欢迎的操作。可能会破坏最小性和正交性要求
效率 接口操作的执行效率
部件的特性
部件的运行特性
中断处理 实时系统:消息机制 / 中断处理
并行调度 考虑进程的产生、撤销、通信和调度管理
…
状态和指令的集合 状态和中断服务
编程工具 提供汇编及宏汇编语言
软件构成的基础
3. 基础控制描述层
软件描述层
程序控制 数据描述
支持该层的软件系统模型 主程序/子程序、结构化程序、模块化程序、
面向对象程序、状态转换等
支持该层的设计工具 程序设计语言、结构化分析设计、面向对象分
析设计
消息连接 高层:不同类型消息的属性与取值 低层:消息的传递和处理规则
连接的特性
连接的方向性
连接的角色 连接双方的地位
连接的激发 引起连接行为的方式
连接的响应特性 “从动方”对连接请求的处理特性。
实时性、时间、方式(同步/异步)、并发处理的能力。
连接的不匹配及其解决方法
连接冲突或不匹配的原因 连接的实现机制、协议、特性等。
多用户服务 部件具有事件触发和多线程运行的能力
部件的特性
部件的远程服务特性
提供数据和功能服务 网络的分布计算环境的要求
部件的特性
部件的关联特性 部件与相关联部件所建立的联系和联系的方式 e.g. 向其他部件请求信息或服务
动态/静态处理联系
连接的实现形式影响部件的设计与实现 e.g. 同步调用/异步调用
部件的类别
概念层次
基础部件、中层部件、高层部件
应用 通用部件、专用部件
功能 数据服务部件、功能服务部件、逻辑处理部件、界面
部件、控制部件、连接部件、体系结构部件等
运行特性 调度和非调度部件、中断和非中断部件、多客户服务
部件。
部件的特性
部件的接口特性
完备性 使用者可以用它完成部件应该能够完成的一切工作。
必须等待处理结果 调用后即可返回,不等待结果
连接的实现机制
硬件层
实现高层连接的基础
过程调用 功能服务和抽象连接
中断 复杂连接
存储 共享
栈
高层过程调用的参数传递
DMA 大体积快速共享传输
串行和并行 高层输入/输出连接的基础
连接的实现机制
基础控制描述层 过程调用(同步/异步调用) 动态约束 流和文件 责任链 网络
CAD工具软件、统计分析设计、领域专家系统设计
体系结构层次模型的概念划分和构成
部件与连接器
部件:软件系统的组成单元 连接器:承担连接作用的特殊部件
部件
部件及其作用 部件的实现形式 部件的表达形式 部件的类别 部件的特性
部件及其作用
部件定义
从系统构成 在系统运行中承担一定功能、发挥一定作用的软件体 从程序设计角度 模块、类、对象或者一个相关功能集合
支持该层的软件系统模型 分布式计算、程序组装
支持该层的设计工具 编译器设计、组件设计
6. 应用层
从应用领域出发建立的系统结构概念
包括的概念 企业管理、公文处理、控制系统、CAD系统…
支持该层的软件系统模型 企业管理、组态控制、过程控制、统计分析、动画制
作等
支持该层的设计工具 事务处理设计、公文处理设计、控制系统组态环境、
单个计算机系统内的连接器
有/无专用连通介质。 系统中需要建立两端的接收、发送和计算处理。
分类: 连接器两端处于同一个系统内部 并发 / 非并发部件 连接器两端处于不同系统 两端系统同时 / 非同时运行
连接器的特性
关系 1:1、1:n、n:1、m:n
角色和方向 角色:参与方的作用或地位 方向:双向 / 单向
A端接口
连接器
B端接口
A端接口
A端 接收、 发送、
计算
B端 接收、 发送、
计算
B端接口
连接器的表达形式
多端连通的连接器 1对多单向、多对1单向、 1对多互连、多对1
互连
连接器的类别
直接连接 不需要专门连接器的连接
具有物理隔离的不同计算机系统之间的连接器
有专用连通介质的连接器 系统中需要建立单端的接收、发送和计算处理。
部件分类(作用)
控制部件
负责系统运行管理
协调部件
负责部件间协作关系
连接部件
负责部件间链接作用和转换
服务提供部件 为其他部件提供特定服务功能
信息控制部件 负责安全检查和信息转接传递
构造部件
完成对象的产生和撤销
部件的实现形式
部件
无行为能力 有行为能力
简单数据 内部结构+操作行为
部件的基本实现形式就是对象
交互方式 请求信息传递的形式 信号式 / 语言式
连接器的特性
可扩展性 操作接口、功能、连接关系的动态可扩展性
互操作性 建立连接的双方,直接或间接操作对方信息的
能力。
动态连接性 连接行为的动态约束特性
连接器的特性
连接请求的响应特性 响应的顺序性、同时性、并发性
连接请求的处理策略 请求的传递、扩展、撤销。
连接器及其作用
连接器 实现部件之间联系的特殊机制或特殊部件
联系:消息和信号的传递、功能和方法的请求或调用、 数据的转换和传送…
连接部件与一般部件
一般部件:软件功能设计和实现的承载体 连接器:负责完成部件之间信息交换和行为联系的专
用部件
连接器的表达形式
部件之间的直接连接
部件A
部件B
有/无专用介质
解决方案
使B的连接支持多种实现机制和协议
A
B
使用标记语言 e.g. <XML>
为B提供信息输入/输出的转换器
A
B
连接的不匹配及其解决方法
解决方案
使用信息交换的中间形式
在部件外部建立信息交换表示 推广信息交换的通用标准
使用中介部件(连接器)
A
使用代理包装A
A
B B
连接器
连接器及其作用 连接器的表达形式 连接器的类别 连接器的特性
连接的代价,处理速度或能力 对连接器性能的评价
连接器的特性
连接器的概念等级或层次 由所处理问题的概念层次确定
共享数据的连接器 共享数据区 / 共享文件
谢谢!
体系结构的层次模型
Байду номын сангаас
软件体系结构的层次模型
层次性是软件体系结 构的不变性,是软件 构成的共同规律。
1.硬件基础层
软件运行的物质基础 处理器、存储器、时钟、中断及控制、
I/O端口、I/O通道、…
基于冯.诺依曼结构
2. 软化的硬件层
形成 以命名代理的形式对硬件的操作加以描述
处理方式
处理器 中断
层次模型中部件的概念
是在基本的部件形式上经过复合和概念提升而产生的 e.g. 数组、树; 注册表; 浏览器
部件的表达形式
具有操作接口定义的抽象数据类型描述
组成
内部数据结构及其操作 对外提供的操作方法集合
按照访问目的对操作方法进行划分,得到部件的多个操作接口 接口:Interface(Java) 接口定义:IDL(Interface Description Language)
连接的实现机制
资源及管理调度层 进程、线程、共享、同步、并行、分时
并发、事件、消息、异常、…
面向应用层次 管道、解释器、编译器、组件/中间件、
OLE、ActiveX、ODBC、…
连接的协议
协议:连接的规约,实现有意义连接的保证
广义的协议 / 层次性
过程调用 高层:参数的个数与类型、排列次序 低层:运行环境、参数的计算和压栈次序
连接的本质在于: 实现机制和信息交换协议,简称机制和协议
机制 连接得以发生和维持的机制 e.g. 参数调用方式 / 串口通讯
协议 正确进行信息交换的规则
连接的种类
按照连接的目的划分
操作/过程调用 控制/事件/消息发送 数据传输
连接的实现机制
同步 e.g. 串口的阻塞传输
异步 e.g. 网络中的异步发送
4. 资源和管理层
操作系统的协调和控制
提供基于操作系统的资源和功能服务
支持该层的软件系统模型 进程控制、分时系统、消息控制、微核系统、可视化
程序结构
支持该层的设计工具 体系结构语言、可视化程序设计
5. 系统结构模式层
体系结构风格或系统级别的设计模式
e.g. 解释器、编译器、编辑器、客户/服务器、浏览器 B/S、…
部件的特性
部件的动态特性
运行调度 运行环境资源的分配和多任务的并行执行
生存期管理 部件运行实例的产生和撤销,包括由部件负责 的其他类型部件的产生和撤销。
部件的特性
部件的概念等级或层次
连接
连接的种类 连接的实现机制 连接的协议 连接的特性 连接的不匹配及其解决方法
连接
连接
部件与部件之间建立和维持行为关联和信息传递的途 径