文章目录
- [一. 业务架构分析工具 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 最终回复。清晰地呈现了消息的发送、接收及回应对称性。
- 通过 plantuml 渲染出来之后就会看到这样的效果。
-
时序图常用关键字
在时序图当中,还有一些很常用的关键字。通过这些关键字,可以让时序图更加美观,逻辑更加复杂。
- 声明对象 :
actordatabase - 消息数字序号 :
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)",表示帮助功能是结账流程的可选扩展(仅在特定条件下触发)。
- 通过 plantuml 渲染出来之后就会看到这样的效果。
4. 活动图
活动图其实就是系统里的"流程图"。它专门用来展示业务执行的先后顺序,比如先做什么、后做什么。它不仅能画出线性的步骤,还能展示并发的情况(也就是几件事同时做),非常适合用来梳理复杂的业务逻辑。
-
以下为 plantuml 中活动图的语法:
yaml@startuml start repeat :read data; :generate diagrams; repeat while (more data?) stop @enduml- 通过 plantuml 渲染出来之后就会看到这样的效果。

- 通过 plantuml 渲染出来之后就会看到这样的效果。
5. 思维导图
思维导图是一种表达发散性思维的有效图形工具,PlantUML 同样支持通过文本生成层级结构图。
-
以下为 plantuml 中思维导图的语法:
yaml@startmindmap * 根节点 * 第一级子节点 1 * 第二级子节点 1 * 第二级子节点 2 * 第一级子节点 2 @endmindmap- 通过 plantuml 渲染出来之后就会看到这样的效果。

- 通过 plantuml 渲染出来之后就会看到这样的效果。