ImageVerifierCode 换一换
格式:PPT , 页数:27 ,大小:1.28MB ,
资源ID:14192360      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/14192360.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(软件工程Rose的双向工程.ppt)为本站上传会员【仙人****88】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

软件工程Rose的双向工程.ppt

1、Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Rose,的双向工程,目录,双向工程简介,正向工程,逆向工程,实例应用,小结,Rose,的双向工程,双向工程包括正向工程和逆向工程。,正向工程指把设计模型映射为代码;,逆向工程是指将代码转换成设计模型。,双向工程简介,无论是把设计模型转换成代码,还是把代码转换为设计模型,都

2、是一项非常复杂的工作。正向和逆向工程这两方面结合在一起,定义为双向工程。双向工程提供了一种机制,它使系统架构或者设计模型与代码之间进行双向交换。,正向工程把设计模型转换为代码框架,开发者不需要编写类、属性、方法代码。一般情况下,开发人员将系统设计细化到一定的级别,然后应用正向工程。,逆向工程是指把代码转换成设计模型。在迭代开发周期中,一旦某个模型作为迭代的一部分被修改,采用正向工程把新的类、方法、属性加入代码;同时,一旦某些代码被修改,采用逆向工程,将修改后的代码转换为设计模型。,自从,1997,年正式发布,UML,以后,出现了许多,UML,建模,CASE,工具。其中最具代表性的两款,CASE

3、工具是,Sparx,Systems,的,Enterprise Architect,和,IBM,的,Rational Rose,。,正向工程,正向工程,(,代码生成,),是指把,Rose,模型中的一个或多个类图转换为,Java,源代码的过程。,Rational Rose,里的正向工程是以组件为单位的。即,Java,源代码的生成是以组件为单位的,不是以类为单位的。所以,创建一个类后需要把它分配给一个有效的,Java,组件。如果模型的缺省语言是,Java,,,Rose,会自动为这个类创建一个组件。,当对一个设计模型元素进行正向工程时,模型元素的特征会映射成,Java,语言的框架结构。例如,,Ros

4、e,中的类会通过它的组件生成一个,.java,文件;,Rose,中的包会生成一个,java,包。另外,当把一个,UML,包进行正向工程时,将把属于该包的每一个组件都生成一个,.java,文件。,正向工程,Rose,工具能够使代码与,UML,模型保持一致,每次创建或修改模型中的,UML,元素,它都会自动进行代码生成。缺省情况下,这个功能是关闭的,可以通过,【,Tools,Java,Preject,Specification】,打开该功能,选择“,Code Generation”,选项卡,选中“,Automatic Synchronization”,。,“,Code Generation”,窗口是

5、代码生成时最常用的一个窗口,下面对该窗口中的每项做详细的介绍。,(,1,),IDE,:指定与,Rose,相关联的,Java,开发环境。下拉框列出了系统注册表里的,IDE,。,Rose,可以识别的开发环境有以下几种:,VisualAge,for Java,,,VisualCafe,,,Forte for Java,以及,JBuilder,。缺省的,IDE,是,Rose,内部编辑器,它使用,Sun,的,JDK,。,正向工程,(,2,),Default Data Types,:该项用来设置缺省数据类型,当创建新的属性和方法时,,Rose,就会使用这个数据类型。缺省情况下,属性的数据类型是,int,,

6、方法返回值的数据类型是,void,。,(,3,),Prefixes,该项设定缺省前缀(如果有的话),,Rose,会在创建实例和类变量的时候使用这个前缀。缺省不适用前缀。,(,4,),Generate Rose ID,:设定,Rose,是否在代码中为每个方法都加惟一的标识符。,Rose,使用这个,RoseID,来识别代码中名称被改动的方法。缺省情况下,将生成,RoseID,.,如果关闭了“,Automatic Synchronization”,,就需要打开该功能。,正向工程,(,5,),Generate Default Return Line,:设定,Rose,是否在每个类声明后面都生成一个返回

7、行。缺省情况下,,Rose,将生成返回行。,(,6,),Stop on Error,:设定,Rose,在生成代码时,是否在遇到第一个错误时就停止。缺省情况下这一项是关闭的,因此即使遇到错误,也会继续生成代码。,(,7,),Create Missing Directories,:如果在,Rose,模型中引用了包,这项将指定是否生成没有定义的目录。缺省情况下,这个功能是开启的。,(,8,),Automatic Synchronization Mode,:当启用这项时,,Rose,会自动保持代码与模型同步,也就是说代码中的任何变动都会立即在模型中反映出来,反过来也一样的。缺省情况下,没有使用这个功能

