UML建模详解(3)—使用Rational Rose 画九种常用架构图

 

UML是一种建模语言,是系统建模的标准。我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几个问题:

(1).开发人员如何与用户进行沟通来了解系统的需求?

(2).开发人员之间如何沟通以确保各个部门能够无缝地协作?

(3).UML是我们在构造个特种模型时首选的一种建模工具,去描述系统的需求和设计,在对复杂的工程进行建模时,系统可由单一的图形来描述,但是单一图形不可能包含一个大系统所需的所有信息,更不可能描述系统的整体结构功能,这样一来就几乎不能用单一图形来建模了,而UML能从不同的角度去描述系统,如何处理好UML复杂系统建模?

使用RationalRose创建用例(Use Case)如图:

(1). 右击browser框中的Use CaseView包,弹出快捷菜单;

(2).选择New——Use Case项;

(3).输入用例的名字;(如出错,可用Rename命令更改)

(4).如果文档窗口不可见,选择屏幕上方的View——Documentation菜单;

(5).在browser框中选中所需用例;

(6).将光标置于文档框中,输入相应文档。

通过上面的学习我们了解了使用RationalRose创建图的具体操作步骤,其他几种图的创建方法类似,记住相应的单词就可以了。

(1).用例图:Use CaseDiagram

(2). 类图:Class Diagram

(3). 对象图:ObjectDiagram

(4). 状态图:StateDiagram

顺序图:Sequence Diagram

(1).协作图:Collaboration Diagram

(2).组件图:Component Diagram

(3).部署图:Deployment Diagram

(4.)活动图:Activity Diagram

如何用RationalRose提供的模型去画一张用例图:

1.用例图

步骤:

(1).双击browser框中的Use CaseView包中的Main条目,打开主用例图;

(2).单击选中browser框中的执行者,并将其拖到主用例图中;

(3). 重复第2)步,直到完成所需的工作为止;

(4).单击选中browser框中的用例,并将其拖到主用例图中;

(5). 重复第4)步,直到完成所需的工作为止;

(6). 在工具条中选择单向关联(UnidirectionalAssociation)图标;

(7).单击一个执行者,并拖到相应的用例上;或单击一个用例,并拖到相应的执行者上。

例图:

2.类图:

类图中主要说一下如何创建类的创建属性和方法

类图的工具类中的图标:

(1).创建一个最基本的类(含有类的名称即可)
(2).右击刚刚创建好的类选择 NewAttribute即可创建类的属性
(3).右击刚刚创建好的类选择 New Operation即可创建类的方法

如图:

例图:

3.对象图:

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

(1).一般方法

(2).只有类名,冒号和下划线

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

(3).只有对象名和下划线

隐藏了属性

4.状态图

(1).创建状态(States)

·        在工具条中选择State图标;

·        在状态图中单击要放置状态的位置;

·        输入状态的名字。(如出错,可用Rename命令更改)

(2).创建状态转换(StateTransitions)

·        在工具条中选择StateTransitions图标;

·        单击起始状态,并拖至下一个状态;

·        输入状态转换的名字。(如出错,可用Rename命令更改)

(3).创建起始状态

·        在工具条中选择Start图标;

·        在状态图中单击要放置起始状态的位置;

·        用状态转换线进行连接。

(4).创建结束状态

·        在工具条中选择Stop图标;

·        在状态图中单击要放置结束状态的位置;

用状态转换线进行连接。

例图:

5.顺序图

创建对象和信息

·        双击顺序图名称,打开顺序图;

·        将browser框UseCaseView包中的执行者拖入图中;

·        选择工具条中的“Object”图标;

·        单击图中放置对象的位置,并输入相应的名字;

·        重复3——4步;

·        选择工具条中的“ObjectMessage”图标;

·        从信息发出者拖至信息接收者;

·        输入信息的名字;

·        重复6——8步。

例图:

6.协作图

采取将顺序图转换为合作图的方法

双击顺序图名称,打开顺序图;

·        选择屏幕上方的菜单Browser——CreateCollaboration Diagram

·        调整图中的对象和信息,使其美观。

例图:

7.组件图

创建Main构件图(ComponentDiagram)

·        双击Main构件图中的University包,打开图形;

·        在工具条中选择Component图标;

·        单击图中某一位置,放置构件;

·        输入构件名称。

8.部署图

双击Browser框中的部署图(DeploymentDiagram);

.   选择工具条中的Processor图标,并单击图中某一位置;

·   输入结点的名字;

·   选择工具条中的Connection图标;

·   点击某一结点,拖至另一结点;

·   选择工具条中的Text图标;

·   在相应结点下写上文字。

下图是书中的一个例图:

9.活动图

  1. 创建活动(Activity)
  2. 创建决策点(Decision Points)
  3. 创建同步条(Synchronization Bar)
  4. 创建起始活动和终止活动

例图:网购下单的活动图:

2019-06-2314:41:08

