第二篇 章 可执行的模型驱动体系结构 研究生课程-MDA.pptVIP

第二篇 章 可执行的模型驱动体系结构 研究生课程-MDA.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二篇 章 可执行的模型驱动体系结构 研究生课程-MDA.ppt

可执行的模型驱动体系结构 赵建华 南京大学计算机系 MDA术语-模型 在MDA中,模型是我们所构建的系统的功能、行为和结构的形式化表示。 形式化 用于描述模型的语言必须有良定义(well-defined)的语法和语义 全面描述MDA开发中完整且严格的模型 我们通常所说的模型并不一定是模型,或者是不完整的模型 伪代码,结构图。 顺序图 MDA术语-平台 指与软件的基本功能无关的技术和工程细节。 括CORBA,J2EE,C,.NET,和实时操作系统(RTOS)等等 很重要,但是和我们想建立的用来详述系统的过程之间的关系并不密切。 MDA术语-PIM PIM模型获取和表达了我们正在建立的系统的所有业务需求。 中立于任何实现(平台)。 在本书中,PIM被表示为精确的可执行UML(xUML)模型。 每个PIM描述系统的一个方面(视点,或者域)。 把域组合起来就得到完全的描述。 MDA术语-PSM PSM包含了所有在PIM中表示的功能,并且还添加了针对实现平台的设计考量。 通常由PIM经过转换得到。 从PIM到PSM的映射本身也被表示为一个UML模型。 两种主要的方法表示: 用UML表示的设计模型, 和用某一种语言(比如CORBA或者C++)描述的具体实现。 (PSI) 精确、完全的分析模型 分析与设计之间的区别? 高层系统规约 = 不精确的系统规约? 与实现无关 = 与细节无关? =与所有困难部分无关? 正确解答 一个PIM包含了所有属于正被考虑的主题事务的信息——包括困难的细节部分的信息 如果一个PIM精确完全地描述了信息,那么精确执行此模型是可能的。因此可能对此模型进行测试。 按域进行的划分方法 一个好的域模型封装了一个主题事务,这个主题事务可以是面向问题的,也可以是面向解决方案的。 设计只是分析的另一个主题事务,但是通常会比较复杂。 每个域记录了关于单个主题事务的有价值的知识资产 。 MDA允许我们将这些域放在一起,而不要求这些域显式地知道其它域的有关知识。 无歧义的标准符号 UML是一种被广泛采用的用以表示面向对象系统的标准符号体系 ,它还不足以进行完全建模。 OMG在UML规范中加入了动作语义,从而增强了UML。 UML的图式中,有些本身就是非形式化的,因此不予考虑。 状态图描述一个对象的运行过程。如果对状态图中的动作加以精确定义,就可以精确描述对象的所有行为。 本书中选择使用UML状态机表示法的一个子集 ,允许使用状态入口动作,避免使用层次和并发状态。 传统过程的缺点 传统的过程 需求,分析,设计,实现。 在设计实现过程中,把实现细节和问题的细节逐步糅合在一起,最后的模型无法再区分这两者的差异。 缺点: 可复用的,但是可惜已经过时了的分析模型 最新的、不可复用的代码单元 特有的、维护费用昂贵的代码 基于转换的过程的优点 不再把每个组件的实现进行独设计。而是对转换方法进行分析,并实现。 MDA将分析看作是理解所有主题事务(包括设计)的过程。理解的结果在xUML模型中形式化地表示出来。 获取专门技术,用不被其它主题事务污染的形式记录该技术,并使之对其它主题可用,这样的过程是MDA方法的精髓。 使用MDA方法时,开发者的注意力始终牢牢地保持在模型上。 大规模复用 以域为单位的复用 一个域表示了一个主题事务。它封装了一个主题事务或者系统的一个方面。 假设在一个航空系统中,。一个AIRCRAFT类知道如何把自己表示成图标和如何根据要求显示弹出菜单。 混合了不相关的主题事务! 在航空交通控制域中,如果没有ICON类,设计一个AIRCRAFT类有意义吗?有! 处理方法 另外设计图形显示域的PIM,然后把交通控制域中的类和图形显示域中的类对应起来。 模型映射 MDA提供了从PIM自动转换得到PSM的可能性。 平台专家构造从PIM元素到PSM中的元素的映射方法。 建模者在PIM中使用标记或者其它方式来标记PIM元素,制定和裁减转换方式。 PIM和映射方法都是可用的。也可以为当前的PIM设计新的转换方式。 MDA过程总述 图2-14 MDA过程和工作产品 详述域 详述系统的构建过程 构建平台无关模型 生成系统 验证PIM 详述域 识别新的/被复用的域 各个知识主题(即域)之间具有独立性,不受其它方面的影响。 域之间也可以有依赖关系。 对系统用例建模 定义一个用例集合,从系统用户的观点表示系统必须提供的功能。 用域层次上的顺序图描述各个域的角色。 详述域之间的契约 使用契约的方式定义提供或者需要的服务。 集成PIM PIM和PIM之间的连接通过桥的方式建立。 指明副本类关系, 指明一个域的所需服务是如何用另一个域的可用服务实现的。 桥包含了相邻两个域的知识,因此难以服用。 但是体积较小,开发代价较小。

文档评论(0)

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

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

1亿VIP精品文档

相关文档