统一建模语言UML_第1页
统一建模语言UML_第2页
统一建模语言UML_第3页
统一建模语言UML_第4页
统一建模语言UML_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Rational Rose 统一建模语言 UML就像一个戏剧导演设计一个剧本一样,一个软件设计师使用Rational Rose,以演员(数字)、使用拖放式符号的程序表中的有用的案例元素 (椭圆)、目标(矩形)和消 息/关系(箭头)设计个种类,来创造(模型)一个应用的框架。当程序表被创建时, Rational Rose 记录下这个程序表然后以设计师选择的C+, Visual Basic ,Java,Oracle8,CORB或者数据定义语言(Data Definition Language)来产生代码。编辑本段内容Rational Rose 包括了统一建模语言(UML), OOSE以及OMT其中统

2、一建模语言 (UML)由Rational公司3位世界级面向对象技术专家 Grady Booch、Ivar Jacobson、和Jim Rumbaugh通过对早期面向对象研究和设计方法的进一步扩展而 得来的,它为可视化建模软件奠定了坚实的理论基础。同时这样的渊源也使 Rational Rose力挫当前市场上很多基于UML可视化建模的工具,例如有 Microsoft 的 Visio2002 ,Oracle 的 Designer2000,还有 PlayCase、CA BPWin CA ERWin Sybase PowerDesigner 等等。Rational Rose 是一个完全的,具有能满 足所

3、有建模环境(Web开发,数据建模,Visual Studio 和C+)需求能力和灵活性 的一套解决方案。Rose允许开发人员,项目经理,系统工程师和分析人员在软件 开发周期内在将需求和系统的体系架构转换成代码,消除浪费的消耗,对需求和系 统的体系架构进行可视化,理解和精练。通过在软件开发周期内使用同一种建模工 具可以确保更快更好的创建满足客户需求的可扩展的、灵活的并且可靠的应用系 统。编辑本段特征Ratio nal Rose的两个受欢迎的特征是它的提供反复式发展和来回旅程工程的能 力。Rational Rose允许设计师利用反复发展(有时也叫进化式发展),因为在各个 进程中新的应用能够被创建,

4、通过把一个反复的输出变成下一个反复的输入。(这和瀑布式发展形成对比,在瀑布式发展中,在一个用户开始尝试之前整个工程被从 头到尾的完成。)然后,当开发者开始理解组件之间是如何相互作用和在设计中进行 调整时,Rational Rose 能够通过回溯和更新模型的其余部分来保证代码的一致 性,从而展现出被称为来回旅程工程的能力,Rational Rose是可扩展的,可以 使用刻下载附加项和第三方应用软件,它支持 COM/DCOM(ActiveX) JavaBeans和 Corba组件标准.编辑本段用途前面已经说过了,Rational Rose是基于UML的可视化建模工具,那首先要看看 UML有什么用了

5、。UML全称叫 Unfied Modeling Language ,顾名思义,UML是一种语言,一种表示法,就是一种交流沟通的工具,特别适用于软件密集型系统的表 示。UM啲统一性(Unified)表现为以下几点:、UML是人类思想和计算机代码 的一个连接桥梁大家都知道,计算机能直接识别的语言就是二进制的CPU旨令,早期工程师门都是直接写这些指令输入给计算机直接执行的,非常痛苦;后来就出现 了更好理解的汇编语言,之后就出现了各种各样更加容易理解和编写,更加接近人 类语言的计算机高级语言,什么 VB啊、DELPHI JAVA等等。所以从一个角度来 看,其实计算机软件的发展史,可以算是一个解决计算机

6、语言和人类语句差异性问 题的历史,就是说如何让开发语言更加接近人类语言。(2)、UMI所定义的概念和符号可用于软件开发的分析、设计和实现的全过程,软件开发人员不必在开发过程 的不同阶段进行概念和符号的转换。(3)、UML所用的语言元素基本都是图形化 的,便于理解和沟通,不但开发人员之间可以用来交流,客户和开发人员之间也可 以用它作为交流的工具。目前版本的Rational Rose可以用来做以下一些工作:1、对业务进行建模(工作流);2、建立对象模型(表达信息系统内有哪些对象,它 们之间是如何协作完成系统功能的);3、对数据库进行建模,并可以在对象模型和 数据模型之间进行正、逆向工程,相互同步;

7、4、建立构件模型(表达信息系统的物理组成,如有什么文件、进程、线程、分布如何等等)5、生成目标语言的框架代码,VB JAVA DELPHI编辑本段核心uml、uml的发展历程umlø ;公认的面向对象建模语言出现于 70年代中期。ø ;多种建模语 言的出现:booch 1993、oose、omt _2、ooa/ood。ø ; uml 建模语言的形 成,成为工业界的标准(1996年)。其发展历程可用下图形象表示:(2)、 uml(u nified modeli ng Ian guage)的具体内容客观世界是一个复杂的巨系统,需要从不同的角度来考察,才能真正理解

