统一建模语言 UML
目录
- 统一建模语言 UML
- UML定义了5类10种模型图
- 一用例图用于建立需求模型
- 二静态图主要描述系统的静态表示和关系包括类图包图对象图
- 三行为图描述系统动态模型和对象组成的交换关系包括状态图和活动图
- 四交互图用于描述对象间的交互关系由一组对象和它们之间的关系组成包含它们之间可能传递的消息
- 五实现图就是指示如何组织构件和具体的构件部署到具体的节点上包含组件图和部署图
- 画图工具
- 图例介绍
统一建模语言 UML
UML(Unified Modeling Language)的是要成为一种标准的统一语言,使得IT专业人员能够进行计算机应用程序的建模。
UML的主要创始人是JimRumbaugh、IvarJacobson和GradyBooch,他们最初都有自己的建模方法(OMT、OOSE和Booch),彼此之间存在着竞争。最终,他们联合起来创造了一种开放的标准。
UML成为"标准"建模语言的原因之一在于,它与程序设计语言无关。而且,UML符号集只是一种语言而不是一种方法学。因为语言与方法学不同,它可以在不做任何更改的情况下很容易地适应任何公司的业务运作方式。
UML不是一种方法学,不需要任何正式的工作产品。而且它还提供了多种类型的模型描述图(diagram),当在某种给定的方法学中使用这些图时,它使得开发中的应用程序的更易理解。UML的内涵远不只是这些模型描述图,但是对于入门来说,这些图对这门语言及其用法背后的基本原理提供了很好的介绍。通过把标准的UML图放进工作产品中,精通UML的人员就更加容易加入项目并迅速进入角色。最常用的UML图包括:用例图、类图、序列图、状态图、活动图、组件图和部署图。
- 1、UML定义了5类,10种模型图
五种类图定义:
一、用例图:用于建立需求模型
1.用例图(UseCaseDiagram):从用户角度描述系统功能,并指各功能的操作者;主要用来描述用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。
二、静态图:主要描述系统的静态表示和关系;包括类图,包图,对象图。
2.类图(ClassDiagram):描述系统中类的静态结构。是显示了一组类、接口、协作以及他们之间的关系。在UML中问题域最终要被逐步转化,通过类来建模,通过编程语言构建这些类从而实现系统。类加上他们之间的关系就构成了类图,类图中还可以包含接口、包等元素,也可以包括对象、链等实例。
3.包图(PackageDiagram):是包和类组成的,表示包与包之间的关系,包图描述系统的分层结构。
4.对象图(ObjectDiagram):是类图的实例,几乎使用与类图完全相同的标示。使用对象图来说明数据结构,类图中的类或组件等的实例的静态快照。对象图和类图一样反映系统的静态过程,但它是从实际的或原型化的情景来表达的。
三、行为图:描述系统动态模型和对象组成的交换关系。包括状态图和活动图
5.活动图(ActiveDiagram):描述了业务实现用例的工作流程。一种特殊的状态图,展现了系统内一个活动到另一个活动的流程。活动图有利于识别并行活动。
6.状态图(StateDiagram):是描述状态到状态控制流,常用于动态特性建模,由状态、转换、事件和活动组成,描述类的对象所有可能的状态以及事件发生时的转移条件。通常状态图是对类图的补充,仅需为那些有多个状态的、行为随外界环境而改变的类画状态图。
四、交互图:用于描述对象间的交互关系,由一组对象和它们之间的关系组成,包含它们之间可能传递的消息。
交互图又分为序列图和协作图,其中序列图描述了以时间顺序组织的对象之间的交互活动;协作图强调收发消息的对象的结构组织。
7.顺序图(SequenceDiagram):对象之间的动态合作关系,强调对象发送消息的顺序,同时显示对象之间的交互
8.协作图(CollaborationDiagram):描述对象之间的协助关系
五、实现图:就是指示如何组织构件和具体的构件部署到具体的节点上。包含组件图和部署图
9.组件图(ComponentDiagram):展现了一组组件的物理结构和组件之间的依赖关系。部件图有助于分析和理解组件之间的相互影响程度。
10.部署图(DeploymentDiagram):展现了运行处理节点以及其中的组件的配置。部署图给出了系统的体系结构和静态实施视图。它与组件图相关,通常一个节点包含一个或多个构建。
画图工具
1.UML建模工具Visio 、RationalRose、PowerDesign。
2.ProcessOn在线设计器支持UML统一建模语言的定义和语义,同时支持UML的用例图和静态图在线建模。
图例介绍
1.用例图(UseCaseDiagram)
2.类图(ClassDiagram)
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)
3.包图(PackageDiagram)
4.对象图(ObjectDiagram)
5.活动图(ActiveDiagram)
6.状态图(StateDiagram)
7.顺序图(SequenceDiagram)——时序图
8.协作图(CollaborationDiagram)
9.组件图(ComponentDiagram)
10.部署图(DeploymentDiagram)
转自:http://blog.csdn.net/xinyuan_java/article/details/51589627
统一建模语言 UML的更多相关文章
- 统一建模语言(UML) 版本 2.0
原文: http://www.ibm.com/developerworks/cn/rational/321_uml/ 简介 参考 UML 基础系列的其他文章和教程 UML基础: 统一建模语言简介 UM ...
- 统一建模语言——UML
一.UML概述 Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的 ...
- 统一建模语言(UML,Unified Modeling Language)
Something about UML: 统一建模语言(UML,英语:Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建 ...
- 统一建模语言 UML (2)
UML的图 1.用例图(use case diagram) 用例图(Use Case Diagram)是被称为参与者(Actor)的外部用户所能观察到的系统功能的模型图 列出系统中的用例和参与者 显示 ...
- UML(统一建模语言)
最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...
- [本体论][UML][统一建模语言][软件建模][OWL]从本体论到UML到OWL
以下内容,是关于软件建模的方法与思路. UML与OWL都是基于本体论的建模语言. 本体论(哲学) 本体论(信息科学) UML(统一建模语言) more info 参考:[设计语言][统一建模语言][软 ...
- [设计语言][统一建模语言][软件开发方法学][UML] UML
背景介绍 UML是一种统计建模语言. WIKI: https://en.wikipedia.org/wiki/Unified_Modeling_Language UML是OMG (object man ...
- UML(统一建模语言)是通用的可视化标准建模语言。由构造块、公共机制、构架三部分组成。
UML UML(统一建模语言)是通用的可视化标准建模语言.由构造块.公共机制.构架三部分组成. 1.构造块:包括基本的UML建模元素(类.接口.用例等).关系(关联关系.依赖关系.泛化关系.实现关系) ...
- UML建模学习1:UML统一建模语言简单介绍
一什么是UML? Unified Modeling Language(UML又称为统一建模语言或标准建模语言)是国际对象管理组织OMG制定的一个通 用的.可视化建模语言标准.能够用来描写叙述(spec ...
随机推荐
- Ubuntu 10.04 安装Qt4.8.1 源码后字体模糊的问题
Ubuntu 10.04 安装QT4.8.1 源码后字体模糊的问题. 附加解决 QT SDK 4.8.1 链接失败的问题 Ubuntu 10.04 编译QT源码后,编译程序,运行后IPA字体无法正常显 ...
- Putty设置删除
1. 开始→运行→cmd(进入字符界面) 2.切换目录到putty安装目录 3.执行以下清理命令 4.会跳出如下提示信息 点击[是(Y)]
- Android中如何实现文件下载
最近做一个项目需要从服务器下载图片到本地sdcard,上网查找了一些例子,下面这个比较合适,原文内容如下: 我们在开发中经常需要从服务器下载文件,下载的内容可能有交换的信息,缓存的图片,程 ...
- CodeForces 445B. DZY Loves Chemistry(并查集)
转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents 题目链接:http://codeforces.com/problemset/prob ...
- HIVE HBASE 整合
一直想将hbase 与hive整合在一起,因为公司项目工期一期紧似一期,故一直推后.还不知道推到什么时候呢. 今天尝试编译hive,看着官方文档.感觉非常easy: 1.svn co http://s ...
- Python istitle() 方法
描述 istitle() 方法检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写. 语法 istitle() 方法语法: S.istitle() 参数 无. 返回值 如果字符串中所有的单词拼 ...
- HTML - SELECT默认选中
除了在option中定义属性selected = "selected",还可以 <select defaultValue='2'> <option value=& ...
- unity, texture import settings
如果图片带透明通道,则若勾选Alpha Is Transparency,图片会呈现透明的预览效果. 但Alpha Is Transparency勾选与否是否影响shader的输出效果目前我还不太清 ...
- [sh]函数+条件表达式
了解了下shell的函数和case语句: 函数格式: function(){ } 例子: function rsyncstart() { if [ "${status1}X" == ...
- 对Android的恶意吐槽(勿看,有毒)
CSDN博客:http://blog.csdn.net/niu_gao 我觉得android系统中有一个特恶心人的大败笔.就是这个大败笔造成了android系统的卡卡卡不停. 这个大败笔就是对acti ...