Rational Rose 画九种常用架构图的更多相关文章

  1. rational rose画UML图

    原文见:http://blog.csdn.net/cjr15233661143/article/details/8532997 UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统 ...

  2. 【Algorithm】九种常用排序的性能分析

    最近间间断断的将9种排序算法用C实现,并且将其以博客笔记的形式记录下来,其中各个排序算法的描述部分特别参考了CSDN上太阳落雨的博客!现在就该来综合的分析这九种排序,让我们先来看看其算法复杂度和稳定性 ...

  3. Rational Rose的四种视图介绍

    Rose模型中有四种视图:Use Case View(用例视图),Logical View(逻辑视图),Component View(组建视图)和Deployment View(配置视图). 用例视图 ...

  4. IBM rational rose画时序图软件破解安装

    上边这个链接是开头的安装步骤,照着链接中的步骤安装完之后,接下来看下边. 1.然后安装完成打开软件“IBM Rational License Keyadministrator”.出现下图:选中第二项“ ...

  5. this的九种常用场景(转子jb51.net)

    [场景1]全局环境中的this指向全局对象 ; alert(a); b = ; alert( ; [场景2]对象内部函数的this指向调用函数的当前对象 ; var bar = { a: , test ...

  6. 三大UML建模工具Visio、Rational Rose、PowerDesign

    UML建模工具Visio .Rational Rose.PowerDesign的比较 应用最广的由两种种1. Rational Rose,它是ibm的 .2.Microsoft的 Microsoft ...

  7. 三大UML建模工具Visio、Rational Rose、PowerDesign的区别

    本文源自http://developer.51cto.com/art/201006/207993.htm UML建模工具Visio .Rational Rose.PowerDesign的比较   RO ...

  8. 【转】三大UML建模工具Visio、Rational Rose、PowerDesign的区别

    本文转自http://developer.51cto.com/art/201006/207993.htm UML建模工具相信大家有所了解,那么你对UML建模工具Visio .Rational Rose ...

  9. UML建模工具Visio 、Rational Rose、PowerDesign的比较

    UML建模工具Visio .Rational Rose.PowerDesign的比较   ROSE是直接从UML发展而诞生的设计工具,它的出现就是为了对UML建模的支持,ROSE一开始没有对数据库端建 ...

随机推荐

  1. C++ 标准库 std::npos 表示 size_t 的最大值

    参见:https://en.cppreference.com/w/cpp/algorithm/find std::npos 表示 size_t 的最大值,常用于对查找结果成功与否的判断. #inclu ...

  2. CSP-S 2019图论总结

    CSP-S 2019图论总结 一.最短路问题 模板 Floyd算法 void floyd() { memset(map,0x3f,sizeof(map)); for(int i=1;i<=n;i ...

  3. MongoTemplate 分组分页复合条件查询

    一.前言 最近项目使用MongoDB作为数据主要存取的地方 又是第一次接触MongoDB,也是踩了不少坑... 维护数据无非就是增删改查,而里面最复杂的就是查询了 所以来总结一下有关MongoDB的查 ...

  4. version_compare ()

    version_compare() ----对比两个「PHP 规范化」的版本数字字符串 version_compare ( string $version1 , string $version2 [, ...

  5. 【ECNU3510】燃烧吧,室友!(模拟)

    点此看题面 大致题意: 给你一个只含\(C,H,O\)的化学式,问需要几\(mol\)的氧气才能使其完全燃烧成\(CO_2\)和\(H_2O\). 模拟+化学 首先,我们模拟求出化学式中\(C,H,O ...

  6. Mybatis主配置文件配置url报错:Cause: org.xml.sax.SAXParseException; lineNumber: 15; columnNumber: 100; 对实体 "useSSL" 的引用必须以 ';' 分隔符结尾。

    <property name="url" value="jdbc:mysql://localhost:3306/shop?characterEncoding=UTF ...

  7. 9.28 csp-s模拟测试54 x+y+z

    T1 x 求出每个数的质因数,并查集维护因子相同的数,最后看一共有多少个联通块,$ans=2^{cnt}-2$ 但是直接分解会$T$,埃筛是个很好的选择,或者利用每个数最多只会有1个大于$\sqrt{ ...

  8. CentOS6.9安装SonarQube7.6

    1 安装前准备 Java (Oracle JRE 8 or OpenJDK 8) MySQL5.6 or MySQL5.7,具体可参考Centos6.9安装MySQL5.6 SonarQube7.6, ...

  9. CSP-S 2019 AFO记

    DAY -1 上午并没有改出题,然而调出了动态$dp$,于是顺便$AC$了保卫王国,于是就很愉悦. 下午考前自闭赛,把会的题和原题写了出来,然后就$rank1$了,感觉自己$rp--$. 晚上发现$T ...

  10. erlang 资源

    https://github.com/ninenines https://github.com/drobakowski https://github.com/dizzyd