rational rose画UML图
原文见:http://blog.csdn.net/cjr15233661143/article/details/8532997
UML是一种建模语言,是系统建模的标准。我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几个问题:
- 开发人员如何与用户进行沟通来了解系统的需求?
- 开发人员之间如何沟通以确保各个部门能够无缝地协作?
而UML是我们在构造个特种模型时首选的一种建模工具,去描述系统的需求和设计,在对复杂的工程进行建模时,系统可由单一的图形来描述,但是单一图形不可能包含一个大系统所需的所有信息,更不可能描述系统的整体结构功能,这样一来就几乎不能用单一图形来建模了,而UML能从不同的角度去描述系统,它提供了九种图,下面我们用一张图去对比这九种图的用途。

说完这九种图用途,下面我们该了解一下怎样使用工具创建图,使用的工具是Rational Rose。
使用Rational Rose 创建用例(Use Case)如图:

- 右击browser框中的Use Case View包,弹出快捷菜单;
- 选择New——Use Case项;
- 输入用例的名字;(如出错,可用Rename命令更改)
- 如果文档窗口不可见,选择屏幕上方的View—— Documentation菜单;
- 在browser框中选中所需用例;
- 将光标置于文档框中,输入相应文档。
通过上面的学习我们了解了使用Rational Rose创建图的具体操作步骤,其他几种图的创建方法类似,记住相应的单词就可以了。
- 用例图:Use Case Diagram
- 类图:Class Diagram
- 对象图:Object Diagram
- 状态图:State Diagram
- 顺序图:Sequence Diagram
- 协作图:Collaboration Diagram
- 组件图:Component Diagram
- 部署图:Deployment Diagram
- 活动图:Activity Diagram
接着我们来了解如何用Rational Rose 提供的模型去画一张属于自己同时别人也能看得懂的图
1.用例图
- 双击browser框中的Use Case View包中的Main条目,打开主用例图;
- 单击选中browser框中的执行者,并将其拖到主用例图中;
- 重复第2)步,直到完成所需的工作为止;
- 单击选中browser框中的用例,并将其拖到主用例图中;
- 重复第4)步,直到完成所需的工作为止;
- 在工具条中选择单向关联(Unidirectional Association)图标;
- 单击一个执行者,并拖到相应的用例上;或单击一个用例,并拖到相应的执行者上。
例图:




·
2.类图
类图中主要说一下如何创建类的创建属性和方法
1.创建一个最基本的类(含有类的名称即可)
2.右击刚刚创建好的类选择 New Attribute 即可创建类的属性
3右击刚刚创建好的类选择 New Operation 即可创建类的方法如图:

例图:

3.对象图:
与创建类图相似,其中的一个区别是在对象名的下面要有下划线,且对象名的表示方法由三种
a.一般方法

b.只有类名,冒号和下划线

说明建立的模型适用于该类的所有实例,这种表示方式称作匿名对象
c.只有对象名和下划线

隐藏了属性
4.状态图
a.创建状态(States)
- 在工具条中选择State图标;
- 在状态图中单击要放置状态的位置;
- 输入状态的名字。(如出错,可用Rename命令更改)
b.创建状态转换(State Transitions)
- 在工具条中选择State Transitions图标;
- 单击起始状态,并拖至下一个状态;
- 输入状态转换的名字。(如出错,可用Rename命令更改)
c.创建起始状态
- 在工具条中选择Start图标;
- 在状态图中单击要放置起始状态的位置;
- 用状态转换线进行连接。
d.创建结束状态
- 在工具条中选择Stop图标;
- 在状态图中单击要放置结束状态的位置;
用状态转换线进行连接。
例图:

5.顺序图
创建对象和信息
- 双击顺序图名称,打开顺序图;
- 将browser框Use CaseView包中的执行者拖入图中;
- 选择工具条中的“Object”图标;
- 单击图中放置对象的位置,并输入相应的名字;
- 重复3——4步;
- 选择工具条中的“Object Message”图标;
- 从信息发出者拖至信息接收者;
- 输入信息的名字;
- 重复6——8步。
例图:

6.协作图
采取将顺序图转换为合作图的方法
- 双击顺序图名称,打开顺序图;
- 选择屏幕上方的菜单Browser——Create Collaboration Diagram
- 调整图中的对象和信息,使其美观。

例图:

7.组件图
创建Main构件图(Component Diagram)
- 双击Main构件图中的University包,打开图形;
- 在工具条中选择Component图标;
- 单击图中某一位置,放置构件;
- 输入构件名称。
8.部署图
- 双击Browser框中的部署图(Deployment Diagram);
- 选择工具条中的Processor图标,并单击图中某一位置;
- 输入结点的名字;
- 选择工具条中的Connection图标;
- 点击某一结点,拖至另一结点;
- 选择工具条中的Text图标;
- 在相应结点下写上文字。
下图是书中的一个例图:

