统一建模语言UML(Unified Modeling Language)

UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,部署图。动态图分为:状态图,活动图,协作图,序列图。

在这里插入图片描述

1、用例图(UseCase Diagrams):
用例图主要回答了两个问题:1、是谁用软件。2、软件的功能。从用户的角度描述了系统的功能,并指出各个功能的执行者,强调用户的使用者,系统为执行者完成哪些功能。
元素有:1、参与者(Actor)——与应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示 2、用例(Use Case)——用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示。3、子系统(Subsystem)——用来展示系统的一部分功能,这部分功能联系紧密。

用例图中涉及的关系有:关联、泛化、包含、扩展。
在这里插入图片描述

关联表示参与者与用例之间的通信,任何一方都可发送或接受消息。
泛化就是通常理解的继承关系,子用例和父用例相似
包含包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。
扩展扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
在这里插入图片描述

2、类图(Class Diagrams)
用户根据用例图抽象成类,描述类的内部结构和类与类之间的关系,是一种静态结构图。 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。
各种关系的强弱顺序: 泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖
【泛化关系】:是一种继承关系
在这里插入图片描述
【实现关系】:是一种类与接口的关系
在这里插入图片描述
关联关系】:是类与类之间的联接,它使一个类知道另一个类的属性和方法,成员变量。
在这里插入图片描述
依赖关系】:是一种使用的关系,即一个类的实现需要另一个类的协助,主要是方法。
在这里插入图片描述

聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在
在这里插入图片描述
组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。
在这里插入图片描述

3、对象图(Object Diagrams)
描述的是参与交互的各个对象在交互过程中某一时刻的状态。对象图可以被看作是类图在某一时刻的实例。

4、状态图(Statechart Diagrams)
是一种由状态、变迁、事件和活动组成的状态机,用来描述类的对象所有可能的状态以及时间发生时状态的转移条件。
在这里插入图片描述
5、活动图(Activity Diagrams)
是状态图的一种特殊情况,这些状态大都处于活动状态。本质是一种流程图,它描述了活动到活动的控制流。    
在这里插入图片描述
6、序列图-时序图(Sequence Diagrams)
交互图的一种,描述了对象之间消息发送的先后顺序,强调时间顺序。
序列图的主要用途是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。同时序列图更有效地描述如何分配各个类的职责以及各类具有相应职责的原因。
在这里插入图片描述
序列图中涉及的元素:生命线、同步消息、异步消息、注释、约束、组合
7、协作图(Collaboration Diagrams)
交互图的一种,描述了收发消息的对象的组织关系,强调对象之间的合作关系。时序图按照时间顺序布图,而写作图按照空间结构布图。
在这里插入图片描述

8、构件图(Component Diagrams)
构件图是用来表示系统中构件与构件之间,类或接口与构件之间的关系图。其中,构建图之间的关系表现为依赖关系,定义的类或接口与类之间的关系表现为依赖关系或实现关系。

9、部署图(Deployment Diagrams)
描述一个具体应用的主要部署结构,通过对各种硬件,在硬件中的软件以及各种连接协议的显示,可以很好的描述系统是如何部署的;平衡系统运行时的计算资源分布;可以通过连接描述组织的硬件网络结构或者是嵌入式系统等具有多种硬件和软件相关的系统运行模型。

在这里插入图片描述

发布了45 篇原创文章 · 获赞 9 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/zhanglinlove/article/details/89643236