背景
当下的软件开发人员,不可避免的需要输出一些软件设计文档,作为一个软件工程专业毕业的工程师,最常用的设计工具就是UML,使用UML工具绘制一些软件相关的图,是必备技能,也是输出的技术文档中的重要组成部分。不关注逆向工程,这里只关注快速的绘制对应的图,plantuml是一款比较不错的工具。本节先初步熟悉用例图和时序图。
plantuml介绍
官网主页
功能介绍:
支持快速绘制
- 时序图
- 用例图
- 活动图
- 类图
- 组件图
- 状态图
- 对象图
- 部署图
- 定时图
还支持非UML图:
- 架构图
- 甘特图
- 思维导图
- ER图
以及不常用的的图:
- SDL(规范描述语言)
- 线框图形界面
- Ditaa
- 数学公式
画完图之后,可以生成PNG,SVG,Latex格式的图片;
业务场景
x项目的用户后端服务,包括用户登录,用户积分模块;
用例图
用户角度描述系统功能
语法
系统用例图
内部系统用例
@startuml
left to right direction
actor : 其它LX提供给TA的后端系统: as otherLxTaBackendService
note top of otherLxTaBackendService
比如tianansp
负责活动和文章的服务
比如tiananseason
负责西游活动的服务
通过dubbo的rpc方法调用
end note
usecase 修改用户积分 as changeUserPoint
usecase 查询用户总积分 as getUserTotalPoint
usecase 登录校验 as getRestContextByAccessToken
otherLxTaBackendService --> getRestContextByAccessToken:获取用户的登录态[RPC]
otherLxTaBackendService --> changeUserPoint:活动增加或者扣减积分[RPC]
otherLxTaBackendService --> getUserTotalPoint: 查询用户当前总积分[RPC]
@enduml