MDA 与 Rational 基于 Eclipse3 的新一代建模工具 —— RSA“尝鲜会”归来

MDARational 基于 Eclipse3 的新一代建模工具

——RSA“尝鲜会”归来

 

IT小混混

Mar.18, 2005

 

(转载请注明出处)

 

 

声明

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

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

 

前言

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

 

1. MDA

1.1. MDD

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

1.2. MDA

MDAModel-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进行平台相关的部分进行建模。

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

1.3. UML2.0

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

 

2. RSA

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

 

RSA具有以下几大特性

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

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

l         迁移Rose & XDE 对迁移Rational RoseXDE的支持,使得对以往用他们做的模型都可以迁移到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,在创立模型的时候就对模型之间进行了映射,所以不管你在哪个模型上做了修改,其它模型也会相应地改变。

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

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

 

关于作者

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

个人blog: http://blog.csdn.net/thl789,可以通过[email protected][email protected]直接与他联系。

 

你可能感兴趣的:(eclipse,IBM,工具,UML,平台,transformation)