目录

1.安装&破解Rational Rose 2003

1.1 安装Rose 2003

1.2 破解Rose 2003

1.3运行出错“没有找到suite objects.dl”

2. Rational Rose 2003 逆向工程生成UML模型图

2.1 ANSI C++(标准C++)逆向工程(Reverse Engineer)

2.2 Visual C++逆向工程(Reverse Engineer)

1.安装&破解Rational Rose 2003

1.1 安装Rose 2003

(1)在网上下载Rational Rose Enterprise Edition 2003

(2)网上下载Rose 2003的破解包rose2003crack

(3)安装Rational Rose Enterprise Edition 2003

点击exe安装包,按照向导一步一步走。

Product Selection:选择Rational Rose Enterprise Edition

Deployment Method: 选择Desktop installation from CD image

安装过程中,若系统跳出警告框 “SmartHeap Library”—MEM_BAD_POINTER, 点击 ”确定”跳过。

安装完成后,跳出 ”License Key Administrator Wizard ” 对话框,选择右下方的 ” Don’t show this wizard on startup again, I’ll use the toolbar to activate it.” 。

1.2 破解Rose 2003

1.         安装Rose后,默认是需要许可证书的。去下载个破解的。本例中下载的是rose2003crack.rar。

2.         先用破解压缩包里的 rational.exe,lmgrd.exe 覆盖到你的Rose 2003安装目录的Rational\Common\

3.         然后记事本打开破解压缩包里的license.dat, 修改里面的 SERVER yourPC ANY  DAEMON rational "C:\Program Files\Rational\Common\rational.exe" 改成 SERVER 你的机器名 ANY  DAEMON rational "你的安装目录\rational.exe" ,拷贝到Common目录下..

4.         为终止警告框 “SmartHeap Library”—MEM_BAD_POINTER跳出, 将破解压缩包里的SHW32.DLL(一般会于mem_bad_pointer_emend.rar中)拷贝到你的Rose 2003安装目录的\Rational\Rose下覆盖即可。

5.         将Flexlm.cpl拷贝到C:\WINDOWS\system32下,在控制面板里,切换到经典视图,运行 FLEXlm License Manager。 之后配置FLEXlm License Manager如下:
    在 Setup 面板配置文件路径,lmgrd.exe
-> 你的安装目录 \Common\lmgrd.exe, 而 License
File 为你改过的 \Common\license.dat

6.         在Control面板点击Start,如果成功的话点击Status按钮将显示 你的机器名:license
server UP (MASTER), 说明成功了。 失败的话重启一下FlexLm
License Manager就没问题了。

7.         如果弹出对话框License
Key Administrator Wizard后, 选定Point
to a Rational License Server to get my licenses,单击下一步, Server Name文本框中填写你的机器号(可能已经填好),单击完成。(成功的话会出现两屏的licenses)

8.         从开始菜单启动Rational
Rose Enterprise Edition,若跳出对话框”Rational License Key Error” , 点击”Launch
License Key Administrator”, 进入对话框,选择工具条最左边的小帽子按钮”Start Wizard”, 跳出对话框” License
Key Administrator Wizard”,选定Point to a Rational License Server to get my licenses,单击下一步,Server
Name文本框中填写你的机器号(可能已经填好,应与license.dat中的机器名同),单击完成。 (成功的话会出现两屏的licenses)

9.         若重启电脑后,无法从开始菜单启动Rational
Rose Enterprise Edition,请重启控制面板里的FlexLm License Manager。

1.3安装过程中也可能运行时出现 没有找到suite objects.dll 因此rational rose不能能启动 错误

运行Rose 提示错误: 未找到suite objects.dll

我在win7上安装的目录是E:\Program Files\Rational

suite objects.dll在Common(大写)下,

打开环境变量(如下说明)查看到rose的路径下Common是大写的common,于是重新把path里的路径重写了一下。这次再运行····OK了··

其实suite objects.dll 还在你的电脑中,只是环境变量错了或者没设置,造成找不到。我安装的地址是E:\Program Files\Rational\,suite objects.dll在D:\Program Files\Rational\Common文件夹下。解决步骤如下:

1.右击 我的电脑
2.选择 高级->环境变量
3.编辑path,在原path添加 ";D:\Program Files\Rational\Common"(引号内添加,引号不用加进去)
4.启动rose,OK。

2. Rational Rose 2003 逆向工程生成UML模型图

这一节主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析。

Rational Rose可以支持标准C++和Visual
C++的模型到代码的转换以及逆向工程。下面将详细地说明这两种C++ project的逆向工程的步骤和具体操作。

2.1 ANSI C++(标准C++)逆向工程(Reverse
Engineer)

