Chap05.2_动态软件体系结构_动态模型(精)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分为三层:应用层、中间层和体系结 构层,见图5-2。
2018/9/14
wangzhiming@tsinghua.org.cn
2
§5.2.1 基于构件的动态系统结构 模型(续)
体系结 构层 体系结构配置 体系结构描述 执行
构件 构件配置 中间层 构件描述 执行 应用层 构件接口 执行
连接件 连接件 配置 构件连接
本层可添加、删除、更新构件。
2018/9/14
wangzhiming@tsinghua.org.cn
4
§5.2.1 基于构件的动态系统结构 模型(续)
中间层:包括连接件配置、构件配置、构件 描述和执行。
连接件配置管理连接件及其接口的通信配置; 构件配置管理构件行为;构件描述对构件的内 部结构、行为、功能和版本等信息加以描述;
wangzhiming@tsinghua.org.cn
11
2018/9/14
§5.2.2 πADL动态体系结构(续)
1、πADL体系结构描述框架定义
借鉴ACME、Wright体系结构描述框架, 提供专门的标记符号,围绕构件、连接件、 系统配置、风格等实体进行体系结构建模; 既能描述单个系统,又能描述一类系统的 体系结构风格,支持层次配置、动态体系 结构和体系结构演化。
构件 构件配置 构件描述 执行 构件接口 执行
3
2018/9/14
图5.2 CBDSAM wangzhiming@tsinghua.org.cn
§5.2.1 基于构件的动态系统结构 模型(续)
应用层:最底层,包括构件连接、构件接口 和执行。
构件连接定义连接件如何与构件相连接;构 件接口说明构件提供的服务;
第五章 动态软件体系结构
5.1 动态软件体系结构概述 5.2 软件体系结构动态模型 5.3 动态体系结构的描述 5.4 动态体系结构特征 5.5 化学抽象机
2018/9/14
wangzhiming@tsinghua.org.cn
1
§5.2 软件体系结构动态模型
§5.2.1 基于构件的动态系统结构模型 一、模型简介 CBDSAM: Component Based Dynamic System Architecture Model;
2018/9/14
wangzhiming@tsinghua.org.cn
8
§5.2.1 基于构件的动态系统结构模 型(续)
四、实例分析
局部更新:
构件A 构件配置 接口
3. 执行 更新
1.请求 更新 5.成功 更 新 返回 发起者
2.准备 4.重新 连接
连接件B
构件C 构件配置
连接配置 接口 构件连接 执行
wangzhiming@tsinghua.org.cn
13
2018/9/14
§5.2.2 πADL动态体系结构(续)
2、πADL体系结构建模方法(续) 具体方法:
本层可添加版本控制机制和不同的构件装载方 法。
2018/9/14
wangzhiming@tsinghua.org.cn
5
§5.2.1 基于构件的动态系统结构 模型(续)
体系结构层:最上层,控制和管理整个体系 结构,包括体系结构配置、描述和执行。
SA描述主要描述构件及相联系连接件的数据; SA配置控制整个分布式系统的执行,并管理配 置层,SA执行对体系结构层的行为进行描述; 更改和扩展更新机制,更改系统的拓扑结构, 以及更新构件到处理元素之间的映射。
9
执行
2018/9/14
wangzhiming@tsinghua.org.cn
全局更新:
体系结构 配置器 Client 配置器 连接件 Server构件 执行
Server构件 配置器 请求更新
提交更新请求 判 断 通知有更新请求 通知有更新请求 返回准备 就绪信息 返回准备 就绪信息 通知一切就绪 准备执行更新 通知更新执行完毕并返回结果 通知更新 结束 通知更新结束 返回相应信息 通知更新结束 通知更新结束
2018/9/14
wangzhiming@tsinghua.org.cn
12
§5.2.2 πADL动态体系结构(续)
2、πADL体系结构建模方法 基本思想:
在构件的计算、连接件的胶水进程中,插入用 于体系结构动态演化的特定控制名字,表达体 系结构动态演化的起因和安全地进行动态演化 的时间; 运用π演算作为统一的形式语义基础,建立单 独的动态配置进程,形式化描述体系结构动态 演化方案; 运用π演算固有的动态建模能力,通过连接件 动态输入不同构件的交互行为名字,实现与构 件的动态连接和交互,并据此给出体系结构动 态配置的形式语义。
2018/9/14
wangzhiming@tsinghua.org.cn
7
§5.2.1 基于构件的动态系统结构 模型(续)
三、更新执行步骤
检测更新的范围:局部、全局; 更新准备工作:应用层需要等待参与进程发 出可安全更新信号;配置层需要等待连接件 其他构件已完成更新; 执行更新:告知发起者更新的结果; 存储更新:将所作的更新存储到构件或体系 结构描述中。
2018/9/14
返回准备 就绪信息 执行 更新
wangzhiming@tsinghua.org.cn
10
§5.2.2 πADL动态体系结构
Π演算
R. Milner于70年代提出的通信系统演算 CCS (The Calculus of Communication Systems);(1991年图灵奖) 为描述通信拓扑结构动态变化的系统,与 D. Walker, J. Parrow在80年代末提出π演 算; 可描述通信拓扑结构动态变化的分布通信 系统,允许进程之间传送和接收通道名, 并且可以引入和输出局部名,具有很强的 表达能力。
2018/9/14
wangzhiming@tsinghua.org.cn
6
§5.2.1 基于构件的动态系统结构 模型(续)
二、更新请求描述
Biblioteka Baidu
更新类型:添加、删除和修改构件; 更新对象列表:需要更新对象类的ID号; 对象的新版本说明:对象的新版本执行情况; 对象更新方法:更替、动态和静态; 更新函数:用来更新一个执行对象进程的状态 转换函数; 更新限制:描述更新及它们之间的关系。