PowerDesigner 在MDA 领域应用.docVIP

  1. 1、本文档共17页,可阅读全部内容。
  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文档。上传文档
查看更多
PowerDesigner 在MDA 领域的应用 作者: 汪晟杰,PowerDesigner研发组,Sybase, Inc. 引言 MDA提出已经有5,6年的历史了,它的出现正不断地改变着软件工程领域的现状和编程习惯,同时,业务模型、领域模型的不断变更以及新框架的出现,也使得MDA得以大展身手。本文将通过Sybase PowerDesigner工具带领大家认识、了解MDA,并且使您更容易地实现软件系统的集成与开发。 1. 一个经典案例引发的问题 在MDA前,我们想象一种场景:项目经理定制项目计划以及各个里程碑,然后然后交付给软件架构师对其不同模块进行UML建模,然后打印并分发给开发人员,根据模型的要求完成代码开发和测试。很不幸的是,该项目是一个遗留的系统,而且是面向过程的,甚至部分语法都是定制的,头疼的是客户要求你把这个系统转换为面向对象的java语言。 这是一种比较传统的软件管理方法。然而这样的弊端是: 1)一切都不是那么同步,例如,代码发生的变化,模型势必要进行修改,反之亦然,当然也包括文档的同步等等,采用前者的管理方法,往往会使得项目进度拖延甚至失败。 2)模型描述的不够详细,以至于开发人员不完全按照架构师的设计方案开发。 3)代码重复过多,成本消耗过大。 4) 进度不容易控制,模型无法有效管理等等。 5)没有一种有效的方法来检测架构师的设计正确性。 6)不同模型以及语言转换复杂。 MDA正是为了解决这些问题提出的一种新的开发方法。 2.MDA的基本概念 MDA是一种基于模型驱动架构技术的开发方法,它是一种方法学,基于它,我们能实现如下功能: ? 能方便地在模型或者元模型上定义应用需求、逻辑结构以及行为方式,甚至修改元模型结构以适应实际需求。 ? 增强了模型的语义逻辑。 ? 能快速生成应用程序原型代码,使得用户可以验证或者为开发者生成API。 ? 迭代式的设计、生成、开发和测试。 当然,PowerDesigner就是这样一款集UML、数据模型、业务模型等于一体的企业建模工具。 MDA的主要标准包括MOF,UML(OCL),XMI和CWM四大核心。需要指出的是,MDA正处于发展阶段,现在有三大阵营,即UML PIM阵营、MOF阵营以及可执行的UML阵营。所谓UML PIM,即使用UML来建立PIM,然后利用模型转换来生成PSM,最后用PSM生成代码。目前该阵营的人居多,因为大家了解最多的还是UML,兼容性以及推广程度都较其他阵营更好。PowerDesigner也是该阵营的拥护者。 MDA要致力解决以下问题: 1) 实现与平台无关的特性,设计人员只需关注模型即可。 2) 不同模型之间的无缝转换,例如:OO模型与数据库模型的无缝转换,同时能方便的定制转换规则。 3) 模型的事先检测,这样就可以有效分析出架构的正确与否。 4)能自定义与平台相关的语言模型和扩展模型。 3.用PowerDesigner来实现MDA 对于MDA方法学,PowerDesigner12.0 已经支持了如下的功能: 3.1 模型定义 PD支持企业建模,用户可以在现有模型中定制应用需求、逻辑、结构和行为。如案例中,我们可以用需求模型和业务模型来完成需求分析;使用业务模型完成应用逻辑和诸如复杂过程(SOA);使用UML来完成应用结构和行为;使用数据模型来完成对象的持久化;使用知识库来管理模型,等等。 3.2元模型定义 所谓元模型,即是模型的模型。用户用UML的方式定义自己的元模型。在PD中,所有的模型都基于PD的元模型,例如:类的元模型,从Error! Reference source not found.可以看出,类元模型继承于Classifier,同样接口元模型也继承于它,每个类有多个属性和关联。基于这样的元模型语义来完整的描述了UML的特性。(用户可以访问PD安装目录\Examples\MetaModel.oom来获取元模型) 同时,基于PD的元模型,用户可以根据需求编写自定义的扩展模型,甚至是语言模型。例如,你的公司里有自己的框架、甚至有自己的脚本或者业务流程,现有的UML图并不能生成你想要的代码文件,这时,采用PD的元模型来设计自己的模型是再合适不过的了,本文后面将会详细阐述。 3.3全面支持MDA开发过程 在设计过程中,用户可以先设计与平台无关的模型Platform Independent Models (PIM),然后基于PD的模型转换功能,转换成Platform Specific Models (PSM)。当需要生成代码或者预览代码时,模型会根据定义在语言模型或者扩展模型上的模版和流程来生成代码。用户也可以在模型上直接修改代码,那么模型也会随之同步更新,同样也能修改语言模型或者扩展模型以适应

文档评论(0)

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

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

1亿VIP精品文档

相关文档