首页 > 其他分享 >UML的九种图

UML的九种图

时间:2023-12-07 19:15:42浏览次数:24  
标签:关系 对象 系统 类图 用例 之间 九种 UML

                     这9种图形工具分别是用例图、类图、对象图、活动图、状态图、序列图、协作图、构件图、部署图。

 

                         1、用例图是用来描述角色以及角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用该系统可以做些什么。一个用例图包含了多个模型元素,如系统、参与者和用例,并且显示了这些元素之间的各种关系,如泛化、关联和依赖。

 

                         2、类图是描述系统中的类,以及各个类之间的关系的静态视图。能够让我们在正确编写代码以前对系统有一个全面的认识。类图是一种模型类型,确切的说,是一种静态模型类型。 类图又包含了几种关系:     
  1. 关联(Association):

    • 关联表示两个类之间的连接,描述了它们之间的静态关系。关联可以是双向的或单向的,也可以有角色(role)和多重性(multiplicity)的概念。
    • 例如,一个订单类和一个顾客类之间可能存在关联,表示订单与顾客之间有某种联系。
    •  

  2. 聚合(Aggregation):

    • 聚合表示整体与部分之间的关系,强调整体对象可以包含部分对象,但它们的生命周期可以是独立的。聚合用空心的菱形表示。
    • 例如,一个汽车类与轮胎类之间可能存在聚合关系,表示汽车包含轮胎,但轮胎可以独立于汽车存在。
    •  

  3. 组合(Composition):

    • 组合也表示整体与部分之间的关系,但强调整体对象负责部分对象的生命周期。组合用实心的菱形表示。
    • 例如,一个公司类与雇员类之间可能存在组合关系,表示雇员是公司的一部分,其生命周期受公司管理。
    •  

  4. 依赖(Dependency):

    • 依赖表示一个类的变化可能会影响到另一个类。依赖关系用带箭头的虚线表示。
    • 例如,如果一个类的方法使用了另一个类的对象作为参数,那么它们之间存在依赖关系。
    •  

  5. 继承(Inheritance):

    • 继承表示一个类继承另一个类的特征和行为。子类(派生类)继承父类(基类)的属性和方法。继承关系用带空心三角形的实线表示。
    • 例如,猫和狗可以是动物类的子类,继承了动物类的属性和方法。
    •  

这些关系有助于在类图中捕捉系统的结构,强调类之间的静态联系。在实际应用中,这些关系可以组合使用,形成复杂的系统结构。合理使用这些关系有助于设计出灵活、可扩展且易维护的系统。

 

                         3、对象图,它与类图极为相似,它是类图的实例,对象图显示类的多个对象实例,而不是实际的类。它描述的不是类之间的关系,而是对象之间的关系。

 

 

                         4、活动图是描述用例要求所要进行的活动,以及活动间的约束关系,有利于识别并行活动。能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的商务需求。

 

                         5、状态图是描述类的对象所有可能的状态,以及事件发生时状态的转移条件。可以捕获对象、子系统和系统的生命周期。他们可以告知一个对象可以拥有的状态,并且事件(如消息的接收、时间的流逝、错误、条件变为真等)会怎么随着时间的推移来影响这些状态。一个状态图应该连接到所有具有清晰的可标识状态和复杂行为的类;该图可以确定类的行为,以及该行为如何根据当前的状态变化,也可以展示哪些事件将会改变类的对象的状态。状态图是对类图的补充。

 

                        6、序列图(顺序图)是用来显示你的参与者如何以一系列顺序的步骤与系统的对象交互的模型。顺序图可以用来展示对象之间是如何进行交互的。顺序图将显示的重点放在消息序列上,即强调消息是如何在对象之间被发送和接收的。

 

                        7、协作图是和序列图相似,显示对象间的动态合作关系。可以看成是类图和顺序图的交集,协作图建模对象或者角色,以及它们彼此之间是如何通信的。如果强调时间和顺序,则使用序列图;如果强调上下级关系,则选择协作图;这两种图合称为交互图。

 

                        8、构件图 (组件图)是描述代码构件的物理结构以及各种构建之间的依赖关系。用来建模软件的组件及其相互之间的关系,这些图由构件标记符和构件之间的关系构成。在组件图中,构件时软件单个组成部分,它可以是一个文件,产品、可执行文件和脚本等。

 

                        9、部署图 (配置图)是用来建模系统的物理部署。例如计算机和设备,以及它们之间是如何连接的。部署图的使用者是开发人员、系统集成人员和测试人员。

 

              通过深入研究每种图的目的、结构和应用,我们可以更好地理解如何利用UML来捕捉、分析和设计复杂系统。

           首先,用例图是系统的功能需求的视觉化表示。用例图以参与者和用例为中心,展示了系统如何与外部实体互动。参与者代表外部实体,而用例则表示系统的功能单元。这有助于识别系统的关键功能和与外部实体的交互,是在项目初期进行需求分析的有力工具。

           类图则关注系统的静态结构。它展示了系统中的类、类之间的关系以及类的属性和方法。通过类图,我们可以理解系统中对象的组织结构,包括继承、关联、聚合和组合关系。这对于建模系统的静态视图和设计系统的对象模型非常重要。

            时序图和协作图则关注系统的动态行为。时序图描述了对象之间的交互顺序,强调消息的传递。协作图同样描述对象之间的协作关系,侧重于强调对象之间的消息传递和协作。这两种图形工具非常有助于理解系统中的时序和交互模式,尤其在描述系统中的活动流程和对象协作方面。

            状态图关注对象的状态和状态之间的转换。通过状态图,我们能够捕捉对象的生命周期和状态变化条件。这对于理解系统中对象的行为和状态转换非常重要,特别是在建模状态机的情境下。

