业务架构分析工具 plantuml

文章目录

  • [一. 业务架构分析工具 plantuml](#一. 业务架构分析工具 plantuml)
    • [1. plantuml 简介](#1. plantuml 简介)
    • [2. 时序图](#2. 时序图)
    • [3. 用例图](#3. 用例图)
    • [4. 活动图](#4. 活动图)
    • [5. 思维导图](#5. 思维导图)

一. 业务架构分析工具 plantuml

1. plantuml 简介

UML(统一建模语言) 是构建系统架构图的标准语言。配合 PlantUML 等第三方插件或在线工具,开发者可以摆脱繁琐的绘图细节,将精力完全聚焦于对象间的逻辑关系。通过简洁的文本描述即可自动生成对应的图表,极大地提升了绘图效率与便捷性。


2. 时序图

时序图(Sequence Diagram)用于描述对象之间发送消息的时间顺序,展示多个对象间的动态协作。它非常适合表示用例的行为顺序,每条消息对应一个类操作或触发事件。

  • 核心语法:
    *

    在 PlantUML 中,使用 -> 符号表示对象(参与者)之间的消息传递,且对象无需预先显式声明。若需绘制虚线箭头(通常表示返回消息),则使用 --> 符号。

    • 使用 -> 表示实线箭头(同步消息/主动发送)。

    • 使用 --> 表示虚线箭头(返回消息/响应)。

    • 对象无需预先声明,直接使用即可。

    • 代码示例

      yaml 复制代码
      @startuml
      Alice -> Bob: Hi Bob
      Bob --> Alice: Hi Alice
      
      Alice -> Bob: how are you?
      Alice <-- Bob: Fine,thanks.
      @enduml
      • 通过 plantuml 渲染出来之后就会看到这样的效果。
        该图展示了 Alice 与 Bob 的对话交互。左侧为 Alice,右侧为 Bob,垂直虚线代表生命线。交互按时间从上至下展开:Alice 发送实线消息 "Hi Bob",Bob 回复虚线消息 "Hi Alice",随后 Alice 再次询问,Bob 最终回复。清晰地呈现了消息的发送、接收及回应对称性。

时序图常用关键字

在时序图当中,还有一些很常用的关键字。通过这些关键字,可以让时序图更加美观,逻辑更加复杂。

  • 声明对象 :actor database
  • 消息数字序号 :autonumber
  • 消息分组 :alt/else/end

3. 用例图

用例图是 UML 中的一种行为图,它通过图形化的方式展示系统的功能需求。

简单来说,它主要用来回答"谁(用户/其他系统)能用这个系统做什么"这个问题。

它的核心作用就是帮助开发团队直观地理解系统的功能边界,以及这些功能与外部参与者(如用户)之间的交互关系。

  • 以下为 plantuml 中用例图的语法:

    yaml 复制代码
    @startuml
    left to right direction
    skinparam packageStyle rectangle
    actor customer
    actor clerk
    rectangle checkout {
      customer -- (checkout) 
      (checkout) .> (payment) : include 
      (help) .> (checkout) : extends
      (checkout) -- clerk
    }
    @enduml
    • 通过 plantuml 渲染出来之后就会看到这样的效果。
      该图展示了"结账(checkout)"系统的功能需求。
      • 参与者:左侧的"顾客(customer)"和右侧的"店员(clerk)"通过实线连接到系统边界。
      • 包含关系(include):虚线箭头指向"支付(payment)",表示结账流程中必须包含支付步骤。
      • 扩展关系(extends):实线箭头指向"帮助(help)",表示帮助功能是结账流程的可选扩展(仅在特定条件下触发)。

4. 活动图

活动图其实就是系统里的"流程图"。它专门用来展示业务执行的先后顺序,比如先做什么、后做什么。它不仅能画出线性的步骤,还能展示并发的情况(也就是几件事同时做),非常适合用来梳理复杂的业务逻辑。

  • 以下为 plantuml 中活动图的语法:

    yaml 复制代码
    @startuml
    
    start
    repeat
      :read data;
      :generate diagrams;
    repeat while (more data?)
    stop
    
    @enduml
    • 通过 plantuml 渲染出来之后就会看到这样的效果。

5. 思维导图

思维导图是一种表达发散性思维的有效图形工具,PlantUML 同样支持通过文本生成层级结构图。

  • 以下为 plantuml 中思维导图的语法:

    yaml 复制代码
    @startmindmap
    * 根节点
        * 第一级子节点 1
            * 第二级子节点 1
            * 第二级子节点 2
        * 第一级子节点 2
    @endmindmap
    • 通过 plantuml 渲染出来之后就会看到这样的效果。
相关推荐
测试者家园4 天前
不写测试用例也能做自动化测试?
自动化测试·软件测试·人工智能·测试用例·智能化测试
测试员周周4 天前
【jev应用到测试】94 条 UI 报错交给 Jev,三档判对 85.1%,开单闸门定在 0.6
人工智能·python·测试工具·单元测试·测试用例
zhangduang_KHKW4 天前
ISO 26262功能安全标准解析与测试用例设计
测试用例
jingli97 天前
一个测试用例把连接池卡死 30 秒:SQLite 连接池 max_size=1 下的重入自锁复盘
jvm·sqlite·测试用例
啄缘之间14 天前
1.【SVA】什么是SVA?
经验分享·学习·测试用例·verilog·sva
2302_8057710717 天前
Day13Jmeter数据驱动
功能测试·单元测试·测试用例·需求分析·测试
2302_8057710717 天前
Day14Jmeter+数据库的操作
功能测试·单元测试·测试用例·需求分析
2302_8057710717 天前
Day18在接口自动化测试中引入pytest用例管理框架
功能测试·单元测试·测试用例·需求分析·测试
梧桐凰19 天前
AI 时代测试工程师的武器库:实战工具指南
人工智能·功能测试·测试用例
测试老哥20 天前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试