[转]解析UML建模语言中的UML图分类、 UML各种图形及作用
本文向大家介绍一下UML图分类,作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。 UML图大致可分为五类,共有九种图形。
AD:
本文和大家重点讨论一下UML图分类,标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义。请看下面详细介绍。
UML图分类
--------------------------------------------------------------------------------
作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。
(1) UML语义
描述基于UML的精确元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。此外UML还支持对元模型的扩展定义。
(2) UML表示法
定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。
标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义:
◆第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。
◆第二类是静态图(Static diagram),包括类图、对象图和包图。
UML图分类中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。
类图描述的是一种静态关系,在系统的整个生命周期都是有效的。对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对
象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。包由包或类组成,表示包与包之间的关
系。包图用于描述系统的分层结构。
◆第三类是行为图(Behavior diagram)
描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在
实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要进行的活动以及活
动间的约束关系,有利于识别并行活动。
◆第四类是交互图(Interactive diagram)
描述对象间的交互关系。UML图分类中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描述对象
间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序
图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。
◆第五类是实现图( Implementation diagram )
其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。部件图有助于分析和理解部件之间的相互影响程度。
配置图定义系统中软硬件的物理体系结构。它可以显示实际的计算机和设备(用节点表示)以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。在节点内部,放置可执行部件和对象以显示节点跟可执行软件单元的对应关系。
从应用的角度看,当采用面向对象技术设计系统时,首先是描述需求;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是描述系统的行为。其
中在第一步与第二步中所建立的模型都是静态的,包括用例图、类图(包含包)、对象图、组件图和配置图等五个图形,是标准建模语言UML的静态建模机制。其
中第三步中所建立的模型或者可以执行,或者表示执行时的时序状态或交互关系。它包括状态图、活动图、顺序图和合作图等四个图形,是标准建模语言UML的动
态建模机制。因此,UML图分类也可以归纳为静态建模机制和动态建模机制两大类。
附录:
2012-11-30 22:37 1188人阅读 评论(0) 收藏 举报
分类 |
图的名字 |
介绍 |
|
结 构 型 图 |
静 态 图 |
类图(Class Diagram) |
类图用于定义系统中的类,包括描述类之间的联系(如:关联、依赖、聚合)以及类的内部结构,即类的属性和操作。因此类图是描述系统中类的静态结构,即它所描述的是一种静态关系,在系统的整个生命周期都是有效的。 |
对象图(Object Diagram) |
对象图所使用的表示符号与类图几乎完全相同,它们的不同点在于对象图只是显示类的对象实例,而不是实际的类。一个对象图是类图的一个实例,由于对象存在生命周期,因此对象图只能在系统某一时间段存在。 对象图是类图的一种实例化图,描述系统在某个时刻可能包含的对象和相互关系。 |
||
包图(Package Diagram) |
包图由包或类组成,主要表示包与包、或包与类之间的关系。包图用于描述系统的分层结构。 |
||
实 现 图 |
构件图(Component Diagram) |
描述可以部署的软件构件(如:代码部件、jar文件、EJB文件等)的物理结构以及各部件之间的依赖关系。一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。构件图有助于分析和理解部件之间的相互影响程度。 |
|
部署图(Deployment Diagram) |
描述一个系统的拓扑结构,定义系统中软硬件的物理体系结构。它可以显示实际的计算机和设备(用节点表示)以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。在节点内部,放置可执行部件和对象,以显示节点跟可执行软件单元之间的对应关系。 |
||
行 为 型 图 |
用例图(Use Case Diagram) |
它从用户角度描述系统的功能,并指出各功能的操作者。用例图描述了一系列的角色和使用案例及它们之间的关系。 |
|
行 为 图 |
活动图(Activity Diagram) |
行为图描述系统的动态模型和组成对象间的交互关系。 活动图描述为满足用例要求所要进行的活动以及活动间的约束关系。活动图是使用例图所描述的行为具体化。 |
|
状态图(State Diagram) |
描述一类对象的所有可能的状态以及事件发生时状态的转移条件。通常状态图是对类图的补充,实际上并不需要为所有的类绘制状态图,而只需要为那些有多个状态、并且其行为受外界环境的影响而会发生改变的类绘制状态图。 |
||
交 互 图 |
时序图/序列图/顺序图(Sequence Diagram) |
交互图描述对象间的交互关系。 顺序图用于显示对象之间的动态合作关系。它强调对象之间消息发送的顺序,同时也显示对象之间的交互过程,它强调的是时间和顺序。 |
|
合作图/协作图(Collaboration Diagram) |
合作图显示对象间的动态合作关系,除了显示信息交换外,合作图还显示对象以及它们之间的关系,它强调的是通信关系。 |
[转]解析UML建模语言中的UML图分类、 UML各种图形及作用的更多相关文章
- [时序图笔记] 步步为营UML建模系列五、时序图(Squence diagram)【转】
概述 顺序图是一种详细表示对象之间以及对象与参与者实例之间交互的图,它由一组协作的对象(或参与者实例)以及它们之间可发送的消息组成,它强调消息之间的顺序. 顺序图是一种详细表示对象之间以及对象与系统外 ...
- UML建模—EA创建Class(类图)
1.新建类图 2.添加类或接口 在类图可以捕获系统-类-和模型组件的逻辑结构.它是一个静态模型,描述存在什么,有哪些属性和行为,而不管如何去做. 说明关系之间的类和接口; 泛化. 聚合和关联是在分别反 ...
- UML实例教程 解析UML建模分析与设计
UML统一建模语言在软件开发过程中非常实用,UMl建模的分析与设计你是否熟悉,这里就通过实例向大家介绍,希望通过本文的学习,你对UML建模的分析与设计方法有一定的了解. 本节向大家介绍一下图书管理系统 ...
- 三大UML建模工具Visio、Rational Rose、PowerDesign
UML建模工具Visio .Rational Rose.PowerDesign的比较 应用最广的由两种种1. Rational Rose,它是ibm的 .2.Microsoft的 Microsoft ...
- Rose与PowerDesigner:两款UML建模工具的对比
声明 本文转载自:Rose与PowerDesigner:两款UML建模工具的对比 正文 本文和大家重点讨论一下Rose与PowerDesigner:两款UML建模工具的对比,Rose和PowerDes ...
- 五款免费的UML建模工具
1.免费UML建模工具推荐:JUDE–community 2.免费UML建模工具推荐:UMLet 3.免费UML建模工具推荐:ArgoUML 4.免费UML建模工具推荐:BOUml 5.免费UML建模 ...
- 关于ER图和UML图之间的对比
ER图与UML图 ER图:实体-联系图(Entity-Relation Diagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象).属性和联系的方法,用来 ...
- UML从需求到实现---类图(1)
上次写到了UML的包图,用例等:接上:UML从需求到实现---包图 按照UML中图的出现顺序.当做完包图以后.我们下一步要做的当然是类图,类图也是UML中的三大核心图之一. 看到很多文章在描述类图的时 ...
- 面向对象基础及UML建模语言
1.面向对象的方法起源于面向对象程序设计语言,其发展过程大体经历了初始阶段.发展阶段和成熟阶段. 2.面向对象方法主要优点 (1)从认识论的角度可以看出,面向对象方法改变了开发软件的方式. (2)面向 ...
随机推荐
- HDP-2.6.1安装
1.首先安装HDP的Ambari仓库文件到本机的/etc/yum.repos.d/ambari.repo路径下
- python基础===trheading 模块
'''threading模块''' import threading import time def music(func): for i in range(2): print("[+]i ...
- Perl中文件读取操作
Perl中文件读取操作 http://blog.csdn.net/yangxuan12580/article/details/51506216
- tornado当用户输入的URL无效时转入设定的页面
今天做web的测验..坑爹的要用tornado...作为一个比较新的用的人还不多的东东...查资料好麻烦.. 下面是当用户输入非法 url时, 显示一个自定义 404 页面提示用户,其访问的页面不存在 ...
- 【UOJ#164】清华集训2015V
QwQzcysky真是菜死了,这是我刚上高一的时候坤爷在夏令营讲的,可是今天才切掉…… 想想也神奇,一个2016.11才学会线段树的菜鸡,夏令营的时候居然听过Segment-Tree-Beats? 所 ...
- leetcode 之Reorder List(25)
找到中间结点,将后半部分反转接入即可. ListNode *reoderList(ListNode* head) { if (head == nullptr || head->next == n ...
- iOS---弹出提示对话框
一.就一个选项的对话框 代码块 #pragma mark - 封装弹出对话框方法 // 提示错误信息 - (void)showError:(NSString *)errorMsg { // 1.弹框提 ...
- SnagIt截图后无法在编辑器打开,不显示截图内容的解决办法(转)
方法1: 用SnagIt截图后,弹出的编辑器里不显示刚才截图的内容,解决办法如下: 完全退出Snagit和编辑器,删除以下文件夹: Win7用户 C:\Users\Administrator\AppD ...
- Python urllib2 设置超时时间并处理超时异常
可以使用 except: 捕获任何异常,包括 SystemExit 和 KeyboardInterupt,不过这样不便于程序的调试和使用 最简单的情况是捕获 urllib2.URLError try: ...
- PHP 边执行边输出
<?php for ($i = 1; $i <= 5; $i++) { print "#$i 完毕<hr>"; sleep(1); print str_pa ...