首页 > 其他分享 >UML九个常用图总结

UML九个常用图总结

时间:2023-12-07 20:00:12浏览次数:39  
标签:总结 表示 对象 关系 系统 用例 UML 节点 九个

用例图(Use Case Diagram)是Unified Modeling Language(UML)中的一种图表类型,用于描述系统的功能需求和系统与外部实体(称为参与者)之间的交互。以下是用例图的一些关键元素和说明:

1.参与者(Actors):


2.定义: 表示与系统交互的外部实体,可以是人、其他系统或者外部组件。
3.符号: 通常用简单的图标(如小人的图标)表示。


4.用例(Use Cases):


5.定义: 表示系统提供的功能或服务,是参与者与系统之间的交互点。
6.符号: 通常用椭圆形表示。


7.关系(Associations):


8.关联关系: 连接参与者和用例,表示参与者与用例之间的关系。
9.符号: 通常用直线表示,箭头指向被关联的一方。


10.包含关系(Inclusion):


11.定义: 一个用例包含另一个用例,表示一个用例的执行需要另一个用例的支持。
12.符号: 用带箭头的虚线表示,箭头指向被包含的用例。


13.扩展关系(Extension):


14.定义: 一个用例可以扩展另一个用例,表示在某些条件下执行额外的功能。
15.符号: 用带箭头的虚线表示,箭头指向扩展的用例。


16.泛化关系(Generalization):


17.定义: 用例之间的继承关系,表示一个用例是另一个用例的特例。
18.符号: 用带空心三角形的直线表示,三角形指向被继承的用例。

用例图的创建步骤:

19.识别参与者: 确定与系统交互的外部实体,即参与者。
20.识别用例: 识别系统提供的各种功能或服务,即用例。
21.建立关系: 使用关联关系将参与者与用例连接起来。
22.考虑包含和扩展关系: 标识用例之间的包含和扩展关系,以完善用例之间的关系。
23.考虑泛化关系: 如果存在用例之间的继承关系,使用泛化关系表示。

示例:
考虑一个在线图书商城的用例图:

24.参与者: 顾客、管理员
25.用例: 浏览图书、搜索图书、下订单、管理库存
26.关系: 顾客可以浏览图书、搜索图书、下订单;管理员可以管理库存。
27.包含关系: 下订单包含了支付过程。
28.扩展关系: 搜索图书可以扩展为高级搜索。
29.泛化关系: 顾客和管理员都是系统用户,可以泛化为系统用户。

这个用例图能够简单而清晰地表达系统的基本功能和参与者之间的交互。

 

类图(Class Diagram)是Unified Modeling Language(UML)中用于表示系统中类、接口、关联和协作的图表类型。以下是类图的一些关键元素和说明:

1.类(Class):


2.定义: 表示系统中的一个抽象或具体的概念,通常包含属性(数据成员)和方法(成员函数)。
3.符号: 用矩形表示,分为三个部分:类名、属性、方法。


4.关联(Association):


5.定义: 表示类之间的关系,用于连接相关联的类。
6.符号: 用直线表示,箭头指向被关联的一方,可以包括关联的名称和多重性(表示对象之间的关联个数)。


7.聚合关系(Aggregation):


8.定义: 表示整体与部分之间的关系,整体对象包含部分对象,但它们之间的生命周期可以独立存在。
9.符号: 用带空心菱形的直线表示,菱形指向整体。


10.组合关系(Composition):


11.定义: 表示整体与部分之间的关系,整体对象包含部分对象,且它们之间的生命周期是紧密关联的。
12.符号: 用带实心菱形的直线表示,菱形指向整体。


13.泛化关系(Generalization):


14.定义: 表示类之间的继承关系,一个类是另一个类的特殊形式。
15.符号: 用带空心三角形的直线表示,三角形指向被继承的类。


16.接口(Interface):


17.定义: 表示一组方法的集合,类可以实现一个或多个接口。
18.符号: 用带有“>”标记的矩形表示。

类图的创建步骤:

