动态软件体系结构的描述

动态软件体系结构的描述

ID:21212418

大小:154.00 KB

页数:8页

时间:2018-10-20

动态软件体系结构的描述_第1页
动态软件体系结构的描述_第2页
动态软件体系结构的描述_第3页
动态软件体系结构的描述_第4页
动态软件体系结构的描述_第5页
资源描述:

《动态软件体系结构的描述》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程题目:动态软件体系结构的描述1.动态软件体系结构概述软件体系结构(SoftwareArchitecture,简称:SA)是对软件系统整体组织结构和控制结构的刻画,包括系统中各计算单元(构件)的功能分配、各单元之间的高层交互说明(连接件)以及SA的约束。当前,SA研究主要集中在静态体系结构上,这种体系结构在运行时不能发生改变。而对于一些需要长期运行且具有特殊使命的系统(如航空航天、生命维持、金融、交通等),如果系统需求或环境发生了变化,此时停止系统运行进行更新或维护,将会产生高额的费用和巨大的风险,对系统的安全性也会产生很大的

2、影响。静态体系结构缺乏表示动态更新的机制,很难用其分析、描述这样的系统,更不能用它来指导系统进行动态演化。因此,动态软件体系结构(DynamicSoftwareArchitecture,简称:DSA)的研宄应运而生。允许在系统运行时发生更新的软件体系结构称为动态软件体系结构,动态体系结构在系统创建后可以动态更新。其动态性主要分为三类:交互式动态性,结构化动态性和体系结构动态性。目前,DSA的研究主要集中在以下几个方面,一是体系结构的动态演化,二是研究模拟和描述体系结构动态更新语言,三是研究支持体系结构动态更新的执行工具。对于DS

3、A动态演化的研宂主要围绕动态演化的需求来源、动态演化时期、动态演化类型、动态演化方法等方面;模拟和描述动态体系结构的研究主要集屮在对现有的一些ADL扩展以支持体系结构的动态性;动态演化执行工具奋加州大学Irwine分校提出的ArchStudio工爲集,伦敦皇家学院提出的SAA(SoftwareArchitectureAssistant),北京大学提出的PKUAS等。当前主流的体系结构模型CORBA、COM/DCOM、EJB等,都不支持体系结构的动态更新。同时,由于动态体系结构本身的复杂性,又缺乏通用的结构模型和有效的形式化描述机

4、制及分析工具,使得学术界对DSA的研究还不成熟,实际应用较少,因而解决软件的演化问题将成为DSA应用研究领域的一个重要方向。其次,对于与DSA研究相关概念的统一、通用性支持工具、动态演化完整性、一致性、追溯性等问题都有待进一步深入。此外,随着DSA研宂的深入,基于DSA的一些新兴软件体系结构的研究,如自适应软件体系结构、正交软件体系结构、自省动态软件体系结构、网格动态体系结构等,将会成为DSA研究的发展方向。2.动态体系结构的描述与静态体系结构的描述一样,动态体系结构的描述既可以使用描述语言,也可以使用形式化的描述;既可以使用U

5、ML建模机制,也可以使用XML建模机制。2.1DSA的描述语言软件体系结构描述语言(ArchitectureDescriptionLanguage,简称:ADL)是SA领域的一个重要研宄成果,ADL从较高抽象层次上描述构件接口的语法和语义、系统中的构件和连接子以及它们之间的交互关系、构件的非功能属性以及构件间协议,从而建立系统的体系结构模型。但是大多数ADL只描述系统的静态结构,不支持对体系结构动态性的描述。UML作为体系结构建模工具,它不是一种体系结构的描述语言,而是一种设计语言。因此开发动态软件ADL是很有必要的。近年来,已

6、经开发出了很多动态体系结构描述语言,如Darwin、DynamicACMED、DynamicWright、Rapide等。(1)DynamicWrightDynamicWright是体系结构描述语言Wright的一个扩展,DynamicWright的主要B的是试图模拟或标记已解决软件系统的动态性。采用DynamicWright具有较多的良好特性,其中之一就是能够很容易地描述软件的动态环境。在客户-服务器的体系结构中,如果设计师想要对客户(Client)的每一步工作所依赖的服务器(Server)进行说明,比如Client最初是依赖

7、于Server1的,当丑仅当Serverl出现问题时,Client将与Server2进行交互。因此,设计师必须用一个符号来表示每-个接触点L。图2-1是上述问题的静态描述,它闷2-1静态描述并不能清楚的反映出设计师对体系结构的动态依赖关系,这样有可能导致设计师把一些关键的方面遗漏,它还需要一些额外的文本对体系结构的行为进行说明。如果采用DynamicWright来描述客户-服务器的体系结构,就用一个动态变化的新符号,即配置“configuror(C)”。通过增加一个configuror到Wright的标记中,设计师就能很好的阐述

8、控制行为,使得设计师能更好地描述系统体系结构。"Configuror"主要涉及这些问题:什么时候软件体系结构应该重新配置?什么原因使得软件体系结构需要进行重新配置?重新配置应该怎样进行?图2-2是上述问题的动态描述,通过引入虚线和配置C来动态描述该系统的动态特征

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。