- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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 专业版 企业版 支持的语言 映射到构件包中各个包中的类 构件包 映射到每个构件的类 构件 每个逻辑包中的类 逻辑包 每个被选中的类
您可能关注的文档
- GPS技术原理及其应用.ppt
- HJCY 维维豆奶营销战略报告清华汉魅.ppt
- HP RTX可替换磁盘备份系统.ppt
- HSE安全理念及项目概况.ppt
- IATF16949新增条款对比列表.ppt
- IC-ED-01新物料导入管理办法.doc
- IC卡智能停车场管理系统.doc
- IMO《船舶压载舱保护涂层.ppt
- Internet应用职称计算机考试模拟题及答案.doc
- IPS2000中文版安装手册.doc
- 第18讲 第17课 西晋的短暂统一和北方各族的内迁.docx
- 第15讲 第14课 沟通中外文明的“丝绸之路”.docx
- 第13课时 中东 欧洲西部.doc
- 第17讲 第16 课三国鼎立.docx
- 第17讲 第16课 三国鼎立 带解析.docx
- 2024_2025年新教材高中历史课时检测9近代西方的法律与教化含解析新人教版选择性必修1.doc
- 2024_2025学年高二数学下学期期末备考试卷文含解析.docx
- 山西版2024高考政治一轮复习第二单元生产劳动与经营第5课时企业与劳动者教案.docx
- 第16讲 第15课 两汉的科技和文化 带解析.docx
- 第13课 宋元时期的科技与中外交通.docx
文档评论(0)