19.识别类: 确定系统中的类,包括抽象类和具体类。
20.识别关系: 确定类之间的关联、聚合、组合和泛化关系。
21.定义属性和方法: 为每个类定义属性和方法,包括可见性、数据类型等信息。
22.绘制类图: 使用UML工具或手绘创建类图,将类、关系、属性和方法放置在图上。

示例:
考虑一个简单的图书管理系统的类图:

23.类: Book, Author, Library
24.关联: Book和Author之间有关联,表示一本书由一个作者撰写;Library和Book之间有关联,表示图书馆拥有多本书。
25.聚合关系: Library包含Book,表示图书馆中的书是整体中的部分。
26.泛化关系: Book可以泛化为FictionBook和NonFictionBook,表示小说和非小说都是书的特殊形式。

这个类图描述了图书、作者和图书馆之间的基本结构和关系。

 

对象图(Object Diagram)是Unified Modeling Language(UML)中的一种图表类型,用于展示系统中的对象实例及其之间的关系。对象图是类图的实例化,通过展示特定时间点上对象的状态和关系,有助于更好地理解系统的动态行为。以下是对象图的一些关键元素和说明:

1.对象(Object):


2.定义: 表示系统中的一个具体实例,是类的一个特定个体。
3.符号: 用矩形表示,包含对象的名称。


4.关联关系(Association):


5.定义: 表示对象之间的关系,可以是临时的、瞬时的关联。
6.符号: 用直线表示,箭头指向被关联的对象,可以包括关联的名称和多重性。


7.角色(Role):


8.定义: 表示对象在特定关联中的角色或职责。
9.符号: 通常在关联线上使用文字标记表示。


10.多重性(Multiplicity):


11.定义: 表示一个对象在关联中的个数,即关系的基数。
12.符号: 通常以数字或星号()表示,例如 "1", "0..1", "0..", "1..*", 等。

对象图的创建步骤:

13.选择对象: 选择要在对象图中表示的对象实例。
14.标识对象: 为每个对象实例分配一个唯一的标识符或名称。
15.标识关系: 确定对象之间的关联关系,包括角色和多重性。
16.绘制对象图: 使用UML工具或手绘创建对象图,将对象、关系、角色和多重性放置在图上。

示例:
考虑一个简单的图书馆系统的对象图:

17.对象: Book1, Book2, Author1, Library
18.关联关系: Book1和Author1之间有关联,表示第一本书由第一个作者撰写;Library和Book1之间有关联,表示图书馆拥有第一本书。
19.角色: 在关联线上标记Book1的角色为“拥有”、Author1的角色为“撰写”。

这个对象图展示了特定时间点上图书、作者和图书馆对象实例之间的关系和角色。

 

 

序列图(Sequence Diagram)是Unified Modeling Language(UML)中的一种行为图,用于展示系统中对象之间的交互过程。它描述了对象之间的消息传递顺序,强调了消息的时间顺序,特别适用于描述系统中的动态行为。以下是序列图的一些关键元素和说明:

1.对象(Object):


2.定义: 表示系统中的一个实体,可以是类的实例、系统组件或角色。
3.符号: 用垂直的方框表示,方框内包含对象的名称。


4.生命线(Lifeline):


5.定义: 表示对象存在的时间轴,通常与对象相邻的垂直虚线。
6.符号: 用一条垂直的虚线表示,顶部标有对象的名称。


7.激活条(Activation Bar):


8.定义: 表示对象在生命线上执行某个操作的时间段。
9.符号: 用一条垂直的实线连接到生命线上,表示对象的活跃状态。


10.消息(Message):


11.定义: 表示对象之间传递的信息或调用的操作。
12.符号: 用箭头线表示,箭头的方向表示消息的流向,可以包括消息的名称、参数和返回值。


13.返回消息(Return Message):


14.定义: 表示从被调用对象返回到调用对象的信息。
15.符号: 用箭头线表示,箭头的方向与普通消息相反,通常带有返回值。

序列图的创建步骤:

