UML基础概念(转)
UML基础概念
UML概述
uml简介
uml(unified Modeling Language )为面向对象软件设计提供统一的、标准的、可视化的建模语言。适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。
uml的定义包括UML语义和UML表示法两个部分。
(1)UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除因人而异的表示方法造成的影响。
(2)UML表示法:UML表示法定义UML符号的表示法,为开发者或者开发工具使用这些图形符号和文本语法为系统建模提供了标准。
UML模型图的构成
事物(things):UML模型中的最基本的构成元素,是具有代表性的成分的抽象。
关系(relationship):关系把事物紧密联系在一起。
图(Diagrams):图是关系和事物的可视化表示。
UML事物
UML包含4种事物:构件事物、行为事物、分组事物、注释事物。
构件事物:UML模型的静态部分,描述概念或者物理元素。
它包含以下几种:
类:具有相同属性相同操作相同关系相同语义的对象的描述
接口:描述元素的外部可见行为,即服务集合的定义说明
协作:描述了一组事物间的相互作用的集合。
用例:代表一个系统或系统的一部分行为,是一组动作序列的集合。
构件:系统中的物理存在,可替换的部件
节点:运行时存在的物理元素。
另外,参与者、信号应用、文档库、页表等都是上述基本事物的变体。
行为事物:UML模型图的动态部分,描述跨越空间和时间的行为。
交互:实现某功能的一组构件事物之间的消息的集合,涉及消息、动作序列、链接
状态机:描述事物或交互在生命周期内响应事件所经历的状态序列
分组事物:UML模型图的组织部分,描述事物的组织结构
包:把元素组织成组的机制
注释事物:UML模型图的解释部分,用来对模型中的元素进行说明,解释
注解:对元素进行约束或解释的简单符号。
UML关系
依赖(Dependecy):是两个事物之间的语义关系,其中的一个事物(独立事物)发生变化,会影响到另一个事物(依赖事物)的语义。
关联(association):是一种结构关系,它指明一个事物的对象与另一个事物的对象间的联系。
泛化(generalization):是一种特殊/一般的关系。也可以看作是常说的继承关系。
实现(realization):是类元之间的语义关系,其中的一个类元指定了由另一个类元保证执行的契约。
各UML图及特征
用例图(use case Diagram):是从用户角度描述系统功能,是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元。
类图(Class Diagram):描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联
对象图(Object Diagram):是类图的实例,几乎是用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类
顺序图(sequence Diagram):显示对象之间的动态合作关系,它强调对象之间的消息发送的顺序,同时显示对象之间的交互。顺序图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或引起状态转换的触发事件。
协作图(Collaboration Diagram):描述对象间的协作关系,协作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系 其用途是表示一个类操作的实现。
状态图(State Chart Diagram):是一个类对象所可能经历的所有历程的模型图。状态图由对象的各个状态和连接这些状态的转换组成
活动图(Activity Diagram):是状态图的一个变体,用来描述执行算法的工作流程中涉及到的活动。 描述一组顺序的或者并发的活动。
构件图(Component diagram):为系统的构件建模型--构件即构造应用的软件单元--还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响。
部署图(Deployment Diagram):描述位于节点实例上的运行构件实例的安排。节点上一组运行资源,如计算机、设备或者存储器。这个视图允许评估分配结果和资源分配。
各UML图的关系
UML语法描述
UML基础概念(转)的更多相关文章
- UML基础概念
UML概述 uml简介 uml(unified Modeling Language )为面向对象软件设计提供统一的.标准的.可视化的建模语言.适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程 ...
- 【UML】NO.70.EBook.9.UML.4.001-【PowerDesigner 16 从入门到精通】- 基础概念
1.0.0 Summary Tittle:[UML]NO.70.EBook.9.UML.4.001-[PowerDesigner 16 从入门到精通]- 基础概念 Style:DesignPatte ...
- UML基础与Rose建模实训教程
目 录 第1章 初识UML. 1 1.1 初识UML用例图... 1 1.2 初识UML类图... 3 第2章 Rational Rose工具... 6 2.1 安装与配置Rational Ro ...
- 【UML】UML基础知识
UML简介 统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述.可视化处理.构造和建立软件系统制品的文档. 它记录了对必须构造的系统的决定和理解,可用于对系统的理解. ...
- 【UML】概念、关联、画画(一)
最近画UML画画,于UML观看视频后还没有学会.它是的结果UML九图是不是太懂,我想加深绘制过程的理解,我一个新的水平. 现在我觉得是时候..地介绍一下UML.了解一下它的基本内容.达到深入浅出的效果 ...
- UML uml基础知识
uml基础知识 一.了解: uml是Unified Modeling Language的缩写,意思是统一建模语言或标准建模语言. UML规范用来描述建模的概念有,类(对象的).对象.关联.职责.行为. ...
- UML基础与应用总结
敲响一段键盘的乐响曲,一段路程留下一些足迹. UML.是Unified-Modeling-Language的缩写. 首先要明白知道它是一种可视化的建模语言. 什么是UML基 ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- TCP/IP基础概念及通信过程举例
TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...
随机推荐
- iostextField文本框基本使用
(1)可以根据需要设置文本框的样式(包括形状.边框颜色.背景等). (2)可以根据需要设置文字显示样式(包括输入密码时的密文显示.文字横向居中.纵向居中上下.输入的文字是否首席木大写.文字超过后是否缩 ...
- java中的静态变量
大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的对象共享同一个成员.此时就是 static 大显身手的时候了!! Java 中 ...
- IoC容器Autofac正篇之依赖注入(七)
依赖注入,这个专业词我们可以分为两个部分来理解: 依赖,也就是UML中描述事物之间关系的依赖关系,依赖关系描述了事物A在某些情况下会使用到事物B,事物B的变化会影响到事物A: 注入,医生通过针头将药物 ...
- php编译错误Note that the MySQL client library is not bundled anymore!
Note that the MySQL client library is not bundled anymore! 解决方法. 1. 查看系统有没有安装mysql header find / -na ...
- why TCP guarentee delivery?
Simple idea: just use a TIMEOUT, if no answer after a certain seconds, just re-deliver!
- UIImageView的UserInteractionEnabled什么时候为no
UIImageView作为背景,但直接把按钮或者UITextField放在上面无法相应事件 特殊子类的覆盖 userInteractionEnabled属性默认值为YES,但UIView的一些子类中对 ...
- ASP.NET多文件批量打包下载
在对多文件打包中用到了 DotNetZip 的方法来实现对多文件压缩打包.需要到http://dotnetzip.codeplex.com/处下载该文件,然后引用即可. Default.aspx: & ...
- 【转】PHP android ios相互兼容的AES加密算法
APP项目用户密码传输一直没有用HTTPS,考虑到用户的隐私暂时先用AES对密码加密,以后也可以用于手机端与服务端加密交互. PHP的免费版phpAES项目,手机端解码各种不对. 好不容易找了PHP ...
- iOS开发:后台运行以及保持程序在后台长时间运行
第一部分 1.先说说iOS 应用程序5个状态: 停止运行-应用程序已经终止,或者还未启动. 不活动-应用程序处于前台但不再接收事件(例如,用户在app处于活动时锁住了设备). 活动-app处于“使用中 ...
- cookie使用随笔
cookie是一种浏览器缓存,可以理解为存放在浏览器上的一种小文件. 大小数目限制: 不同浏览器对于大小和数目均有不一样的限制,大小一般为4k,数目从30~50个(视浏览器类型),以键值对的形式存储, ...