9.活动图
- 创建活动(Activity)
- 创建决策点(Decision Points)
- 创建同步条(Synchronization Bar)
- 创建起始活动和终止活动
例图:学生上机记录查询的活动图

以上就是我在学习了UML画图之后的理解,但是验收之后我最大也是最多的一个问题就是命名的时候给人家加上了空格,这样会在生成代码的时候造成很大麻烦,图还没来得及改正,记录一下我第一遍的收获,接着第二遍会有不一样的收获!
rational rose画UML图的更多相关文章
- 用rose画UML图(用例图,活动图)
用rose画UML图(用例图,活动图) 首先,安装rose2003,电脑从win8升到win10以后,发现win10并不支持rose2003的安装,换了rose2007以后,发现也不可以. 解决途径: ...
- IBM rational rose画时序图软件破解安装
上边这个链接是开头的安装步骤,照着链接中的步骤安装完之后,接下来看下边. 1.然后安装完成打开软件“IBM Rational License Keyadministrator”.出现下图:选中第二项“ ...
- Rational Rose 画九种常用架构图
UML建模详解(3)—使用Rational Rose 画九种常用架构图 UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几 ...
- 在线画UML图的工具
工作需要在线画各种UML图,类图.协作图.用例图等等,调查了一些在线画UML图的工具,有的做的很好但要收费,例如:http://www.gliffy.com/,发现现在免费好用的是ProcessOn: ...
- 在Emacs中使用plantuml画UML图
在Emacs中使用plantuml画UML图 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #83 ...
- 如何用Rational rose创建类图
UML中各种图形概要: 图名 对照 说明 用例图 use case diagram 用例图表明系统做什么,与谁交互.用例是系统提供的功能,参与者是系统与谁交互,参与者可以是人.系统或其他实体.一个系统 ...
- Rational Rose与UML教程
在学UML的过程中,Rational Rose的角色无比重要.现在能找到的大多数是2003的,但下面连接是2007. http://blog.csdn.net/skl_TZ/article/detai ...
- 使用 Vscode +PlantUml 画uml图
什么是PlantUML PlantUML是一个快速创建UML图形的组件,官网上之所以称它是一个组件,主要是因为多数情况下我们都是在Eclipse.NetBenas.Intellijidea. Emac ...
- 【转】Microsoft Visio2010 如何画UML 图
转载:http://sdoq19.blog.163.com/blog/static/1910392122012419103442292/ 1.在Microsoft Office2010中打开Micro ...
随机推荐
- 无法解析的外部符号 "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)"
采用下面的方法.重新编译了一下依赖的库,OK了. 问题描述: 今天用VS2010编译一个在VS2008下Coding的工程的时候,VS给出了一堆链接错误信息,如下图所示: 在ErrorList里面 ...
- error LNK2019: 无法解析的外部符号 _deflate
我的环境为: Win764 + VS2005 + zlib1.2.8 zlib1.2.8我使用VS2010来编译. ------------------------------------------ ...
- android的百度地图开发(一)
1,注册百度开发者账号 2,申请key ,注意开发版SH和发布版的SH 获取开发版SHA1: 输入命令:keytool -list -v -keystore debug.keystore,回车输入 ...
- vue.js 2的表单控件
静下心,抄一段sample,以后可以快点到这里来抄...: <!DOCTYPE html> <html> <head> <meta charset=" ...
- luogu P1821 [USACO07FEB]银牛派对Silver Cow Party
题目描述 One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to attend the b ...
- hdu 1512 Monkey King 左偏树
题目链接:HDU - 1512 Once in a forest, there lived N aggressive monkeys. At the beginning, they each does ...
- AJAX enabled & disabled
@model string @{ ViewBag.Title = "GetPeople"; AjaxOptions ajaxOpts = new A ...
- 64位Ubuntu 14.04 安装wps
因为wps还没有提供64位版本号的wps,13.10開始又取消了ia32-libs的支持,经过自己測试,能够使用下面命令完毕安装 sudo dpkg -i 包名 sudo apt-get -f ins ...
- Cocos2d-x游戏开发之luaproject创建
操作系统:OS X 10.85 Cocos2d-x 版本号: 2.2.1 使用Cocos2d-x 能够创建luaproject,已经使用cpp创建的project也能够继承lua进行开发,可是lua并 ...
- Java:集合类的区别详解
Java中集合类的区别 Array是数组,不在集合框架范畴之内,一旦选定了,它的容量大小就不能改变了,所以通常在编程中不选用数组来存放. 集合 : 集合对象:用于管理其他若干对象的对象 数组:长度不可 ...