UML基础(附绘制教程)

文章目录

  • 前言
  • uml基本概念
  • 常见的uml图包括那些
    • 类图(class diagram)
      • 例子
        • 基础类图样式
    • 类之间的关系
      • 泛化关系
      • 实现关系
      • 关联关系
      • 聚合关系
      • 组合关系
      • 依赖关系
    • 用例图(user case diagram)
    • 时序图(sequence diagram)
      • 绘制注意事项
      • 简单示例
      • web交互场景示例

前言

本文所用绘制uml工具为process on,需要了解的同学可以移步下方链接
process on官网

uml基本概念

Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于 1997 年一个 OMG 标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。面向对象的分析与设计(OOA&D,OOAD)方法的发展在 80 年代末至 90 年代中出现了一个高潮,UML 是这个高潮的产物。它不仅统一了 Booch、Rumbaugh 和 Jacobson 的表示方法,而且对
其作了进一步的发展,并最终统一为大众所接受的标准建模语
言。
软件开发的时候,系统设计师/系统架构师给出 UML 设计图,程序员将来要根据 UML 设计图进行编码/开发。

常见的uml图包括那些

类图(class diagram)

描述类的信息(包括属性、方法),以及类和类之间的关系信息。

例子

基础类图样式

如下图所示,第一行表示类名。第二行+号表示访问类型为public,-号代表访问类型为private,attribute代表成员属性名,type即是成员属性的类型。第三格中即表示成员方法。
UML基础(附绘制教程)_第1张图片

类之间的关系

泛化关系

泛化关系即一种“is a”的关系,如下图,cat类是animal类的子类,所以cat类用一个空白箭头指向其父类animal,这种表示方式可用于类与类、接口与接口、接口和类之间。
UML基础(附绘制教程)_第2张图片

实现关系

实现关系即是一种 like a的关系,如下例子,私人厨师在富豪家中就好比一个活体菜单,可根据用户需求完成制作指定菜式。或可以理解为某个类可以完成某个功能。

UML基础(附绘制教程)_第3张图片

关联关系

表示两者之间的关联,如下图所示,电脑在编码人员眼里只是一个工具,所以编码人员类用直线箭头指向电脑类,并标明一对一关系,在电脑连接线处标注util代表该类在编码人员类中成员变量名为util。
UML基础(附绘制教程)_第4张图片
关联关系也存在自关联,如一个human类可存在夫妻关系,即human中有个human记录丈夫,另一个human记录妻子。这种关系表示就如下所示

UML基础(附绘制教程)_第5张图片

聚合关系

聚合关系即代表部分和整体的关系,如教室类中包含一堆学生,教室没了,学生还在。学生走了,教室仍然存在。具体表示方式如下图所示,学生类使用实线菱形线指向教室类。
UML基础(附绘制教程)_第6张图片

组合关系

如下所示,组合关系也属于关联关系中的一种,如下图所示,四肢是人类的一部分,所以四肢使用菱形实线指向人类,并在线上标注自己在人类类中成员是一个变量名为limbs的变量,该关系表示当人类类生命周期结束后,四肢类的生命周期也结束了。而转换成编码的如下图右边备注所示。
UML基础(附绘制教程)_第7张图片

依赖关系

依赖关系即类与局部变量的关系,表示方式即主类使用实线箭头指向其局部变量,而转换成编码如下图右方备注所示。注意这种关系需要和关联关系区别
UML基础(附绘制教程)_第8张图片

用例图(user case diagram)

用例图即从系统用户的角度复习系统存在那些功能
UML基础(附绘制教程)_第9张图片

时序图(sequence diagram)

时序图描述了方法调用的过程,程序的执行流程,以及方法执行结束的返回值情况。用例图中的一个用例就会对应时序图中的一个时序。

绘制注意事项

  1. 对象
  2. 实线箭头:调用
  3. 虚线箭头:返回
  4. 柱状:对象的生命周期,即该方法执行流程中,柱状不能断。
  5. 回折线:当前类的方法执行过程中,调用自己当前类中的其他方法。

简单示例

如下图所示,A类调用B的m1方法,会得到一个最终的返回值。B类的m1方法会调用C的m2的方法,得到返回值之后,会调用自身类的m4方法,完成上述步骤后会返回一个值。C的m2方法调用自身m3()方法即完成并返回值。

UML基础(附绘制教程)_第10张图片

web交互场景示例

如下图所示,下述过程即将用户查询数据时,浏览器到数据库的执行过程描绘了出来了。
在绘制流程图的时候,需要注意调用用的是实线,返回用的是虚线,以及确定生命周期,以及类调用自身方法时,要将方法的生命周期画在主方法生命周期内,如下Controller中将list转换为json这个方法就绘制在controller的主方法findById之上

UML基础(附绘制教程)_第11张图片

你可能感兴趣的:(软件工程,java,软件工程师,uml,软件开发)