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

  • 开发人员如何与用户进行沟通来了解系统的需求?
  • 开发人员之间如何沟通以确保各个部门能够无缝地协作?
  • UML是我们在构造个特种模型时首选的一种建模工具,去描述系统的需求和设计,在对复杂的工程进行建模时,系统可由单一的图形来描述,但是单一图形不可能包含一个大系统所需的所有信息,更不可能描述系统的整体结构功能,这样一来就几乎不能用单一图形来建模了,而UML能从不同的角度去描述系统,它提供了九种图,下面我们用一张图去对比这九种图的用途

    说完这九种图用途,下面我们该了解一下怎样使用工具创建图,使用的工具是Rational Rose

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

    1. 右击browser框中的Use Case View包,弹出快捷菜单;
    2. 选择New——Use Case项;
    3. 输入用例的名字;(如出错,可用Rename命令更改)
    4. 如果文档窗口不可见,选择屏幕上方的View—— Documentation菜单;
    5. browser框中选中所需用例;
    6. 将光标置于文档框中,输入相应文档。

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

    1. 用例图:Use Case Diagram
    2. 类图:Class Diagram
    3. 对象图:Object Diagram
    1. 状态图:State Diagram
    1. 顺序图:Sequence Diagram
    2. 协作图:Collaboration Diagram
    3. 组件图:Component Diagram
    4. 部署图:Deployment Diagram
    5. 活动图:Activity Diagram

    接着我们来了解如何用Rational Rose 提供的模型去画一张属于自己同时别人也能看得懂的图

    1.用例图

    1. 双击browser框中的Use Case View包中的Main条目,打开主用例图;
    1. 单击选中browser框中的执行者,并将其拖到主用例图中;
    1. 重复第2)步,直到完成所需的工作为止;
    1. 单击选中browser框中的用例,并将其拖到主用例图中;
    1. 重复第4)步,直到完成所需的工作为止;
    2. 在工具条中选择单向关联(Unidirectional Association)图标;
    3. 单击一个执行者,并拖到相应的用例上;或单击一个用例,并拖到相应的执行者上。

    例图:

    ·

    2.类图

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

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

    如图:

    例图:

    3.对象图:

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

    a.一般方法

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

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

    c.只有对象名和下划线

    隐藏了属性

    4.状态图

    a.创建状态(States)

    1. 在工具条中选择State图标;
    2. 在状态图中单击要放置状态的位置;
    3. 输入状态的名字。(如出错,可用Rename命令更改)

    b.创建状态转换(State Transitions)

    1. 在工具条中选择State Transitions图标;
    2. 单击起始状态,并拖至下一个状态;
    3. 输入状态转换的名字。(如出错,可用Rename命令更改)

    c.创建起始状态

    1. 在工具条中选择Start图标;
    2. 在状态图中单击要放置起始状态的位置;
    3. 用状态转换线进行连接。

    d.创建结束状态

    1. 在工具条中选择Stop图标;
    2. 在状态图中单击要放置结束状态的位置;

    用状态转换线进行连接。

    例图:

    5.顺序图

    创建对象和信息

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

    例图:

    6.协作图

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

    1. 双击顺序图名称,打开顺序图;
    2. 选择屏幕上方的菜单Browser——Create Collaboration Diagram
    3. 调整图中的对象和信息,使其美观。

    例图:

    7.组件图

    创建Main构件图(Component Diagram)

    1. 双击Main构件图中的University包,打开图形;
    2. 在工具条中选择Component图标;
    3. 单击图中某一位置,放置构件;
    4. 输入构件名称。

  • 8.部署图

    1. 双击Browser框中的部署图(Deployment Diagram)
    1. 选择工具条中的Processor图标,并单击图中某一位置;
    2. 输入结点的名字;
    3. 选择工具条中的Connection图标;
    4. 点击某一结点,拖至另一结点;
    5. 选择工具条中的Text图标;
    6. 在相应结点下写上文字。

    下图是书中的一个例图:

    9.活动图

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

    以上就是我在学习了UML画图之后的理解,但是验收之后我最大也是最多的一个问题就是命名的时候给人家加上了空格,这样会在生成代码的时候造成很大麻烦,图还没来得及改正,记录一下我第一遍的收获,接着第二遍会有不一样的收获!

    转载:UML总结(对九种图的认识和如何使用Rational Rose 画图)