8、这个系统。为了能支持从不同角度来考察系 统,标准建模语言uml定义了下列5类、共9种模型图,下面图表作了基本的描 述:类型图名描述用例图用例图从用户角度描述系统的功能,并指出各功能的操作者。静态图类图用于定义系统的类,包括描述类之间的联系(如关联、依赖、聚合等)以及类的内部结构,即类的属性和操作。因此类图是描述系统中类的静态结构,即它 描述的是一种静态关系,在系统的整个生命周期都是有效的。包图包或类组成,主要表示包与包、或包与类之间的关系。包图用于描述系统的分 层结构。行为图状态图描述一类对象的所有可能状态以及事件发生时状态的转移条件。通常 状态图是对类图的补充。活动图描述为满足用例要求所要进

9、行的活动以及活动间的约束关系。使用活动图可 以很方便地表示并行活动。交互图序列图用以显示对象之间的动态合作关系。它强调对象之间消息发送的顺 序,同时也显示对象之间的交互过程。协作图同序列图是等价的,但着重描述对象间的协作关系。实现图构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可能是 一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的 有关信息。部件图有助于分析和理解部件之间的相互影响程度。配置图定义系统中软硬件的物理体系结构。它可以显示实际的计算机和设备(用节点表示)以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。在 节?行软件单元的对应关系

10、。1、用例图以订单管理系统的用例模型部分为例进行说明。例图由于他们具有略微不同的特征,因此将普通客户从In ternet客户中分离开来是非常有用的。然而,因为In ternet客户的确显示了一个客户具有的所有特征, 所以您可以说In ternet客户是客户的一个特例,并且能够通过主角泛化关系来指 示。在本图中,具体用例分别是电话订购(由客户主角发出)和Internet订购 (由In ternet客户发出)。这些用例都是更普通的订购用例的变形。在本示例 中,订购用例是一个抽象用例。请求目录用例代表一个可选行为段,它不是 订购用例主要目标的组成部分。它已经被分离出来,形成了一个抽象用例,用于 简化

11、订购用例。提供客户数据用例是一个已分离出的行为段。它之所以被分离 出来,是因为它是一个独立功能,只有它的结果才能影响订购用例。供给客户数据用例还可以在其他用例中复用。请求目录用例和供给客户数据用例在本 示例中都属于抽象用例。Rational Rose包含用例的行为插入到基本用例中的一个位置。当执行基本用例的 用例实例达到基本用例中定义扩展点的位置时,将对相应扩展关系的条件进行评 估。如果条件成立,或者如果没有条件,用例实例将遵循扩展用例(或者扩展用例中与扩展点相对应的插入段)。如果扩展关系的条件不成立,就不执行扩展。Rational Rose扩展表示一种可选行为用例实例 2、类图3、包图4、序

12、列图在序列 图中可以有对象和序列图主角实例,以及说明它们如何交互的消息。序列图描述了在参与交互的对象 中所发生的事件(从激活的角度来说明),以及这些对象如何通过相互发送消息进行 通信。您可以为用例事件流的各种不同形式制作序列图。5、协作图协作图协作图中可以有对象和主角实例,以及描述它们之间关系和交互的连接和消 息。通过说明对象间如何通过互相发送消息来实现通信,协作图描述了参与对象中 发生的情况。您可以为用例事件流的每一个变化形式制作一个协作图。状态图6、状态图状态机用于对模型元素的动态行为进行建模,更具体地说,就是 对系统行为中受事件驱动的方面进行建模。状态机专门用于定义依赖于状态的行为 (即

13、根据模型元素所处的状态而有所变化的行为)。其行为不会随着其元素状态发生 变化的模型元素不需要用状态机来描述其行为(这些元素通常是主要负载管理数据 的被动类)。状态机由状态组成,各状态由转移链接在一起。状态是对象执行某项 活动或等待某个事件时的条件。转移是两个状态之间的关系,它由某个事件触发, 然后执行特定的操作或评估并导致特定的结束状态。图1描绘了状态机的各种元素。7、活动图活动图一个活动图可能包括以下元素:活动状态表示在工作流程中执行某个活动 或步骤。转移表示各种活动状态的先后顺序。这种转移可称为完成转移。它不同 于一般的转移,因为它不需要明显的触发器事件,而是通过完成活动(用活动状态表示)

