Eclipse EMT Papyrus建模和MoDisco反向工程

来源:互联网 发布:最贵的红酒品牌知乎 编辑:程序博客网 时间:2024/05/29 19:31

我之前很少写博客,鉴于Eclipse EMT 建模中文资料比较少,很多同学想用它,确无从下手,写个博客做个简单的指引。之前做建模一直都是用的PowerDesigner,但这个毕竟是商业版的,一直想从开源免费领域找到其的替代品。

经过各方分析,基本选定ArgoUml和Eclipse Modeling。

ArgoUml非常简单,基本能满足日常的需求,包括建模和反向工程,不想折腾的同学用它就够了。但是它已经很久没有更新了,对UML2.0没有很好的支持(个人知识有限,可能不是很准确),所以还是想研究下Eclipse Modeling。ArgoUml官网:http://argouml.stage.tigris.org/

这篇文章是基于Eclipse 4.3.2-kepler的Eclipse Modeling Tools下载包(一个预装了Modeling相关基本插件的一个包),下载:http://www.eclipse.org/downloads/packages/eclipse-modeling-tools/keplersr2,用Papyrus来做建模,用MoDisco来做反向工程。

一、Papyrus建模

1、安装Papyrus插件

单击Install Modeling Components ,在弹出窗口中勾选Papyrus ,并下载更新。

2、创建Papyrus工程

File - New - Papyrus - Papyrus Project 

Open Perspective : Papyrus ,在Model Explorer视图里会看到一个model,在其右键就可以创建各个Diagram了

3、UML To Java

Papyrus是支持UML生成Java或者C++代码的,在model右键菜单里有生成的选项。不过它这里需要QVT的支持,如果没有安装QVT插件的话,会报“No classes or packages produced from the transformation. Nothing is generated.”错。

安装QVT:同样单击Install Modeling Components,勾选“Operational QVT”下载安装,安装成功后再生产代码就OK了


二、MoDisco反向工程

1、安装MoDisco插件,安装方法同上。

2、创建一个Java 工程,并创建好测试用的包和相关类

3、在根目录创建uml文件夹

4、工程名“右键” Discovery - Discoverers - Discover KDM Code Model From Java Project...

弹出框中设置SERIALIZE_TARGET为true,完成,在根目录会生成一个my-project_kdm.xmi,将其移入uml文件夹中。

5、在uml文件夹中创建Papyrus Model并命名和Java工程名一样,这里是my-project.di

6、选中my-project_kdm.xmi “右键”,Discovery - Discoverers - Discover UML model from KDM model...

弹出框中设置SERIALIZE_TARGET为true,完成,跟目录会生成一个文件my-project.uml,将其移入uml文件夹,提示是否替换,yes。

7、切入Papyrus 远景图,在Model Explorer中看到root model,右键 - New Diagram - Create a new Class Diagram


将要建模的对象拖入Diagram中(这里有点不是很方便,要一个个对象的拖入,包括方法、属性、关系等,不拖就不显示),就可以看到完整的模型了。


简单的指引就到这了,剩下更复杂的使用大家就自己慢慢研究吧,如Acceleo的使用等,希望对有需要的人有所帮助。

0 0
原创粉丝点击