活动图、泳道图、时序图、状态图、协作图,到底有啥区别?

活动图

活动图本质上就是平常说的流程图,用于描述系统的活动、判定点和分支。

概念

  • 判定点:需要做选择的地方,不同选择会影响后续步骤。
  • 分支:一项活动结束后,后续可以同时开始若干项活动。
  • 合并:若干项活动做完后,才能进行下一项活动。

示例

image

泳道图

侧重“活动”属于哪个“对象”,同一对象的活动写在一条“泳道(Lane)”里面。

要点

对象(who)、顺序(when)、活动(what)

示例

image

时序图

侧重描述对象之间的传递信息的时间顺序。

概念

  • 对象:时序图中的矩形框。
  • 生命线:一条在方框下面的垂直虚线,表示时序图中的对象在一段生命周期内存在。
  • 消息:从发送方指向接收方的箭头线,表示两个对象之间的单路通信。
  • 销毁:在其生命线终止点处放置的 “x” 符号。

示例

微信小程序登录

状态图

侧重描述对象随时间变化的状态行为。

概念

  • 状态:用圆角矩形表示,并且状态名称要唯一。
  • 转换:用带箭头的直线表示,从源状态指向目标状态。
  • 初始状态:一般来说,初始状态不能作为转换的目标。
  • 终止状态:终止状态在一个状态图中可以有多个。

示例

商城的下单订货状态

协作图

侧重描述各个对象之间的交互关系。

示例

参考资料 http://www.cnblogs.com/Mark_blog/

posted @   西湖摸鱼  阅读(2645)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示