知识卡片

活动图与状态图的解绑

普通读书笔记卡 · 1950

内容

在UML 1中,活动图被当作状态图的特例来定义,这个理论血缘关系导致实际问题:人们想用活动图建模它最擅长的工作流场景时,反而被状态图的种种约束(如分叉结合必须平衡)绊住手脚。UML 2把这条纽带彻底移除,活动图不再是状态图的特例,也因此在这一版里经历了UML所有图形类型中最大的一次扩展和改写。这提醒读者:拿到老资料讲活动图时,要先确认谈的是UML 1还是UML 2语境,两者底层设计假设并不相同。

参考来源

- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第11章《活动图》(源文件:_epub-src/EPUB/10.xhtml) - 结论依据:原文说明"在UML 1中,活动图被看做状态图的特例。这导致人们在建模活动图擅长的工作流时出现了许多问题。在UML 2中,状态图和活动图之间的这种纽带被移除了",并指出活动图在UML 2中经历了最大的改变。 - 原始内容:随着UML版本的变化,活动图的变化是最大的改变之一……在UML 1中,活动图被看做状态图的特例。这导致人们在建模活动图擅长的工作流时出现了许多问题。在UML 2中,状态图和活动图之间的这种纽带被移除了。