8、9,),Show Progress Indicator,:指定,Rose,是否在遇到复杂的同步操作时显示进度栏。缺省情况下不会显示。,正向工程,(,10,),Source Code Control,:指定对哪些文件进行源码控制。,Put source code of the project under Source Control,:是否使用,Rose J/CM,Intergration,对,Java,源代码进行版本控制。,(,1,),Input,Checkin,/Checkout comment,:指定用户是否需要对检入,/,检出代码的活动进行说明。,(,2,),Select Sou

9、rce Root Path for Source Control,:选择存放生成的代码文件的路径。,正向工程,下面将详细介绍如何从模型生成,Java,代码,:,1.,将,UML,类加入模型中的,Java,组件,Rose,会将,.java,文件与模型中的组件联系起来。因此,,Rose,要求模型中的每个,Java,类都必须属于组件视图中的某个,Java,组件。,有两种给组件添加,Java,类的方法。,(,1,)当启动代码生成时,可以让,Rose,自动创建组件。如果这样,,Rose,会为每个类都生成一个,.java,文件和一个组件。为使用这个功能,必须将模型的缺省语言设置为,Java,,可以通过,【

10、Tools,Options,Notation,Default,Language】,进行设置,Rose,不会自动为多个类生成一个,.java,文件。如果将,Java,类分配给一个逻辑包,,Rose,将为组件视图中的物理包创建一个镜像,然后用它创建目录或是基于模型中包的,Java,包。,(,2,)可以自己创建组件,然后显式地将类添加到组件视图中。这样做可以将多个类生成的代码放在一个,.java,文件中。,正向工程,有两种方法可以将一个类添加到组件中。无论选择哪种方法,都必须首先创建这个组件。,第,1,种,使用浏览器将类添加到组件中。首先在浏览器视图中选择一个类,然后将将类拖放到适当的组件上。这样

11、就会在该类名字后面列出其所在组件的名字,;,第,2,种,使用,Rose,里的“,Component Specification”,窗口。首先打开组件的标准说明:如果该组件不是一个,Java,组件(也就是它的语言仍然是,Anaysis,),双击浏览器或图中的组件;如果它已经是,Java,组件,选中它并单击右键然后选择,【Open Standard Specification】,子菜单。,2.,语法检查,这是一个可选的步骤。生成代码前,可以选择对模型组件的语法进行检查。在生成代码时,Rose,会自动进行语法检查。,Rose,的,Java,语法检查是基于,Java,代码语义的。,可以通过以下的步骤

12、对模型组件进行,Java,语法错误检查。,(,1,)打开包含将用于生成代码的组件图。,正向工程,(,2,)在该图中选择一个或多个包和组件。,(,3,)使用,【Tools,Java/J2EE,Sysntax Check】,对其进行语法检查。,(,4,)查看,Rose,的日志窗口。如果发现有语法错误,生成的代码有可能不能编译。,(,5,)对组件进行修改。,3.,设置“,Classpath,”,通过,【Tools,Java/J2EE,Project Specification.】,打开,Rose,中的“,Java Project Specification”,,其中“,ClassPath,”,选项卡

13、为模型指定一个,Java,类路径。,正向工程,4.,设置“,Code Generation”,参数,5.,备份文件,代码生成以后,,Rose,将会生成一份当前源文件的备份,它的前缀是,.,jv,。在用代码生成设计模型时,必须将源文件备份。如果多次为同一个模型生成代码,那么新生成的文件会覆盖原来的,.,jv,文件。,6.,生成,Java,代码,选择至少一个类或组件,然后选择,【Tools-Java/J2EE,Generate Code】,子菜单。如果是第,1,次使用该模型生成代码,那么会弹出一个映射对话框,它允许用户将包和组件映射到“,classpath,”,属性设置的文件夹中。,逆向工程,逆

14、向工程是分析,Java,代码,然后将其转换到,Rose,模型的类和组件的过程。,Rational Rose,允许从,Java,源文件(,.java,文件)、,Java,字节码(,.class,文件)以及一些打包文件(,.zip.cab.jar,文件)中进行逆向工程。,下面将会详细介绍逆向工程的过程。,(,1,)设置或检查,CALSSPATH,环境变量。,Rose,要求将,CLASSPATH,环境设置为,JDK,的类库。根据使用的,JDK,的版本不同,,CLASSPATH,可以指向不同类型的类库文件,例如,.zip,rt.jar,等。,设置,CLASSPATH,环境变量的步骤如下。,逆向工程,首