使用标准C++逆向工程,需要在组件图(component
view)中创建一个组件(component),设置好需要进行转换的组件的信息,也就是该组件的语言、所包含的文件、文件所在的路径、文件后缀等等信息,然后Reverse
Engineer就可以根据给定的信息将代码转换成类图了。

(一)    右键点击组件视图(Component
View),选择New->Component,创建一个新的组件

  

(二)    将component的language属性设定为ANSI
C++

a)          选中创建的component,点击右键,选中Open
Specification

  

b)         在这个对话框中将该component的language设定为ANSI
C++

(三)    配置该ANSI
C++ component,设置好该component中包含的C++代码文件,并进行C++语言的详细设置

a)          选中该component,点击右键,选择ANSI
C++->Open ANSI C++ Specification

b)         把Source
file root directory设定为你的C++源码文件所在的路径,Reverse
engineering root package 中输入转换后的工程的名称,默认为C++ Reverse
Engineered,Reverse engineer directories as packages 选项将以文件夹的形式在Rose 的Logical
View中生成与源文件相同的文档结构。点击Add Files将需要转换的文件添加到Project
Files中,视你的需要来做其它的设定,比如:头文件扩展名等等。

(四)    将设置好的component转换成模型图

a)          选中设置好的component,点击右键,选中ANSI
C++->Reverse Engineer

b)         选中需要转换的class,点击ok,一个component的逆向转换就完成了。

c)        逆向转换完成后,将在Rose主界面的Logical
View下显示逆向转化后的代码。

(五)    得到逆向工程的模型图

a)  新建一个Class
Diagram,并命名。

b)         双击此Diagram打开,选择Query->Add
Classes。

c)          在Package下拉列表选择包含类的文件夹,点击OK。选择All
>> 添加。

d)        重复同样的操作直到所有需转换成UML模型的类都已经添加完毕。最后在Class
Diagram视图中显示所有生成的UML模型图及其它们之间的联系。

 

(六)    排列视图

一般来说,一个系统中所涉及的数据元素非常多,导致视图很拥挤,排版也非常困难。Rational
Rose提供的自动排版功能可以很方便地帮助用户解决这个问题。

选择Format->Layout
Diagram,系统会将图中的所有元素用最优方式重新排列,给用户一个清晰的视图。

2.2 Visual C++逆向工程(Reverse
Engineer)

Visual C++ 在使用这个功能的时候,要求用户的机器上同时安装Visual
Studio。Visual C++的逆向工程也需要首先创建一个component,并将该component的language属性设置为VC++。Rational
Rose对VC++模型的转换是通过读取VC++
Project File的信息来实现的,用户只需要将对应的project file信息指定给component就可以了。其余操作与“ANSI
C++(标准C++)逆向工程
”基本雷同。

(一)    将VC++
Project的信息赋给刚刚创建好的component。

a)          选择该component,点击右键,选择Assign
To Project

b)         在对话框中找到刚刚创建的component,右键点击并选择Properties。

c)          在下面对话框中选中需要进行转换的Project,点击ok,该component就与需要转换的project关联上了。

(二)    将设置好的component转换成模型图

选中设置好的component,点击右键,Update
Model…,将会弹出确认对话框,选中需要转换的class,点击finish就可以了。

 

注释

①IBM Rational
Software Architect是一个集成式设计和开发工具,使用户可以用UML模型驱动的开发方式开发出结构清晰的应用程序和服务。

②IBM Rational
Software Modeler是基于UML2.0的可定制的可视化建模和设计工具,遵循它所提供的工作流程,可以使得系统设计师,系统分析师,设计人员等写出更为清晰的文档,更为有效地进行沟通和设计工作。

③UML提供的各种类型的模型描述图

用例图(Use Case
Diagram):描述系统提供的一个功能单元,主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的"角色"(actors,也就是与系统交互的其他实体)关系,以及系统内用例之间的关系。

序列图(Sequence
Diagram):显示具体用例(或者是用例的一部分)的详细流程。

状态图(Statechart
Diagram):表示某个类所处的不同状态和该类的状态转换信息。

活动图(Activity
Diagram):表示在处理某个活动时,两个或者更多类对象之间的过程控制流。

类图(Class Diagram):表示不同的实体(人、事物和数据)如何彼此相关;换句话说,它显示了系统的静态结构。

组件图(Component
Diagram):提供系统的物理视图。组件(Component)表示模型代码库、执行库和其它组件的信息。组件是代码的实际模块,组件图主要用户是负责控制代码和编译部署应用程序的人。有些组件是代码库,有些组件是运行组件,如执行文件或动态链接库(DLL)文件。)