16.确定参与者: 确定涉及到交互的对象或系统组件。
17.绘制生命线: 为每个参与者绘制一个垂直的生命线。
18.定义消息: 标识对象之间的消息传递,包括消息的名称、参数等。
19.确定时序: 确定消息传递的时间顺序,即哪个消息在哪个消息之前发生。
20.绘制图形: 使用UML工具或手绘创建序列图,包括对象、生命线、激活条和消息。

示例:
考虑一个简单的登录系统的序列图:

21.对象: User, Authentication System
22.生命线: 为每个对象绘制垂直生命线。
23.消息: 包括用户发送登录请求消息、认证系统验证消息和返回验证结果消息。
24.激活条: 表示对象在生命线上执行操作的时间段。

这个序列图展示了用户如何与认证系统进行交互,包括发送登录请求、认证系统验证并返回结果的过程。

 

状态图(State Diagram)是Unified Modeling Language(UML)中的一种行为图,用于描述对象或系统在其生命周期中可能经历的各种状态以及状态之间的转换。
在状态图中,有几个核心概念:

1.状态(State): 对象或系统在其生命周期中可能处于的特定条件或情况。每个状态都有一个描述性的标签,例如 "开启"、"关闭"、"暂停" 等。
2.转移(Transition): 状态之间的变化或过渡,表示对象从一个状态转移到另一个状态的事件或条件。转移通常由触发条件、触发事件或触发动作来定义。
3.起始状态(Initial State)和结束状态(Final State): 起始状态表示对象生命周期的起始点,通常用空心圆形表示;结束状态表示对象生命周期的结束点,通常用空心矩形或圆形表示。
4.行为(Actions): 在状态转移发生时执行的动作或行为。这些动作可以与转移关联,表示状态变化时的具体操作。

状态图的绘制通常包括以下步骤:

5.确定对象/系统的状态: 确定对象或系统可能存在的各种状态,以及状态之间的关系。
6.识别状态之间的转移条件: 确定导致状态转移的事件、条件或动作。
7.绘制状态和转移: 使用状态图形符号(通常是圆形或矩形)表示状态,使用箭头表示状态之间的转移,并标记转移的触发条件或事件。
8.标识起始状态和结束状态: 使用特定符号标记起始状态和结束状态。
9.指定转移的触发动作: 如果状态转移伴随着特定动作或行为,可以将这些动作与转移相关联。

状态图可以用于可视化对象或系统的行为模式,清晰地展示状态之间的转换和条件。它有助于理解对象的行为方式,特别是对象在不同状态下如何响应事件或条件,以及如何转移到其他状态。状态图常用于软件设计、系统建模和需求分析等领域。

 

活动图(Activity Diagram)是统一建模语言(UML)中的一种行为图,用于描述系统、业务过程或算法的动态行为。活动图显示了系统中的活动以及这些活动之间的流程控制关系。它通常用于可视化业务流程、系统工作流或软件算法的执行过程。
以下是活动图的一些核心概念和元素:

1.活动(Activity): 表示系统中执行的特定任务或操作。每个活动通常用矩形表示,带有活动名称。
2.控制流(Control Flow): 用箭头表示的线,表示活动之间的顺序或流程控制关系。箭头的方向指示了活动执行的顺序。
3.决策节点(Decision Node): 用菱形表示,表示在执行过程中需要进行决策的地方。根据条件不同,流程可能会沿不同的路径分支。
4.合并节点(Merge Node): 也用菱形表示,表示从多个分支合并回一个流程。
5.起始节点(Initial Node)和结束节点(Final Node): 起始节点表示活动图的开始点,通常用一个黑色实心圆表示;结束节点表示活动图的结束点,通常用一个实心圆或者带有两个边缘的圆表示。
6.分叉节点(Fork Node)和联合节点(Join Node): 分叉节点表示一个流程被分成多个并行执行的流程,而联合节点表示这些并行执行的流程再合并回一个流程。
7.对象流(Object Flow): 用箭头表示的线,表示活动之间传递的数据或物体。它们可以显示在活动之间的输入和输出。

