时序图(Sequence Diagram)应包含哪些内容?以删除图书记录场景为例
时序图绘制问题解答
登录模块是否会分散核心焦点
如果核心诉求是展示图书馆管理员删除数据库图书记录的主流程,完整的登录校验全分支会分散焦点,建议做如下优化:仅保留「用户通过身份校验→系统确认角色为librarian」这一段主路径,登录失败重试、普通用户权限跳转等非核心分支可以通过备注标注,不需要占用主图篇幅,既保留了流程完整性,也不会冲淡核心主题。
当前时序图的正确性判断
现有绘制逻辑自洽,但存在非核心内容占比过高的问题,可调整点如下:
- UI类元素仅保留核心操作的必要载体即可:比如删除操作触发入口、删除结果提示需要保留,无关的功能模块选择、普通用户操作界面不需要绘制
- 提示信息不需要强制归属到account management模块,可以单独增加全局交互提示泳道承载相关内容,避免破坏账户模块的职责边界
- 你当前省略transaction、search engine等非核心模块的处理是正确的,不需要补充
Use Case与时序图的内容对应规则
不需要将Use Case的所有内容都纳入单张时序图,遵循以下规则即可:
单张时序图仅对应单一核心场景的主路径,关联的分支场景、边缘异常场景可拆分到独立子时序图,或通过主图备注标注即可,无需全部堆砌在同一张图中。
如果你的Use Case覆盖了登录、权限校验、删除操作、无记录异常、普通用户权限分支等多个场景,可以拆分出3张独立时序图分别对应「用户登录流程」「权限校验流程」「librarian删除图书记录流程」,职责清晰无冗余。
时序图复杂度优化方案
当前时序图确实过于复杂,可按以下标准裁剪:
- 移除所有和「librarian删除图书记录」无关的分支:包括普通用户操作分支、登出流程、登录失败重试分支
- 突出核心交互链路:
librarian提交删除请求→系统校验图书记录是否存在→数据库执行删除操作→返回操作结果这四段是核心内容,其余步骤均可简化 - 无对应图书记录的异常提示属于核心流程的合理分支,可以保留
内容的提问来源于stack exchange,提问作者Chin
相关产品推荐
相关产品推荐

