业务架构分析工具 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 渲染出来之后就会看到这样的效果。
相关推荐
TomEval5 天前
【测AI】第17篇:大模型评测方法论 —— LLM 怎么测?
人工智能·python·aigc·测试用例
TomEval6 天前
【测AI】第16篇:模型公平性与可解释性测试 — AI 的偏见与黑箱
人工智能·python·功能测试·ai·测试用例
川石课堂软件测试7 天前
涨薪技术|0到1学会性能测试第9课-HTTP响应统计
数据库·功能测试·网络协议·http·kubernetes·单元测试·测试用例
川石课堂软件测试8 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
TomEval13 天前
【测AI】第12篇:NLP / CV / 语音 —— 三大 AI 方向速通
人工智能·python·自然语言处理·aigc·测试用例
墨云安全13 天前
AI 渗透测试是怎么实现的?2026 年大模型驱动测试用例生成的工程拆解
网络·人工智能·网络安全·渗透测试·测试用例
2302_8057710714 天前
Day24:DDT+EXCEL数据驱动
功能测试·单元测试·自动化·测试用例·需求分析·web自动化
TomEval15 天前
【测AI】第10篇:AI 模型功能测试实战 —— 测试用例怎么设计?
人工智能·python·功能测试·测试用例
j7~16 天前
【软件测试】(用例篇)
软件测试·测试用例·测试用例的设计方法·场景设计·错误猜测法·测试用例的粒度和评价
2302_8057710716 天前
Day20:实战:接口自动化测试框架封装之一------接口关联封装
功能测试·自动化·测试用例