UML 总结

发布于: 2020 年 06 月 22 日

统一建模语言(Unified Modeling Language, UML)是一种绘制软件蓝图的标准语言。可以用UML对软件密集型系统的制品进行可视化、详述、构造和文档化。

一个健康的软件组织除了生产可执行代码之外,还要给出各种制品。这些制品包括(但不限于):

需求、体系结构、设计、源代码、项目计划、测试、原型、发布……

很多领域已经有效地应用了UML:

企业信息系统、银行和金融服务、电信、运输、国防/航天、零售、医疗电子、科学、基于web的分布式服务……

UML词汇表包含三种构造块: 事物、关系、图

事物:结构事物、行为事物、分组事物、注释事物。

基本结构事物:

1、类(class)是对一组具有相同属性、相同操作、相同关系和相同语义的对象的描述。

矩形,矩形中通常包括类的名称、属性和操作。

2、接口(interface)是一组操作的集合,其中的每个操作描述了类或者构件的一个服务。

矩形,在名称的上方标注着关键字<<interface>>

接口很少单独出现,把由类提供的对外接口表示成用线连接到类的一个小圆圈,把类向其他类请求的接口表示成用线连接到类的半个小圆圈。

3、协作(collaboration)定义了一个交互,它是由一组共同工作以提供某种协作行为的角色和其他元素构成的一个群体,这些协作行为大于所有元素的各自行为的综合。协作具有结构、行为和维度。

虚线椭圆

4、用例(user case)是对一组动作序列的描述,系统执行这些动作将产生对特定的参与者有价值而且可观察的结果。用例是通过协作实现的。

实现椭圆,通常只包含名称

5、主动类(active class)至少拥有一个进程或线程,能够启动控制活动。

通常包含名称属性和操作

6、构件(component)是系统设计的模块化部件,将实现隐藏在一组外部接口背后。

7、制品(artifact)是系统中物理的而且可替换的部件,它包括物理信息。

如源代码文件、可执行程序和脚本。

矩形,在名称的上方标注着关键字<<artifact>>

8、结点(node)是在运行时存在的物理元素,它表示一个计算机资源,通常至少有一些记忆能力吗,还经常有处理能力。

立方体,通常只写名称

基本结构事物有变体,如参与者、信号、实用程序、进程和线程(两种主动类)、应用、文档、文件、库、页和表……

基本行为事物:

是UML模型的动态部分。他们是模型中的动词,代表了跨越时间和空间的行为。

1、交互(interaction)由特定语境中共同完成一定任务的一组对象或角色之间交换的消息组成。

交互涉及一些其他元素,包括消息、动作和连接件。

消息:一条有方向的直线,通常在其上总是带有操作名。

2、状态机(state machine)描述了一个对象或一个交互在生命期内响应事件所经历的状态序列以及它对这些事件做出的响应。

状态机涉及到一些其他元素,包括状态、转移(从一个状态到另一个状态)、事件(触发转换的事物)和活动(对一个转移的响应)。

圆角矩形,通常含有状态的名字及其子状态

3、活动(activity)描述了计算过程执行的步骤序列。

交互注重的是一组进行交互的对象,状态机注重的是一定时间内一个对象的生命周期,活动注重的是步骤之间的流而不关心哪个对象执行哪个步骤。

活动的一个步骤成为一个动作。画成一个圆角矩形,指明用途的名字。

状态和动作靠不同的语境得以区分。

分组事物:

是UML模型的组织部分。是一些由模型分解成的"盒子"。主要分组事物就是包。

包(package)用于对设计本身进行组织的通用机制,用来组织实现构造物的。

带标签的文件夹(一个左上角带有一个小矩形的大矩形),在矩形中通常仅包含包的名称,有时有其他内容。

包是用来组织UML模型的基本分组事物。有变体,如框架、模型和子系统……

注释事物:

UML模型的解释部分。用来描述、说明和标注模型中的任何元素。主要的注释事物是注解

注解(note)是依附于一个元素或一组元素之上对它进行约束或解释的简单符号。

右上角是折角的矩形,带有文字或图形解释。

有变体,如需求

UML中的基本关系: 依赖、关联、泛化、实现

依赖(dependency)是两个模型元素间的语义关系,其中一个元素(独立元素)发生变化会影响另一个元素(依赖元素)的语义。

有方向的虚线,有时还带有一个标记

关联(association)是类之间的结构关系,描述一组链,链是对象(类的实例)之间的连接。

聚合是一种特殊类型的关联,描述了整体和部分间的结构关系。

实线,可能有方向,可能有标记,经常含有多重性和端名这样的装饰。

泛化(generalization)是一种特殊/一般的关系,其中特殊元素(子元素)基于一般元素(父元素)而建立。

空心箭头的实线,指向父元素

实现(realization)是类目之间的语义关系,其中一个类目指定了由另一个类目保证执行的合约。

空心箭头的虚线

基本关系事物也有变体,例如精化、跟踪、包含和扩展。

UML中的图:类图、对象图、构件图、组合结构图、用例图、顺序图、通信图、状态图、活动图、部署图、包图、定时图、交互概览图

1、类图

class diagram 展现了一组类、接口、协作和他们之间的关系。

2、对象图

object diagram 展现了一组对象以及他们之间的关系。

3、构件图

component diagram 展现了一个封装的类和它的接口、端口以及由内嵌的构件和连接件构成的内部结构。

4、组合结构图

5、用例图

use case diagram 展现了一组用例、参与者及他们之间的关系。

6、顺序图

sequence diagram 是强调消息的时间次序的交互图

7、通信图

communication diagram 强调收发消息的对象或角色的结构组织。

顺序图和通信图都是交互图。交互图(interaction diagram)展现了一种交互,它由一组对象或者角色以及它们之间可能发送的消息构成。

8、状态图

state diagram 展现了一个状态机,它由状态、转移、事件和活动组成。

9、活动图

activity diagram 将进程或其他计算的结构展示为计算内部一步一步的控制流和数据流。

10、部署图

deployment diagram 展现了对运行时的处理结点以及在其中生存的构件的配置。

11、包图

package diagram 展现了由模型本身分解而成的组织单元以及他们的依赖关系。

12、定时图

timing diagram 是一种交互图,展现了消息跨越不同对象或者角色的实际时间,而不仅仅是关心消息的相对顺序。

13、交互概览图

interaction overview diagram 是活动图和顺序图的混合物。

制品图

artifact diagram 展现了计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。

系统的体系结构:

系统的用例视图,系统的设计视图,系统的交互视图,系统的实现视图

系统的用例视图由描述可被最终用户、分析人员和测试人员看到的系统行为的用例组成。描述了形成系统体系结构的动力。

系统的设计视图包含了类、接口和协作,他们形成了问题及其解决方案的词汇。主要支持系统的功能需求。

系统的交互视图展示了系统的不同部分之间的控制流,包括可能的并发和同步机制。该视图主要针对性能、可伸缩性和系统的吞吐量。

系统的部署视图包含了形成系统硬件拓扑结构的结点(系统在其上运行)。描述组成物理系统的部件的分布、交付和安装。

用户头像

刘先强

关注

还未添加个人签名 2018.01.05 加入

还未添加个人简介

评论

发布
暂无评论
UML总结