统一建模语言 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 ...
随机推荐
- C#实现foreach
方法:一.继承既有的接口 如:CollectionBase.DictionaryBase class TestForeach: CollectionBase { public void Add(str ...
- FA_固定资产六大业务增加、修改、报废、在建、折旧、盘点概述(概念)
2014-06-04 Created By BaoXinjian
- STL之内存处理
说明:本文仅供学习交流,转载请标明出处,欢迎转载! STL中与内存配置相关的类是allocator类,头文件为:#include<alllocator>这是一个模板类,用于内存的分配.对象 ...
- mysql-5.7 innodb_buffer_pool刷新机制详解
一.innodb的脏页刷新机制说明: 1.当innodb中的脏页比例超过innodb_max_dirty_pages_pct_lwm的值时,这个时候innodb就会开始刷新脏页到磁盘. 2.当inno ...
- linux安装php环境,yum安装php环境
用yum来管理安装Apache PHP Mysql的基本安装.1. 安装Apahce, PHP, Mysql, 以及php连接mysql库组件.yum -y install httpd php mys ...
- oracle递归层级查询 start with connect by prior
递归层级查询:start with connect by prior 以部门表作为解析 表结构:dept{id:'主键',name:'部门名称',parent_id:'父亲id'} select * ...
- [svc]免费证书认证
1.申请免费域名(12个月) freenom.com 2.申请免费证书(3个月) git clone https://github.com/letsencrypt/letsencrypt cd let ...
- 《Android源代码设计模式解析与实战》读书笔记(二十)
第二十章.适配器模式 适配器模式是结构型设计模式之中的一个,它在我们的开发中使用率极高,比方ListView.GridView以及RecyclerView都须要使用Adapter. 1.定义 适配器模 ...
- maven(3)------maven构建web项目详细步骤
eclipse集成工具,轻松通过maven构建web项目步骤如下: 一, 右键,new -->project, 进入下一页面 二,选择"Maven Project", 点击下 ...
- C++ 11 auto关键字
熟悉脚本语言的人都知道,很多脚本语言都引入了“类型自动推断”技术:比如Python,可以直接声明变量,在运行时进行类型检查.随着C++11标准的发布,C++语言也引入了类型自动推断的功能,这就是我们今 ...