🧩实验名称
UML正向工程和反向工程应用
🧩实验目的
1.理解正向工程和反向工程的基本概念;
2. 运用Rose的正向工程对创建的类组件生成Java代码;
3. 掌握类的创建方法,以及类的属性和方法的添加、删除和参数的设置;
4. 掌握正向工程中语言设置、语法检查、代码保存路径的设置方法;
5. 运用Rose的反向工程将Java代码转换为类组件。
🧩实验要求
能正确创建类,为类添加属性和方法;能独立自主地对类进行语法检查并排错,能正确生成Java代码。能将Java代码转换为UML类图。
🧩实验原理
为了加快编码进度,可以利用建模工具执行正向工程,将系统中的模型转换成指定语言类型的代码框架,然后运用到代码开发工具中。
在Rational Rose中,根据实体类可以使用正向工程生成与之对应的代码。正向工程是指从Rose模型中的一个或多个类图生成Java源代码的过程。
🧩实验步骤
🔗正向工程
(1)首先选择“Tools”→“Options”→“Notation”→“Default”→“Java”,然后在Logical View上右键选择New→Package,将该包命名为“NewCourse”(不能用中文,也不能用数字命名),右键单击该包,添加三个类:UserInformation、TeacherInformation、StudentInformation,并分别为每个类添加属性和方法,保存文件为“xxx.mdl”,见图。
注意:类中的属性要设置数据类型如string,操作也要设置返回值类型如string。操作技巧:在浏览器区域右键选中对应的属性或操作,选择“Open Standard Specification”→“Return”或“Type”→“String”。
(2)设置语言插件:选择“Add-Ins”→“Add-Ins Manager”选项,选中所需语言名称“Java”,单击“OK”。如图。
(3)语法检查:在编辑区域选中所有类,在菜单栏选择“Tools”→“Java/J2EE”→“Syntax Check”,并显示语法检查成功提示框。如下图所示(此图是没有语法检查错误和警告)。
注意:如果语法检查有错,请根据提示信息改正错误。
(4) 设置“Code Generation”参数:选择“Tools”→“Java/J2EE”→“Project Specification”→“Code Generation”→“Automatic Synchronization”,它能够使代码与UML模型保持一致,每次创建或修改模型中的Java元素时,使代码自动生成(缺省时未设置同步)。
(5)选中所有类,单击“Tools”→“Java/J2EE”→ “Generation Code”,设置类所在路径
(6)选中类路径,单击Assign按钮,将Rose中的类部署到模型中的java组件中,然后单击OK,生成代码框架。
注意:当Assign变为可编辑状态时,说明类路径选择正确,为灰色时,说明类路径选择错误。
(7)最后,显示代码生成成功提示框,代码生成完毕。
🧩实验步骤
🔗反向工程
1. 选择“Tools”→“Java/J2EE” →“Reverse Engineer”。在Java Reverse Engineer对话框各区域按下图选择,选中所有类的代码运用UML反向工程。
2. UML反向工程生成的UML类图模型如图所示(需要手动将类从浏览器区域拖到绘图区域)。