部署图(Deployment
View):表示该软件系统如何部署到硬件环境中。

数据模型图(Data Model
Diagram):描述关系数据结构。

参考文献:

申 震杰,
IBM 中国软件开发中心软件工程师 《利用Rational
Rose进行C++代码和数据库结构分析》

Rational Rose 2003 逆向工程转换C++ / VC++ 6.0源代码成UML类图的更多相关文章

  1. Rational Rose 2003 逆向工程转换C++源代码成UML类图

    主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析. Rational Rose可以支持标准C++和Visual C++的模型到代码的转换以及逆向工程.下面将详细地说 ...

  2. 用MyEclipse将java文件转换成UML类图

    用MyEclipse将java文件转换成UML类图 参考: 用MyEclipse将java文件转换成UML类图 - 君临天下的博客 - CSDN博客  http://blog.csdn.net/dan ...

  3. rational rose 2003完整汉化版 win7版

    下载链接:https://pan.baidu.com/s/1InpgNS_1-Rigw4fE3OX1Eg 软件介绍 Rational Rose 2003破解版是一款基于UML的可视化建模工具.可用于软 ...

  4. Rational Rose 2007 &Rational Rose 2003 下载及破解方法和汉化文件下载

    这么好的东西,不拿来出分享,我对不起原作者呀.可是我这里不知道作者是谁,感谢在先了. ed2k://|file|%5BIBM%E8%BD%AF%E4%BB%B6%E7%B3%BB%E5%88%97%5 ...

  5. rational rose 2003安装及破解

    rational rose作为面向对象的统一建模语言的可视化建模工具,包括了统一建模语言(UML),OOSE,以及OMT,可用于可视化建模和公司级水平软件应用的组件构造:此次小编将讲解如何安装及破解r ...

  6. Rational Rose 2003 下载及破解方法

    FROM:http://blog.csdn.net/fenglibing/archive/2007/08/17/1747693.aspx 这么好的东西,不拿来出分享,我对不起原作者呀.但是我这里不知道 ...

  7. Rational Rose 2003 下载、破解及安装方法(图文)

    方法一: 1. 安装Rational Rose2003时,在需选择安装项的时候,只选择Rational Rose EnterPrise Edition即可,不需选择其他项,之后选择“DeskTop I ...

  8. Rational Rose 2007 &Rational Rose 2003 下载及破解方法和汉化文件下载

    Rational Rose 2007 &Rational Rose 2003 下载及破解方法和汉化文件下载 分类: 其它2010-08-10 13:28 12926人阅读 评论(4) 收藏 举 ...

  9. 从 Java 代码逆向工程生成 UML 类图和序列图

    from:http://blog.itpub.net/14780914/viewspace-588975/ 本文面向于那些软件架构师,设计师和开发人员,他们想使用 IBM® Rational® Sof ...

随机推荐

  1. NGINX----源码阅读----(option配置脚本)

    /auto/options options文件主要负责nginx启动前配置脚本对环境变量初始化. 1.默认为环境变量赋值 help=no NGX_PREFIX= NGX_SBIN_PATH= NGX_ ...

  2. mysql的数据类型与列属性

  3. table表头thead固定

    <html> <head> <meta charset="utf-8"/> <script type="text/javascr ...

  4. 【转】【Egit】如何将eclipse中的项目上传至Git

    1.下载egit插件 打开Eclipse,git需要eclipse授权,通过网页是无法下载egit的安装包的.在菜单栏依次打开eclipse→help→install new software→add ...

  5. HUD 1171 Big Event in HDU(01背包)

    Big Event in HDU Problem Description Nowadays, we all know that Computer College is the biggest depa ...

  6. Hihocode 1015 KMP算法

    时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进. ...

  7. 解决Windows内存问题的两个小工具RamMap和VMMap(这个更牛更好)

    来源:http://www.cr173.com/html/13006_1.html .net程序内存监测分配工具(CLR Profiler for .NET Framework 4)官方安装版 类型: ...

  8. 一种基于FSIM对视频编码图像质量客观评价的方法

    一 为什么对视频编码图像质量客观评价     视频图像质量主观评价一般采用连续双激励质量度量法对任一观测者连续给出原始视频图像和处理过的失真图像,由观测者根据主观感知给出分值,其需针对多个视频对象进行 ...

  9. CVE-2014-1767 利用分析(2015.2)

    CVE-2014-1767利用分析 参考这篇文章利用思路,重现利用,主要说明自己在实现的时候遇到的坑. 利用思路 1. 第一次 IoControl,释放 MDL,我们通过 VirtualAddress ...

  10. iOS UIView常用的一些方法setNeedsDisplay和setNeedsLayout 区别

    1.UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到  UI ...