ch9-Rose的双向工程.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 Rose的双向工程 《Rational Rose 2003基础教程》 配套电子教案 内 容 Rose对编程语言的支持 Rose的双向工程 RTE举例 Rose的正向工程 Rose的逆向工程 1 Rose对编程语言的支持 2 Rose的双向工程 Rose支持UML模型与编程语言之间的相互转换,采用双向工程(RTE,Round Trip Engineering)的解决方案。Rose可以分析代码的改动,对模型进行修改,构建出与代码相关的更好的模型。 2 Rose的双向工程 3 RTE举例 3.1 从模型到代码——正向工程 类SalesRep:从模型到代码 3 RTE举例 3.2 从代码到模型——逆向工程 类SalesRep:从代码到模型 3 RTE举例 3.3 一致性问题 对于任何一种CASE工具,在进行模型/代码转换时,都存在一致性问题。即便最先进的CASE工具也很难保证模型/代码与代码/模型转换之间的一致性(同步)。 在进行逆向工程之后,类SalesRep模型已经丢失了逻辑关系——与类Client和类Vector之间的关联。 4 Rose的正向工程 4.1 代码生成的步骤 五个步骤: 1)检查模型; 2)创建构件; 3)将类映射到构件; 4)设置代码生成属性; 5)选择要进行代码转换的类、构件和包。 4 Rose的正向工程 4.1 代码生成的步骤 1) 检查模型(Check Model) 引用问题 非法访问(Access violations)问题 语言语法问题 2)创建构件 Check Model是独立于语言的。如果你想将模型转换成下面的三种语言之前进行模型检查,则: Java:单击ToolsJava/J2EESyntax Check CORBA:单击ToolsCORBASyntax Check Oracle8:单击Tools Oracle8Syntax Checker 4 Rose的正向工程 4.1 代码生成的步骤 3)将类映射到构件 构件之间的依赖性决定了系统的编译依赖性。 指定构件实现的类: 选中构件图或浏览器中的用于实现类的构件图标; 打开构件规范窗口; 选中Realizes标签; 选中Show all classes复选框; 在类列表中找到并右击所要实现的类,单击快捷菜单中的Assign。 4 Rose的正向工程 4.1 代码生成的步骤 4)设置代码生成属性 直接影响生成的语言代码框架,代码生成属性控制模型元素转换到代码时的具体细节。在生成代码之前,最好先检查代码生成属性并进行必要的修改。因为模型元素(包括类、属性、构件等)有多种代码生成属性可供选择,而Rose只是提供了常用的代码生成属性的默认设置。 要查看代码生成属性,单击ToolsOptions,然后选择相应的语言标签 4 Rose的正向工程 4.1 代码生成的步骤 5)选择类、构件和包 Rose允许分步骤、有选择的进行代码转换,即在生成代码时,可以一次选择一个类、一个构件或者一个包,通过代码转换将其转换成相应的语言代码;也可以一次生成多个类、构件或者包的代码;或者是它们的组合。 4 Rose的正向工程 4.2 代码生成 1)语言工具定制 从Tools菜单中选择特定的语言工具选项并设置相应的语言选项 2)控制源代码的框架内容 任何造型工具都不能创建完整的应用程序。 Rose强大的代码生成能力在于它能生成大量的框架代码。 3)设定源代码文件的位置 默认的情况下,包含已生成的代码的文件和路径位于当前工作空间所在的目录下。 4)代码生成之后的工作 精化模型系统的程序实现:编写每个类的操作(方法实现)和设计图形用户界面(GUI) 5 Rose的逆向工程 定义 通过源代码或者对源代码进行修改,得出UML模型,这就是逆向工程。 模型的信息来源 1)类、属性和操作 2)关系 3)包和构件 5 Rose的逆向工程 1)类、属性和操作 5 Rose的逆向工程 2)关系 5 Rose的逆向工程 3)包和构件 代码中包和构件的信息也会在逆向工程时体现在Rose模型中。 Rose对构件的处理方法因语言而异。 * * X XML DTD X MIDL X CORBA IDL Ada版本 X Ada J版本 X Java VB版本 X Visual Basic C++版本 X Visual C++ C++版本 X ANSI C++ Rose 2003 Modeler 专业版 企业版 支持的语言 映射到构件包中各个包中的类 构件包 映射到每个构件的类 构件 每个逻辑包中的类 逻辑包 每个被选中的类

文档评论(0)

考试教学资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档