Rational Rose与UML教程
在学UML的过程中,Rational Rose的角色无比重要。现在能找到的大多数是2003的,但下面连接是2007。
http://blog.csdn.net/skl_TZ/article/details/8925152
这个教程会教会你用Rational Rose。包括用例图,类图,时序图,协作图和状态图的绘制。
启动Rational Rose后,它会提示你去创建新模型。有一些模型给你选择。在这个教程中,我们会选择J2EE模型。如果你有已存在的模型,选择“”“Existing”标签或“Recent”标签去加载它们。
然后,自动创建了三个包。分别是java,javax和org。Java包包括java的一些基本的类;javax包包括java的扩展类例如swing和servlet等等。org包包括CORBA的东西。
这里有一些窗口:
首先,我们要创造演员。在Brower area单击“Use Case View”->“Main”。单击在Diagram Toolbox中的Actor,并将它拖到Diagram Window中。
给它一个名字。
同样,用这个方法创造professor, student 和billing system. 然后在Diagram Toolbox上单击“Use Case”并将它拖到Diagram Window中。
在Diagram Toolbox 中单击“Unidirectional Association”,并拖到Diagram Window中。
有一些用例可以重用其它用例。例如,“logon validation”会用到“register for courses”和“maintain schedule”。所以一个“generalization”(uses)关系可以被模式化。单击“Generalization”关联到“register for courses”和“maintain schedule”。
空上用例有说明,双击“Logon Validation”并写上说明。
然后,我们会创建时序图。在菜单中选择“Browse”->“Interacton Diagrams...”->“Use Case View”-><New>->Ok。写上名字“addCouse”并选择“Sequence”,再单击Ok。
在Browser area窗口中,AddCourse图标出现在Use Case View下方。而已,所有的演员都在这里。单击Student并将它拖进Diagram Window。右键Diagram Windows并选择“Class Wizard...”,分别创建registration form类,registration manager类,math 101类和math 101 section 1类。
填写object message。单击“Object Message”,拖至Diagram window中。
然后,我们会创建协作图(展示对象间的互相作用和它们之间的连接)。在菜单中选择“Browse”->“interaction Diagrams”->“User Case View”-><New>->Ok.写上标题名“SetCourseInfo”并选择“Collaboration”,单击Ok。我们可以看到“SetCourseInfo”就在“Use Case View”下。
单击Diagram Toolbox上的“Object Link”,并将它拖进Diagram Window中。
单击Diagram Toolbox上的“Link Message”,并将它拖到Diagram window中。打上名字。
在Browser Area中单击“Logical View”->“Package Hierarchy”,去看看Class Diagram。
在AddCourse时序图中,我们知道RegistrationManager类有一个addCourse的操作。双击RegistrationManager类并点击“Operations”。右击插入返回Boolean类型的“addCourse”操作。
在Browser are双击Student并选择attributes。右击插入name和major attributes。
在各个表中,我们可以找到类之间的关系。例如RegiatraionManager依赖ScheduleAlgorithm,还有RegistrationForm联系到RegistrationManager。
在“Logic View”->“RegistrationManager”->“addCourse”下,右击“addCourse”->“New”->StateChart Diagram,为addCourse创建状态转换图。
先拖出states,state transition,接着设置event,action和条件。
PS:
Rational Rose 本身没有保存为 JPG/GIF 图片格式的功能。
1. 可以通过全选、复制、粘贴可以把图表直接粘贴到打开的 Word 文档里
2. 或者粘贴到打开的 Visio 空白图表中,然后选择保存为 JPG / GIF 格式。
但是这种方法并不适合于复制到包括 Windows 画笔在内的其他绘图软件,因为默认情况下所有中文文字都会变成一个个问号。
解决方法如下:
1. 首先解决中文字符问题:
Rose菜单->Tools->Options->General
Default Font-> 设为 宋体 12px,选择字符集为 Gb2312
Documentation Windows Font-> 设为 宋体 12px,选择字符集为 Gb2312
应用/确定
保存退出
重新启动Rose,打开文件
2. 现在尝试全选、复制、粘贴到 Windows 画笔或者 Photoshop 之类的绘图软件,中文问题解决了。
3. 通过画笔或者绘图软件把图形保存在 JPG 或者 GIF 等格式的文件。
部分内容翻译自:《RoseTutorial》
Rational Rose与UML教程的更多相关文章
- UML(Rational Rose)安装教程【载百度经验】
---恢复内容开始--- Win7安装rational rose2007教程 在UML建模的众多工具中,IBM公司的rational rose建模工具可以说是最好用的建模工具了.哪我们又该如何在win ...
- rational rose画UML图
原文见:http://blog.csdn.net/cjr15233661143/article/details/8532997 UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统 ...
- Rational Rose简明实用教程
转载 https://blog.csdn.net/gz153016/article/details/49641847 求下列算法的时间复杂度 void aFunc(int n) { ; i < ...
- Rational Rose
Rational Rose简明实用教程 http://furzoom.com/rational-rose-course/ Unidirectional Association 单向关联 general ...
- 三大UML建模工具Visio、Rational Rose、PowerDesign的区别
本文源自http://developer.51cto.com/art/201006/207993.htm UML建模工具Visio .Rational Rose.PowerDesign的比较 RO ...
- Rational Rose 2003 逆向工程转换C++ / VC++ 6.0源代码成UML类图
目录 1.安装&破解Rational Rose 2003 1.1 安装Rose 2003 1.2 破解Rose 2003 1.3运行出错“没有找到suite objects.dl” 2. Ra ...
- UML总结(对九种图的认识和如何使用Rational Rose 画图)
UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几个问题: 开发人员如何与用户进行沟通来了解系统的需求? 开发人员之间如何沟通 ...
- 【转】三大UML建模工具Visio、Rational Rose、PowerDesign的区别
本文转自http://developer.51cto.com/art/201006/207993.htm UML建模工具相信大家有所了解,那么你对UML建模工具Visio .Rational Rose ...
- Rational Rose 2003 逆向工程转换C++源代码成UML类图
主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析. Rational Rose可以支持标准C++和Visual C++的模型到代码的转换以及逆向工程.下面将详细地说 ...
随机推荐
- Topas命令详解
Topas命令详解 执行topas命令后如图所示: #topas 操作系统的最全面动态,而又查看方便的性能视图就是topas命令了,下面以topas输出为例,对AIX系统的性能监控做简要描述,供运维工 ...
- C# 多线程详解
1.使用多线程的几种方式 (1)不需要传递参数,也不需要返回参数 ThreadStart是一个委托,这个委托的定义为void ThreadStart(),没有参数与返回值. 复制代码 代码如下: cl ...
- Java线程(学习整理)--3--简单的死锁例子
1.线程死锁的概念: 简单地理解下吧! 我们都知道,线程在执行的过程中是占着CPU的资源的,当多个线程都需要一个被锁住的条件才能结束的时候,死锁就产生了! 还有一个经典的死锁现象: 经典的“哲学家就餐 ...
- javascript原型模式理解
传统的面向对象语言中,创建一个对象是通过使用类来创建一个对象的,比如通过类飞行器来创建一个对象,飞机. 而js这种没有类概念的动态设计语言中,创建对象是通过函数来创建的,所以通常也把js称为函数式语言 ...
- form WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法
针对WebBrowser控件中自动点击弹出框及禁用脚本提示问题得到如下几种实际情况的解决办法,绝对管用. 1.屏蔽弹出错误脚本 将WebBrowser控件ScriptErrorsSuppressed设 ...
- yii框架基本操作
<?php namespace app\controllers; use yii\web\Controller; use app\models\DemoForm; use app\models\ ...
- jquery.lazyload.js图片延迟加载
转:http://www.jb51.net/article/50273.htm 这篇文章主要介绍了Jquery图片延迟加载插件jquery.lazyload.js的使用方法,需要的朋友可以参考下 ...
- 10条PHP高级技巧
1.使用一个SQL注射备忘单 一个基本的原则就是,永远不要相信用户提交的数据. 另一个规则就是,在你发送或者存储数据时对它进行转义(escape). 可以总结为:filter input, escap ...
- outline属性
outline(轮廓)用于设置元素周围的一条线,用于元素边框的外围,可起到突出元素的作用. outline属性所有浏览器都支持,如果规定了 !DOCTYPE,则 IE8 支持 outline 属性. ...
- 转:PHP之Traits
原文来自于:http://www.cnblogs.com/tekkaman/archive/2012/12/12/2814214.html 1.Traits基础 2.优先级:当前类中的方法会覆盖 Tr ...