五、动态软件体系结构 | 您所在的位置:网站首页 › 静态方法的描述有哪些方面的特点和作用 › 五、动态软件体系结构 |
一、动态软件体系结构概述
软件体系结构动态性: 软件体系结构(Software Architecture,简称: SA)是对软件系统整体组织结构和控制结构的刻画,包括系统中各计算单元(构件)的功能分配、各单元之间的高层交互说明(连接件)以及SA的约束。当前,SA研究主要集中在静态体系结构上,这种体系结构在运行时不能发生改变。而对于一些需要长期运行且具有特殊使命的系统(如航空航天、生命维持、金融、交通等),如果系统需求或环境发生了变化,此时停止系统运行进行更新或维护,将会产生高额的费用和巨大的风险,对系统的安全性也会产生很大的影响。静态体系结构缺乏表示动态更新的机制,很难用其分析、描述这样的系统,更不能用它来指导系统进行动态演化。因此,动态软件体系结构(Dynamic Software Architecture, 简称: DSA)的研究应运而生。允许在系统运行时发生更新的软件体系结构称为动态软件体系结构,动态体系结构在系统创建后可以动态更新。其动态性主要分为三类:交互式,动态性,结构化动态性和体系结构动态性。 软件体系结构动态性分三类: 交互式动态性 结构化动态性 体系结构动态性 动态体系结构的研究分两个方面: 模拟和描述体系结构动态更新 ADL提供了一种形式化机制来描述软件体系结构,主要通过提供语法和语义描述来模拟构件、连接件和配置。近年的研究主要集中在对现有的一些ADL扩 展以支持体系结构的动态性。现已研究出一-些支持动态体系结构的ADL. 体系结构动态更新的执行目前支持动态体系结构机制的主要有Ar chStudio工具集和软件体系结构助理( Software Arch itectureAss istant, SAA) ArchStudio.具集由加州大学Irwine分校提出,支持交互式图形化描述和C2风格描述的体系结构的动态修改。SAA由伦敦皇家学院提出,也是一种交互式图形工具,可以用来描述、分析和建立动态体系结构。下图为ArchStud io概念模型,运行系统的改变通过一系列工具反映到体系结构模型上,例如脚本语言的改变和交互式的图形设计环境。体系结构的改变包括增加删除或更新构件、连接件,以及系统拓扑结构发生改变。 基于构件的动态系统结构模型: 动态体系结构描述语言: 1.Dynamic Wright Wright的一个扩展,试图模拟、标记和解决软件系统的动态性增加描述描述体系结构动态变化的新符号,配置Configuror©: . 何时应该重新配置? 什么原因需要重新配置? 重新配置如何进行?静态描述: ![]() 动态软件体系结构的形式化描述: 图形化方法 进程代数方法 逻辑化描述方法 1、可构造性动态特征 可构造性动态特征迪常可以迪过结合动态描述语言、动态修改语言和一个动态更新系统来实 现。(近年来,已经开发出了很多动态体系结构描述语言,如Darwin、 Dynamic ACMED、Dynamic Wright、Rapide等 ) 动态描述语言用于描述应用系统软件体系结构的初始配置:当体系结构发生改变的时候,这种改变可以通过动态修改语言进行描述,该语言支持增加或删除、激活或取消体系结构元素和系统遗留元素:而动态更新可以通过体系结构框架或者中间件实现。 2、适应性动态特征 某些应用程序必须有立即反映当前事件的能力,此时程序不能进行等待,必须把初始化、选择和执行整合到体系结构框架或中间件里面。 适应性动态特征是基于一系列预定义配置而且所有事件在开发期间已经进行了评估。执行期间,动态改变是通过一-些预定义的事件集触发,体系结构选择-一个可选的配置来执行系统的重配置。 3、智能性动态特征 智能性动态特征是用一个有限的预配置集来移除约束。 |
CopyRight 2018-2019 实验室设备网 版权所有 |