14、来触发。决策,为其定义了一组警戒条件。这些警戒条件决定在活动完成 后将执行一组备选转移中的哪一个转移。您也可以使用判定图标来表示线程重新合 并的位置。决策和警戒条件使您能够显示业务用例的工作流程中的备选线程。同 步示意条用于显示平行分支流。同步示意条使您能够显示业务用例的工作流程中的 并行线程。8、构件图由下图可以看出系统的源代码和运行组件。利用该图,负责 编译和部署系统的人员知道有哪些代码库,编译代码时生成哪些执行文件;开发人 员知道有哪些代码库,相互间有什么关系;组件的依赖性使编译人员知道正确的编 译顺序部署图9、部署图部署图考虑应用程序的实际部署,包括网络部署和组件在网?含处理器、设备、

15、进程和处理器与设备之间的连接。部署图显示网络上的所有节点、 节点间的连接和每个节点上运行的进程。编辑本段数据库建模Rose提供了一个叫Data Modeler的工具,利用它可用将对象模型转换成数据模 型,也可以将现有的数据模型转换成对象模型,从而实现两者之间的同步。具体来 说,Data Modeler可以:1、将对象模型转换成数据模型,即将类映射到数据库的 表,构成传统的 ER图;(Data Modeler|Transform to Data Model)2、将数据模型转换成对象模型;(Data Modeler|Tra nsform to Object Model)3、利用数据模型生成数据库D

16、DL也可以直接连接到数据库里,对数据库产生结果;(DataModeler|Forward Engineer)4 、从现有数据库或DDL文件里生成数据模型;(DataModeler|Reverse Engineer)5 、将数据模型同DDL文件或现有数据库进行比较; (Data Modeler|Compare to 。)注意:一个类能被转化为一个数据库表,它的 persistenee 属性必须是 transient编辑本段建模特点1保证模型和代码高度一致。2.支持多种语言。3.为团队开发提供强有力的支持。4.支持模型的In ternet发布。5.生成使用简单且定制灵活的文档。6.支持关系型 数据

17、库的建模。编辑本段使用技巧1、unitscontrol rational rose单元控制用来把一个包,在多人协作分析设计的时候特别有用。例如当一个包需要另外一个同事a进行完善的时候,可以把单元处于控制中,保存到另外一个单独的文件里,然后同事a完善这个包,同时自己也可以进行其他包的设计工作,等完善完毕后,把文件重新load进去就可以继续使用了,这样就不会影响到其他人的同步工作了。菜单含义:load :从一个文件里导入一个单元包,常用来作为同步刷新save:保存对单元包所做的更改 save as :把单元包保存到另外的一个路径 unloa ratio nal rosed:把单元包卸下来,在ros

18、e里就看不到单元包里面的内容了,用load可以把单元包重新导进来write protection :写保护,在rose里就不能对这个单元包进行更改了 2、import, export导进,导出package,对利用现成的建模成果很有用,例如我们可以导进一 个现成的java模型,这样就可以直接利用java标准的对象了。3、add-in manager很多外部的产品都对rose发布了 add-in支持,以对rose的功能做进一 步的扩展,如java、oracle、delphi,有了这些add-in,rose就可以做更多的深 层次的工作了。例rational rose 如装了 delphi link

19、 之后,rose就可以直接可以生成 delphi的框 架代码,也可以从delphi代码转化成rose模型,并进行两者的同步。选中 framework wizard 之后,执行file|new 命令时,会出现现成的框架模型,供你选 择,例如你想用delphi开发系统,就可以选择delphi framework,它已经内置 了 delphi大部分标准类的支持,方便你的分析和设计工作。4、workspaceworkspace是用来记忆当前你的工作环境,即你所打开的单元包和图,到下次打开 workspace 的时候,rose 会根据 workspa rational rosece的信息,还原至U上次的

20、工作界面。5、常用快捷键fl :任何时候都可以按fl获得相关帮助,把鼠标放在 某条菜单上按fl可以获得这条菜单的相关帮助。f2 :刷新browser和diagram f3 :两幅图进行切换f5 :顺序图和协作图等价切换 6、autosize all 使图的内容 显示得更加整齐,当发现图有些内容显示得不全时,使用这个菜单很有用。7、options 的设置 编辑本段XML DTD造型 很多开发人员都熟悉面向对象的分析和设计工具。这些工具常常都被用来辅助数据 和组件模型的开发,而这些模型要被用来搭建大型的软件系统。对于使用Rational Rose开发工具的开发人员来说,他们会惊奇地发现,你可以以给

21、自己组 件和模块同样的造型方式来给 XML文档造型。基本概念要在Rational Rose里开始创建XML模型,你就需要了解一些基本的概念。首先, 你文档里的每个节点都会成为一个类。你可以使用的XML类一共有四种类型:元素、实体、组和符号。在本文里,我们只会用到元素和组。元素是具有某些特性的 基本类,它们由你在Rational Rose所指定的类型来定义。对于元素而言,你可以 选择ANY任意)、Content Model(内容模型)、PCDATA(P数据)或者EMPTY空)。 EMPTYS素显然是空的,而PCDATA!型是一个字符数据容器。对于模式复杂的类 型,你要使用内容模型。内容模型和组对