活动图的绘制过程通常包括以下步骤:

8.确定活动: 确定系统中的各种活动,即任务或操作。
9.绘制活动图元素: 使用矩形表示活动,箭头表示控制流,菱形表示决策节点等。
10.定义流程控制关系: 使用控制流箭头连接活动,表示它们之间的顺序关系。
11.添加决策节点和合并节点: 根据需要添加决策节点和合并节点,以支持分支和合并。
12.标识起始和结束节点: 添加起始节点和结束节点,定义活动图的开始和结束。
13.添加对象流: 如果需要,添加对象流表示活动之间的数据传递。

活动图有助于理解系统中的流程和任务,特别是在业务分析、系统设计和软件开发等领域。它提供了对系统行为的直观表示,有助于团队成员之间的沟通和协作。

 

构件图(Component Diagram)是统一建模语言(UML)中的一种结构图,用于展示系统中的组件及其之间的关系。构件通常是系统中的模块、类、包或者其他可替代和可重用的单元。构件图主要关注系统的物理和逻辑组织,以及构件之间的依赖关系。
以下是构件图的一些关键概念和元素:

1.构件(Component): 表示系统中的模块、类、包或其他可组装和替代的单元。构件通常具有清晰的接口和定义良好的功能。
2.接口(Interface): 描述构件提供给其他构件或系统的服务。接口定义了构件对外暴露的方法、属性或其他服务。
3.依赖关系(Dependency): 表示一个构件依赖于另一个构件。依赖关系通常用带箭头的虚线表示,箭头指向被依赖的构件。
4.关联关系(Association): 表示两个构件之间的关联,用实线连接两个构件。关联关系通常表示构件之间的关联或通信。
5.装配关系(Assembly): 表示一个构件由其他构件组装而成。装配关系用带有实心菱形的实线表示,菱形指向被组装的构件。
6.部署关系(Deployment): 表示构件如何被物理部署在计算节点上。部署关系通常用带箭头的虚线表示,箭头指向目标节点。
7.节点(Node): 表示系统的计算资源,例如硬件设备或执行环境。节点通常用一个框表示,框内包含节点的名称。
8.用例(Use Case): 有时构件图中也可以包含用例,以显示系统的功能需求。用例表示系统的一个功能或一组功能。

构件图的主要目的是帮助开发人员和系统设计者理解系统的组织结构和模块化设计。通过构件图,可以清晰地看到系统中各个构件之间的关系,有助于系统的设计、分析和实现。构件图在软件架构设计和系统设计阶段非常有用,它提供了一个高层次的视图,强调系统的模块化和可组装性。

 

部署图(Deployment Diagram)是统一建模语言(UML)中的一种结构图,用于描述系统中各个物理节点(硬件设备或执行环境)以及系统组件如何部署在这些节点上。部署图提供了对系统硬件和软件的物理结构的视图,有助于理解系统在不同计算资源上的分布情况。
以下是部署图的主要元素和关键概念:

1.节点(Node): 节点代表系统的计算资源,可以是硬件设备(如服务器、计算机、路由器)或执行环境(如操作系统、运行时环境)。每个节点具有一个名称,用于标识它在系统中的角色。
2.构件(Component): 构件表示系统中的模块、应用程序、库或其他可部署的单元。构件通常与节点相关联,表明它们部署在哪个节点上。
3.关联关系(Association): 表示节点和构件之间的关联。关联关系用实线连接节点和构件,表示构件部署在该节点上。
4.通信路径(Communication Path): 用于表示节点之间的通信路径,通常用带箭头的虚线表示。通信路径说明节点之间的连接,反映系统中的物理通信结构。
5.关系(Dependency): 用于表示构件之间的依赖关系。在部署图中,依赖关系通常用虚线和带箭头的线表示,箭头指向被依赖的构件。
6.部署配置(Deployment Specification): 用于描述构件在节点上的具体配置。部署配置包含构件的详细信息,例如文件路径、版本号等。

