MDA 与实现 MDA 的 Rational 工具 RSA —— RSA“尝鲜会”归来

80酷酷网    80kuku.com

MDA 与实现 MDA 的 Rational 工具 RSA



——RSA“尝鲜会”归来



 



IT小混混



Mar.18, 2005

 



(转载请注明出处)

 



 


声明


       IBM Rational工作组和UML软件工程组织联合在上海浦东软件园举办了IBM Rational 新产品“尝鲜会”,作者见到了即将发布的实现MDD的Rational新品。现将作者所能感受到的东西介绍给大家,由于发文时,作者还没有拿到讲座的slice,任何与原讲座内容有出入的地方,与顾春华(讲座人)无关,也与UML软件工程组织和IBM RSA无关。

       任何错误或不足,请指正!

 


前言


       MDA是对象管理组织OMG力图制定的实现MDD(Model-Driven Development)的标准,各大软件领导厂商也都积极参与MDA标准化的工作。现在IBM已经实现了MDD的基于Eclipse平台的产品Rational Software Architect,并在其中集成了过程管理、版本控制、代码复审等功能。由于Eclipse架构的平台开放性以及IBM和现今Eclipse的影响,相信会有很多人会采用RSA。今天的讲座对于RSA只是介绍性,作者也没有亲身操作体验RSA,有些特性领会也不深刻,只能结合讲座内容和作者在Eclipse开发上的经验对MDA和RSA做一个简要介绍。

 


1. MDA

1.1. MDD


MDD是Model-Driven Development是首字母简写,它以模型(Model)为开发过程的主要制品(Artifact),通过Model Transformation,Model Manipulation和Model Execution实现最终产品。所有这些都是基于UML2.0的。
1.2. MDA


MDA(Model-Driven Architecture)相关spec, article可以在OMG官方网站上找到。MDA定义了几个模型以及模型的转化。

l         CIM (Computation-independent Model) 这个模型是来自于业务领域的,通过对业务领域建模产生。

l         PIM (Platform-Independent Model) 这个模型通过CIM mapping过来,经过修改PIM进行平台无关建模。

l         PSM (Platform-Specific Model) 这个模型通过PIM mapping过来,经过修改PSM进行平台相关的部分进行建模。

有了以上模型,就可以直接mapping到code,并实现模型与code的同步。根据实现的情况,可以对划分模型驱动成熟度(这部分没有记全,暂略)。
1.3. UML2.0


MDA实现的基础是基于UML 2.0的,由于有了UML2.0对模型描述的更加精确,才使得实现MDA成为了可能。

 


2. RSA


Rational Software Architect是IBM实现MDD的新一代工具,包含了IBM同时发布(上海大概会在月底展示)的几个版本中为Architect量身定做的版本。下面的介绍将不区分具体版本。

 



RSA具有以下几大特性:

l         基于Eclipse平台 由于Eclipse平台的开放性,她所实现的plug-in的extension/extension point机制,为对各个公司和厂商实现自己特定平台支持提供了强大IDE平台,况且现在Eclipse社区已经有了众多的contributors。

l         Java的全面支持 RSA支持直接从Java代码生成模型,code和model实时同步以及从代码里提取模式等信息。并且已经预置了对GOF Patterns, J2EE Patterns等等的全面支持。

l         迁移Rose & XDE 对迁移Rational Rose和XDE的支持,使得对以往用他们做的模型都可以迁移到RSA。

l         c/c++的支持 未做演示。

l         RUP集成 Rational Unified Process实现的是对开发流程的指导,RSA集成了RUP,并且建模过程中可随时调出RUP相应的指导。

l         配置管理 RSA集成了ClearCase来实现配置管理。

l         Code Review RSA实现的代码复审,可以有用户自己编辑规则,对代码进行检查,给出修改建议,实现修改帮助等。

l         MDD 在第3部分详细介绍

l         其他

 


3. 用RSA实现MDD


这部分主要讲RSA在实现MDD上的表现。

任何实现MMD的工具,都是在模型的实现和模型的mapping上。RSA主要是通过对Eclipse Wizard, View, Editor的贡献来实现的。具体到MDA上又与RUP的几个模型视图对应起来。

l         CIM -- Business Model

l         PIM1 – Use Case Model

l         PIM2 – Analysis Model

l         PSM – Design Model

每个model都有相应的profile,在创立模型的时候就对模型之间进行了映射,所以不管你在哪个模型上做了修改,其它模型也会相应地改变。

很多通用的model和profile都可以通过IBM RAS(Reusable Asset Specification)获得,你所做的RAS也可以作为自己的资产库以备今后重用(模型复用)。当然Contribute到相应的社区,也反过来能推动整个RAS的发展。

采用RSA,你所做的工作就是如果没有相应的支持,只要做了相应的支持工作(最多的工作还是PSM的实现,有了对自己各个特定平台PSM的实现,就可以用统一的上层统一的模型转化过来),就可以更加专注于业务领域的模型。

 


关于作者


       田海立,系统分析师,兴趣方向:系统分析、软件架构。

个人blog: http://blog.csdn.net/thl789,可以通过haili.tiangmail.com或tianhailinju.org.cn直接与他联系。

 




分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: