软件构架动态行为建模与检测方法.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件构架动态行为建模与检测方法 1 基于线性时序逻辑的软件构架动态行为分析 软件框架是系统的总体组织结构和控制结构的描述,包括系统中每个计算单元(组件)的功能分配、每个单元之间的高层交互语言(控制器)的解释,以及软件框架的限制。目前,对软件框架的研究主要集中在软件框架的描述语言上(adl)。 ADL只关心软件系统的高层结构,不关心具体的软件实现细节,是对软件构架的形式化描述.研究人员基于不同形式化建模技术已开发了多种ADL. 例如,Allen采用CSP开发了Wright, Kramer等人基于π-演算设计实现了Darwin,中科院软件所采用时序逻辑设计了XYZ?ADL等.这些ADL针对软件构架的不同风格引入特定符号和公理描述软件构架的静态结构和构件交互,它们具有规范的语法和严格的语义,为软件构架实践提供了指导.但是大型分布式软件系统包含大量并发运行的构件,构件之间存在复杂的相互通信与制约关系,已有ADL在描述软件构架动态行为时表达不直观,缺少可视化、自动化的软件构架动态行为分析验证工具,使得设计人员难以在系统设计的早期阶段分析、测试系统的正确性、适应性. 谓词?变迁网(predicate transition nets,Pr?T网)作为一种高级Petri网,能简洁地描述系统的动态特性.它不但提供可视的图形表示,还具有强大完整的数学基础和分析方法,被广泛地应用在具有并发、并行、异步和随机性质的系统建模与分析中.因此,本文提出了基于Pr?T网的软件构架动态行为建模方法.为了确保软件构架动态行为模型(behavior model of software architecture,BM)可靠、符合实际,本文提出了基于线性时序逻辑(linear temporal logic,LTL)的BM模型检测方法.该方法首先用LTL公式定义软件构架动态行为规约;再将LTL公式转化成等价的Büchi自动机;最后,通过构造BM模型的可达图和Büchi自动机的同步积来分析、检测BM模型的正确性. 2 基于adl的平台研发 软件构架是一种基于构件的思想,它从系统的总体结构入手,将系统分解为构件和构件之间的交互关系.在实际开发过程中,研究人员针对不同应用领域开发了多种ADL,Medvidovic和Taylor通过分析、比较这些ADL,认为一个软件构架包括构件、连接器、体系结构配置. 2.1 模型结构及性质 大型软件系统通常包括大量构件,其中的复杂成员构件可由简单的低层构件集成而成.因此,若将软件系统本身作为一个构件,则可得到软件构架的层次模型(hierarchical architectural mode,HAM).借鉴CBSD和中间件技术有关构件和接口定义,HAM可定义如下: HAM∷=〈构件规约,连接器规约,体系结构配置规约〉 构件规约∷=〈构件结构规约,构件接口规约〉 构件结构规约∷=〈原子构件结构〉|〈复合构件结构〉 原子构件结构∷=〈构件标识,构件实现的引用〉 复合构件结构∷=〈引用的构件类型,实例声明,实例连接,映射〉 构件接口规约∷=〈所属构件的标识,端口规约,服务集合〉 服务集合∷=〈对外提供的功能集合,对外请求的功能集合〉 端口规约∷=〈所属构件标识,行为规约,行为模型〉 连接器规约∷=〈连接器标识,连接器约束〉 体系结构配置规约∷=〈实例声明,实例连接,实例连接约束〉 HAM模型具有以下性质: (1) 一个软件系统由构件和连接器组成,体系结构配置规约定义了构件通过连接器实现与外部环境交互的约束条件. (2) 构件规约包括接口部分和结构部分,接口的服务集合定义了构件对外提供(或需求)的功能和服务.端口规约定义了构件的动态行为特征,即构件与外部环境的交互信息. (3) 原子构件的结构部分定义了对构件实现的引用.复合构件的结构部分定义了成员构件之间的连接关系,具体包括引用的成员构件的类型、成员构件实例、实例之间的连接关系以及复合构件接口规约向成员构件接口规约的映射. (4) HAM支持对软件构架进行纵向、横向的分解,即纵向看一个HAM模型包含许多层,每一层是对上层复合构件的细化,因此,HAM支持软件构架自顶向下和自底向上的设计方法;横向看HAM模型每层由多个构件和连接器构成,构件只能通过端口与外部环境进行交互. 在HAM模型中,构件的状态及其行为被构件接口所封装,连接器将存在交互关系的两构件端口连接起来,并通过连接器约束定义交互的约束条件.基于HAM模型,我们开发了基于构件的分布式软件构架描述语言(DSADL). 2.2 般库所的类型 HAM模型引入端口概念,实现了构件的计算功能与交互功能分离,为构架动态行为建模、分析提供了基础.设计人员对软件构架动态行为建模时,只需考虑构件端口和连接器的交互行为,而不用考虑构件的功能及算法实现.由于Pr?T

文档评论(0)

lczslgy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档