UML总结(对九种图的认识和如何使用Rational Rose 画图)相关推荐

  1. (UML两个汇总)九种图。

    最后总结UML关系,有明确的关系,现在让我们总结一下UML九图..图往往比文字要直观,因此,当我们开发软件.文件必须是不可或缺的人物,. 以下我将这九种图分了一下: 我们还能够将这九种图分为静态图和动 ...

  2. UML总结---UML九种图关系说明

    UML中包括九种图:用例图.类图.对象图.状态图.时序图.协作图.活动图.组件图.配置图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...

  3. UML总结之九种模型图

                   UML视频中关于九种图的视频已经看完,在开始RUP的视频之前,我想先把这部分做个总结,或许是一个"归零"的过程,要不然这块的学习会乱到不可理的.   ...

  4. 讨论UML概念和模型UML九种图。

    文件夹: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图.在每一种视图中都包括一个或多种图. 本文我们重点解说UML每种图的细节问题: 1.用例图(use case d ...

  5. 浅谈UML的概念和模型之UML九种图

    文件夹: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包括一个或多种图.本文我们重点解说UML每种图的细节问题: 1.用例图(use case di ...

  6. 一缕黑暗中的火光-----------UML九种图、开发过程中英文名称对照--------------优雅的建模语言...

    UML九种图 类图 1.类图描述系统中类的静态结构.不仅定义系统中的类,表示类之间的联系如关联.依赖.聚合等,也包括类的内部结构(类的属性和操作) 2.类图是以类为中心来组织的,类图中的其他元素或属于 ...

  7. UML的九种图+包图

    UML的九种图:用例图,类图,对象图,状态图,活动图,序列图,协作图,构件图,部署图.外加包图. (一).用例图 1.定义:由参与者(Actor).用例(Use Case)以及它们之间的关系构成的用于 ...

  8. UML之九种图和包图

    UML是一种模型化语言,而模型大多以图表的方式表现出来,一份典型的建模图表通常包含几个块或框,连接线和作为模型附加信息之用的文本,这些虽然简单却很重要,在UML中相互联系和扩展,因此从图的方面对UML ...

  9. UML 是什么,包括什么,九种图

    UML 是一种可视化的面向对象建模语言 UML 描述了一个系统的静态结构和动态行为 UML 用图形方式表现典型的面向对象系统的整个结构 UML的基本构造块 事物,关系,图 事物 构成模型图的一些基本图 ...

最新文章

  1. ubuntu 编译源码包 dsc diff.gz orig.tar.gz
  2. RHEL6网络相关配置
  3. 索泰显卡超频软件测试要多少时间,显卡超频测试_索泰 GTX 760 2GD5 至尊OC+_显卡评测-中关村在线...
  4. Ihttphander获取session
  5. 韩顺平循序渐进学java 第13讲 抽象类.接口
  6. “约定优于配置”与Magento改造尝试四之block、helper和model载入
  7. Solr部分更新MultiValued的Date日期字段时报错及解决方案:Invalid Date String:‘Mon Sep 14 01:48:38 CST 2015‘
  8. 54 计算机与信息科学类,计算机与信息科学类专业包括哪些
  9. 微信小程序unionid获取问题
  10. mongodb E11000 duplicate key error collection: index: _id_ dup key
  11. 小学计算机知识题,小学信息技术基础知识试题
  12. 【转载】Deferred Shading
  13. 这个教人写出烂代码的项目在 GitHub 上火了...
  14. 监控-Kafka Manager
  15. 大家一起来谈论C#的前途
  16. 基于Java计算器 科学计算器与标准计算器相互转化
  17. Ant Design Vue 菜单刷新后保持菜单选中/点击菜单,收起其他展开的所有菜单,保持菜单聚焦简洁
  18. iOS大神牛人的博客集合
  19. 《不只是美:信息图表设计原理与经典案例》—— 2.7 更加灵活
  20. UI设计到底是什么:什么叫ui设计?

热门文章

  1. 使用GDB调试器(一)
  2. 学习 ASP.NET MVC (第五回)理论篇
  3. 标准正态分布的积分怎么求?
  4. 为何数据治理如此重要
  5. 大数据应用需注意哪些安全问题
  6. android return 如何跳出两个循环_PHP跳出循环的方法
  7. python压缩数据数组长度_python – 如何解压缩字节数组中的gzipped数据?
  8. python中matplotlib库饼图_python 使用 matplotlib.pyplot来画柱状图和饼图
  9. DataSet/DataFrame性能比RDD高?
  10. kafka的消费顺序_Kafka原理和实践云平台技术栈13