活动图则关注系统中的活动和动作,展示它们之间的关系。它对于建模系统的业务流程和操作流程非常有用,尤其是在描述并发活动和流程控制时。

            部署图和组件图则关注系统的物理结构。部署图描述了软件和硬件组件的物理部署,展示了软件如何映射到物理硬件上。组件图则描述了系统中组件及其之间的关系,有助于理解系统的组件结构和依赖关系。这两种图形工具对于系统的物理架构和模块化设计非常关键。

            最后,对象图展示了特定时间点的对象实例及其之间的关系,是类图的实例化。通过对象图,我们能够在系统设计的早期验证类图的准确性和完整性,确保系统在实现阶段符合设计的预期。

综合来看,这9种UML图形工具为软件工程师和系统分析师提供了一套强大的工具,帮助他们更好地理解和描述系统的各个方面。这些图形工具不仅在项目的不同阶段提供了标准化的视图,还为团队提供了一种共享和交流复杂系统结构和行为的方式。通过运用这些工具,团队可以更加有效地进行系统设计、实现和维护,确保项目的成功完成。




(文中的图片例图摘自https://blog.csdn.net/u012500848)

标签:关系,对象,系统,类图,用例,之间,九种,UML
From: https://www.cnblogs.com/ZRGUGUGU818/p/17881722.html

相关文章

  • UML九种图汇总
    1、类图概述类图(ClassDiagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。类图不仅用于可视化描述和记录系统的不同方面,也为构建可执行代码的软件应用程序。类图描述一......
  • UML
    1.用例图用于描述软件系统的功能需求和参与者之间的交互。图中用椭圆表示用例(系统功能),参与者用图标表示。箭头表示交互。这种图表有助于捕捉系统的基本行为,帮助开发人员和利益相关者理解系统的功能,从而更好地规划和设计软件系统。 2.类图通过矩形表......
  • UML知识
    UML类图用例图(usecase)静态结构图:类图、对象图、包图、组件图、部署图动态行为图:交互图(时序图与协作图)、状态图、活动图类图是描述类与类之间的关系的,是UML图中最核心的UML类图用于描述系统中的类(对象)本身的组成和类(对象)之间的各种静态关系。类之间的关系: 依赖......
  • UML建模:深入理解软件设计的语言
    统一建模语言(UnifiedModelingLanguage,简称UML)是一种用于软件开发和系统设计的标准建模语言。它提供了一套图形化的工具,帮助软件开发者更好地理解、设计和交流复杂系统。在本文中,我们将深入探讨UML建模的重要性、主要图表类型以及如何有效应用UML来提高软件开发过程的质量。UML......
  • uml
    UML分静态图和动态图两种,其中常用的静态图5种,动态图4种。常用的静态图:用例图、类图、包图、对象图、部署图常用的动态图:顺序图,通信图(UML1.x时称为协作图),状态机图,活动图用例图用例图是编写需求说明时经常用到的需求表达方式,用于向开发、测试同事说明需求中用户与系统功能单元......
  • 面向对象建模语言UML
    自从面向对象编程语言在软件开发中成为主流之后,遵循面向对象技术特点的软件设计工作,也一并发展了起来。首先要提出一个问题,就是设计的工作是要做什么?它包括的范围其实是很广泛的,从搜集用户需求,进行业务分析,到绘制系统流程图等。可以说,在动手编写代码之前,程序员要做的都属于设计......
  • UML九图
    1.类图类图(ClassDiagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。类图不仅用于可视化描述和记录系统的不同方面,也为构建可执行代码的软件应用程序。类图描述一类的属性和操......
  • UML几种图例介绍
    九种常见UML图 UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现类与类图1)类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。2)在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能,要承......
  • uml学习
    1用例图用例图包含参与者、用例和关系这三种核心元素,不同的视角可以得到不同的用例视图,它展现了系统的功能性需求。所谓不同的视角,可以对应面向对象分析设计的三阶段。2类图类图用于展示系统中的类及其相互之间的关系。类图建模常用的方式是从概念层,到说明层,最后到实现层这......
  • UML九图介绍
    介绍一下UML九图UML九图是指统一建模语言的九种图表,分别是:用例图(UseCaseDiagram)、类图(ClassDiagram)、对象图(ObjectDiagram)、活动图(ActivityDiagram)、状态图(StateDiagram)、协作图(CollaborationDiagram)、时序图(SequenceDiagram)、构造图(ComponentDiagram)和部署图(Deploymen......