通过部署图,系统设计者和开发人员可以清晰地了解系统中的物理部署情况,包括硬件设备和软件组件之间的关系。这有助于规划系统的物理架构,优化资源利用,提高系统的性能和可伸缩性。部署图通常在系统设计和实施阶段使用,为系统的运行和维护提供了指导。

 

标签:总结,表示,对象,关系,系统,用例,UML,节点,九个
From: https://www.cnblogs.com/DREAM2021/p/17883830.html

相关文章

  • UML
    统一建模语言(UML)是一种广泛应用于软件工程领域的标准化建模语言。UML提供了多种图表,其中类图、实例图、时序图和活动图是常用于软件设计和系统分析的几种关键图表。对于软工的学生来说非常重要,所以我今天对UML的类图、实例图、活动图进行了学习。类图是UML中最基本和......
  • UML图简介
     一、UML的九种图详细说明 类图(ClassDiagram)类图是UML中最重要的图表之一,它用于描述系统中类的静态结构。类图包括类、接口、继承和关联等元素。通过类图,开发人员可以清楚地看到类之间的关系,如继承、聚合和关联等。  对象图(ObjectDiagram)对象图是类图的实例化,它表示系......
  • uml知识点
    UML类图是一种结构图,用于描述一个系统的静态结构。类图以反映类结构和类之间的关系为目的,用以描述软件系统的结构,是一种静态建模方法。类图中的类,与面向对象语言中的类的概念是对应的。1、类结构在类的UML图中,使用长方形描述一个类的主要构成,长方形垂直地分为三层,以此放置类的名......
  • 每日学习之UML
    一、类图类图是用于描述系统中的类(对象)本身的组成和类(对象)之间的各种静态关系。类之间的关系有依赖、泛化(继承)、实现、关联、聚合与组合各种关系的图形化表示如下图所示UML类图中的类有抽象类(abstract)接口类(interface)UML类图中的类分为三层,第一层是类名,第二层是类的静......
  • uml各类图的总结以及示例
     类图主要关注系统中的类和对象。每个类通常用一个矩形框表示,包含类名,类的属性和方法。 关系的表示类图通过连接线表示不同类之间的关系。常见的关系包括继承(泛化)、关联、聚合、组合等。 继承关系表示类之间的继承关系,其中一个类是另一个类的子类。箭头指向父类。 关......
  • uml学习总结
    UML(UnifiedModelingLanguage)是一种用于软件系统建模的标准化语言,它提供了一组图形符号和规范,以便开发人员可以更好地理解、设计和构建复杂的软件系统。UML包括多种图表,每种图表都有不同的目的和应用场景。1.用例图(UseCaseDiagrams)特点:用例(UseCase)是描述系统功能的一......
  • uml知识点
      UML:用来设计软件可视化的语言UML概念UML(UnifiedModelingLanguage)是一个支持模型化和软件系统开发的图形化语言,为面向对象开发系统的产品进行说明、可视化、编制文档的一种标准语言。UML2中一共定义14种图示,分为结构式图形和行为式图形。结构式图形分为:剖面图、类图......
  • 每日总结_20231207
    UML(UnifiedModelingLanguage)是一种用于软件系统建模的标准化语言,它提供了一组图形符号和规范,以便开发人员可以更好地理解、设计和构建复杂的软件系统。UML包括多种图表,每种图表都有不同的目的和应用场景。1.用例图(UseCaseDiagrams)特点:用例(UseCase)是描述系统功能的一......
  • UML各图
    一、UML是什么?UML有什么用?二、UML的历史三、UML的上层结构(Superstructure)四、UML建模工具五、UML的图(重点)  1、用例图(usecasediagram)  2、活动图(activitydiagram)  3、静态结构图  4、顺序图(SequenceDiagram)  5、交互纵览图(InteractionOverviewDiag......
  • UML总结
    UML(UnifiedModelingLanguage)统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。UML是在开发阶段,说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法。最佳的应用是工程实践,对大规模,复杂......