22、于包含有字符数据的简单元素,你要使用PCDATA型。但是,你的很多元素都会包含一个或者多个子元素。对于这样的复杂元素,你必须使用内容模型类型。为 了向Rational Rose指明元素之间的关系,你还要使用组类型。从本质上讲,每个 内容模型元素都会拥有一个相关联的组元素。该组元素应该被作为Rati onal Rose里的一个嵌套类被创建。内容模型元素的每个子元素都会通过将其与内容模型元素 的组元素相关联而被定义。快速演练现在让我们来演练一个小例子。我们就从在Rational Rose创建一个新的Rational统一进程(Rational Unified Process, RUP项目开始吧。你应

23、该会在逻辑视图(Logical View) 里看到欢迎类图表(Welcome Class Diagram)。你可以在这 个图表内删除节点;不过这没有必要。点击工具条上的类(Class)图标,再点击图表创建一个新的类。将这类命名为 Order。双击Order类,并选择DTDElement 框。在类规格(Class Specification)对话框里选择内容模型类型。在树型视图里右击Order类,并选择新建|嵌套类(New|Nested Class)将这个新的类命名为 Order_grp。点击并将Order_grp类拖放到类图表里。双击 Order_grp类并选择 DTDGroup框。放在一组的

24、类应该是 Sequenee(顺序),其出现次数应该是 One(一 次)。然后,展开树型视图里的关联(Associations)项目,并将Order_grp关联拖 放到类图表里。分别创建两个新的类-Item和Customer。这两个类都应该是被定 义为内容模型类型的DTDElemen。创建Order_grp组元素同Item类的新关联,并 对Customer类进行同样的操作。双击Item类的新关联,并将它命名为Item。然 后点击角色A的细节(Role ADetail)选项卡,并在多重下拉框里选择1.n。这一步 会指明Order元素会有一个或者多个Item元素作为其子元素。双击 Customer类

25、的 关联,并将它命名为Customer。点击角色A的细节选项卡,在多重下拉框里选择1。这一步会指明Order元素只会有一个Customer元素作为其子元素。如果有必要 的话,你可以重复这一过程,以完成你的 XML DTD对于每个复杂的元素,只用简 单地指定内容模型类型,然后创建同 DTDGroup匡相关联的嵌套类就行了。你的子 元素然后就应该同组元素关联在一起了。当你完成了自己的模型之后,你就可以右 击这些类,并选择 XML_DTD生成DTD(XML_DTD|Generate DTD来生成DTD的信息。 你还可以从这个菜单里浏览DTD的源代码。逆向工程你也可以通过选择工具|XML_DTD逆向工

26、程XML_DTD(Tools|XML_DTD|Reverse Engineer XML_DTD)将你的DTD逆向转换进 Rational Rose 里。在这个过程完成之 后,你的Rational Rose模型会包含有用于你DTD类的新工具包。编辑本段安装准备1.安装Rose需要 Windows 2000/Windows XP及其以上版本。如果是 Windows 2000 则要确认已经安装了 Sever Pack 2.2.安装Rose,必须先得到Rose安装包。建议 购买Rational公司的正版软件,Rational现在已被IBM收购,读者可以从网上获 取相关信息。编辑本段Rose Power

27、Design、Visio 建模工具比较ROS是直接从UML发展而诞生的设计工具,它的出现就是为了对UML建模的支持,ROSE-开始没有对数据库端建模的支持,但是在现在的版本中已经加入数据 库建模的功能。ROS主要是在开发过程中的各种语义、模块、对象以及流程,状 态等描述比较好,主要体现在能够从各个方面和角度来分析和设计,使软件的开发 蓝图更清晰,内部结构更加明朗(但是它的结构仅仅对那些对掌握 UML的开发人 员,也就是说对客户了解系统的功能和流程等并不一定很有效),对系统的代码框架生成有很好的支持。但对数据库的开发管理和数据库端的迭代不是很好。PowerDesigner原来是对数据库建模而发展

28、起来的一种数据库建模工具。直到7.0版才开始对面向对象的开发的支持,后来又引入了对UML的支持。但是由于PowerDesigner侧重不一样,所以它对数据库建模的支持很好,支持了能够看到的 90%左右的数据库,对UML的建模使用到的各种图的支持比较滞后。但是在最近得 到加强。所以使用它来进行 UML开发的并不多,很多人都是用它来作为数据库的建 模。如果使用UML分析,它的优点是生成代码时对 Sybase的产品PowerBuilder的 支持很好(其它UML建模工具则没有或者需要一定的插件),其他面向对象语言如 C+, Java,VB,C#等支持也不错。但是它好像继承了 Sybase公司的一贯传统,对 中国的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论