欢迎来到天天文库
浏览记录
ID:35514503
大小:941.75 KB
页数:15页
时间:2019-03-25
《c逆向工程生成uml模型图》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、逆向工程生成UML模型图这一节主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析。RationalRose可以支持标准C++和VisualC++的模型到代码的转换以及逆向工程。下面将详细地说明这两种C++project的逆向工程的步骤和具体操作。ANSIC++(标准C++)逆向工程(ReverseEngineer)使用标准C++逆向工程,需要在组件图(componentview)中创建一个组件(component),设置好需要进行转换的组件的信息,也就是该组件的语言、所包含的文件、文件所在的路径、文件
2、后缀等等信息,然后ReverseEngineer就可以根据给定的信息将代码转换成类图了。(一) 右键点击组件视图(ComponentView),选择New->Component,创建一个新的组件 (二) 将component的language属性设定为ANSIC++a) 选中创建的component,点击右键,选中OpenSpecification b) 在这个对话框中将该component的language设定为ANSIC++ (三) 配置该ANSIC++component,设置
3、好该component中包含的C++代码文件,并进行C++语言的详细设置a) 选中该component,点击右键,选择ANSIC++->OpenANSIC++Specificationb) 把Sourcefilerootdirectory设定为你的C++源码文件所在的路径,Reverseengineeringrootpackage 中输入转换后的工程的名称,默认为C++ReverseEngineered,Reverseengineerdirectoriesaspackages 选项将以文件夹的形式在R
4、ose 的LogicalView中生成与源文件相同的文档结构。点击AddFiles将需要转换的文件添加到ProjectFiles中,视你的需要来做其它的设定,比如:头文件扩展名等等。 (四) 将设置好的component转换成模型图a) 选中设置好的component,点击右键,选中ANSIC++->ReverseEngineerb) 选中需要转换的class,点击ok,一个component的逆向转换就完成了。c) 逆向转换完成后,将在Rose主界面的LogicalView下显示
5、逆向转化后的代码。 (五) 得到逆向工程的模型图 a) 新建一个ClassDiagram,并命名。 b) 双击此Diagram打开,选择Query->AddClasses。c) 在Package下拉列表选择包含类的文件夹,点击OK。选择All>> 添加。 d) 重复同样的操作直到所有需转换成UML模型的类都已经添加完毕。最后在ClassDiagram视图中显示所有生成的UML模型图及其它们之间的联系。 (六) 排列视图一般来说,一个系统中所涉及
6、的数据元素非常多,导致视图很拥挤,排版也非常困难。RationalRose提供的自动排版功能可以很方便地帮助用户解决这个问题。选择Format->LayoutDiagram,系统会将图中的所有元素用最优方式重新排列,给用户一个清晰的视图。2VisualC++逆向工程(ReverseEngineer)VisualC++ 在使用这个功能的时候,要求用户的机器上同时安装VisualStudio。VisualC++的逆向工程也需要首先创建一个component,并将该component的language属性设置为VC++。RationalRo
7、se对VC++模型的转换是通过读取VC++ProjectFile的信息来实现的,用户只需要将对应的projectfile信息指定给component就可以了。其余操作与“ANSIC++(标准C++)逆向工程”基本雷同。(一) 将VC++Project的信息赋给刚刚创建好的component。a) 选择该component,点击右键,选择AssignToProjectb) 在对话框中找到刚刚创建的component,右键点击并选择Properties。c) 在下面对话框中选中需要
8、进行转换的Project,点击ok,该component就与需要转换的project关联上了。(二) 将设置好的component转换成模型图选中设置好的component,点击右键,UpdateModel…,将会
此文档下载收益归作者所有