- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 动态软件体系结构 5.4 动态体系结构特征 ◇ 智能性动态特征 智能性动态特征是用一个有限的预配置集来移除约束。 与适应性体系结构特征对比,智能性体系结构特征改善了选择转变的功能,适应性特征是从一系列固定的配置中选择一个适应体系结构的配置,而智能性特征包括了动态构造候选配置的功能。 但是由于智能配置的复杂性,在实际的软件体系结构中并不是太多的系统能够用到这种方法。 返回 智能性动态特征 第5章 动态软件体系结构 本章作业与思考题 思考题 1、什么是动态软件体系结构?动态软件体系结构与静态软件体系结构有什么区别? 2、基于构件的动态软件体系结构模型的层次结构是什么? */33 软 件 体 系 结 构 第5章 动态软件体系结构 常炳国 第5章 动态软件体系结构 5.1 动态软件体系结构概述 ◇ 问题提出 ◎ 软件体系结构研究主要集中在静态体系结构上,这种体系结构要求在运行时不能发生改变。 ◎ 但是如金融、航空航天、交通、通信等系统需要长期运行并具有特殊使命,如果由于需求或环境发生变化需要停止运行进行更新或维护,其费用、风险、安全性等方面带来的可能发生的问题所造成的影响无法想象。 ◎ 静态体系结构缺乏表示动态更新的机制,很难用它来分析描述这样的系统。动态软件体系结构研究软件系统由于特殊需要必须在连续运转情况下的体系结构变化和支撑平台。 第5章 动态软件体系结构 5.1 动态软件体系结构概述 ◇ 研究基础 ◎ 历经传统的结构化开发方法和面向对象开发方法,基于软件体系结构、构件的开发方法已经逐渐成为当前软件开发的主流,软件开发的基本单位已从传统的代码行、对象类型变为多种粒度的构件、构件之间的拓扑结构所形成软件体系结构。 ◎ 这种转变给软件开发带来更多的灵活性,可以通过构件重用和替换来实现,即实现构件的‘即插即用’。这种灵活性的一方面就是动态性。 ◎ 在软件体系结构层次上实现动态性会给大型软件系统的开发提供可扩展性,用户自定义和演化性。而这种特性正是那些需要长期运行或具有特殊使命的系统所需要的。 第5章 动态软件体系结构 5.1 动态软件体系结构概述 ◇ 基本概念 ◎ 由于系统需求、技术、环境、分布等因素的变化而最终导致软件体系结构的变动,称之为软件体系结构演化。 ◎ 软件系统在运行时刻的体系结构变动称为体系结构的动态性。 ◎ 体系结构的静态修改称为体系结构扩展。 ◎ 体系结构的扩展和动态性都是体系结构适应性和演化性的研究范畴。 第5章 动态软件体系结构 5.1 动态软件体系结构概述 ◇ 软件体系结构动态性 ◎ 交互式动态性 ◎ 结构化动态性 ◎ 体系结构动态性 第5章 动态软件体系结构 5.1 动态软件体系结构概述 ◇ 动态软件体系结构 ◎ 允许在系统运行时发生更新的软件体系结构称为动态软件体系结构,这种结构在系统被创建后可以被动态地更新。 ◎ 系统结构的动态改变将会影响正在运行的系统的内部计算,会使得运行系统的动态更新变得很复杂和难以很好地解决。 ◎ 目前动态软件体系结构的研究主要分为两方面: 模拟和描述体系结构动态更新 体系结构动态更新的执行 下一主题 第5章 动态软件体系结构 ◇ 动态体系结构的研究 ◎ 模拟和描述体系结构动态更新 ADL提供了一种形式化机制来描述软件体系结构,主要通过提供语法和语义描述来模拟构件、连接件和配置。 近年的研究主要集中在对现有的一些ADL扩展以支持体系结构的动态性。 现已研究出一些支持动态体系结构的ADL. 5.1 动态软件体系结构概述 返回 第5章 动态软件体系结构 ◇ 动态体系结构的研究 ◎ 体系结构动态更新的执行 目前支持动态体系结构机制的主要有ArchStudio工具集和软件体系结构助理(Software Architecture Assistant,SAA)。 ArchStudio工具集由加州大学Irwine分校提出,支持交互式图形化描述和C2风格描述的体系结构的动态修改。 SAA由伦敦皇家学院提出,也是一种交互式图形工具,可以用来描述、分析和建立动态体系结构。 5.1 动态软件体系结构概述 第5章 动态软件体系结构 ◇ 动态体系结构的研究 ◎ 体系结构动态更新的执行 下图为 ArchStudio概念模型,运行系统的改变通过一系列工具反映到体系结构模型上,例如脚本语言的改变和交互式的图形设计环境。 体系结构的改变包括增加删除或更新构件、连接件,以及系统拓扑结构发生改变。 5.1 动态软件体系结构概述 返回 第5章 动态软件体系结构 5.2 软件体系结构动态模型 ◇ 基于构件的动态系统结构模型 (1) 模型简介 模型分为3层,分别是应用层、中间层和体系结构层。 应用层处于最底层,包括构件连接、构件接口和执行。 构件连接定义了连接件如何与构件
文档评论(0)