15、先,右击“我的电脑”,然后选择,【,属性,高级,】,选项,单击,【,环境变量,】,按钮,在“系统变量”区域中,首先查找是否已经有了,CLASSPATH,环境变量。如果没有,单击,【,新建,】,按钮,如果有,则单击,【,编辑,】,按钮,然后在弹出的对话框中输入路径。,另外,还需要为自己的库创建一个,Classpath,属性。可以使用“,project Specification”,窗口中的“,Classpath,”,选项进行设置。,(,2,)启动逆向工程。有,3,种方式可以启动逆向工程。第,1,种,选择一个或多个类,然后单击,【Tools,Java/J2EE,Reverse Engineer】,

16、子菜单;第,2,种,右键单击某个类,然后在弹出的菜单中选择,【Java/J2EE,Reverse Engineer】,;第,3,种,将文件拖放到,Rose,模型中的组件图或类图中。当拖放,.zip,、,.cab,和,.jar,文件时,,Rose,会自动将它们解压。注意,,Rose,不能将代码生成这种文件。,实例应用,1,生成代码实例,由于,Rose,的正向工程只能从,UML,类生成代码,所以首先必须画出类图。以下面的类为例,选中这些类,然后选择,【Tools,Java/J2EE,Generate Code】,如果还没设置,Classpath,,那么会弹出一个对话框,要求选择,Classpath

17、如果当前还没有,Classpath,,点击“,Edit”,,进行,Classpath,配置。,图,14-2,图,14-3,实例应用,选择下图中右边的第一个“添加”按钮,弹出选择,Classpath,配置确认框。,Classpath,配置确认框,实例应用,Classpath,配置有两种形式:,一种是选择,.jar,或,.,zip+Directory,形式,将,Classpath,指向为,JDK,的类库文件(如:,C:Program FilesJavaj2sdk1.5.0librt.jar,),另外再定义一个,Directory,(如,D,:,),可将生成的,java,文件放在这个独立的,Di

18、rectory,下。,一种是只选择,Directory,将,Classpath,指向为,JDK,的类库,Directory,(如:,C:Program FilesJavaj2sdk1.5.0lib,),则生成的,java,文件将放在,C:Program FilesJavaj2sdk1.5.0lib,下。,这里选择第一种形式,配置如图所示。,实例应用,按“确定”返回。选择设定的,Classpath,,然后在右面选中所有的类,最后点击,【OK】,,,Rose,就开始生成,Java,代码,如右图所示。,在,Classpath,下可以找到已经生成的,Java,文件,如左图所示,:,实例应用,基类,Pe

19、rson,的源代码如下:,/Source file:D:,JavaSourcePerson.java,public class Person,private String name;,private String ID;,private String address;,private String,phoneNo,;,/*,roseuid,4921532B01A5,*/,public Person(),实例应用,/*,roseuid,492152A003A9,*/,public void,getName,(),/*,roseuid,4921532B0138,*/,public void,set

20、Name,(),实例应用,/*,roseuid,49215335002E,*/,public void,getID,(),/*,roseuid,4921533E031C,*/,public void,setID,(),实例应用,/*,roseuid,49215343000F,*/,public void,getAddress,(),/*,roseuid,4921534E030D,*/,public void,setAddress,(),实例应用,再看看,,Rose,是否在代码里保持了模型中的继承关系,以,Customer,子类为例,代码如下:,/Source file:D:,JavaSourc

21、eCustomer.java,public class Customer extends Person,private String,CarType,;,private String,licenceNo,;,private String,RequestOrder,;,/*,roseuid,4921539A000F,*/,实例应用,public Customer(),令人欣喜的是,它保持了模型中的继承关系。代码生成后,开发者就可以在这个代码框架中实现具体的方法,大大节省了开发的时间。,实例应用,2,逆向工程实例,修改,Customer,类,在里面加入一个,print,方法,暂时不加入任何实现内容

22、再去掉,RequestOrder,成员变量。,public void print()Rational Rose,的逻辑视图中选择,Customer,类,单击右键在弹出的菜单中选择,【Java/J2EE,Reverse Engineer】,子菜单。,在左边的目录结构选择,D:,JavaSource,,然后右边就会显示出该目录下的,.java,文件,选择,Customer.java,文件,点击,【Reverse】,按钮,完成以后点击,【Done】,按钮,可以发现,Customer,类发生了变化。,小结,双向工程包括正向工程和逆向工程。正向工程指把设计模型映射为代码;逆向工程是指将代码转换成设计模型。,正向工程把设计模型转换为代码框架,开发者不需要编写类、属性、方法代码。一般情况下,开发人员将系统设计细化到一定的级别,然后应用正向工程。,逆向工程是分析,Java,代码,然后将其转换到,Rose,模型的类和组件的过程。,Rational Rose,允许从,Java,源文件(,.java,文件)、,Java,字节码(,.class,文件)以及一些打包文件(,.zip.cab.jar,文件)中进行逆向工程。,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服