6. 同步(synchronization)
状态图
状态图给我的思考:
状态图其实是从外部的角度来看待整个系统,事情总是有始有终的,有它的生命周期,你可以不了解它内部具体怎么运作的,但这不妨碍我们通过对它的表现或状态的关注,分析得到它的流动趋势。同时对于状态,对于图像符号的定义它已经相当完整了。
活动图(activity diagram)概念
活动图也是一种行为视图,描述了参与行为的对象活动的顺序,包括依赖于条件的行为恶化并发行为,表现的是从一个活动到另一个活动的控制流。活动图也是一种特殊的状态图。
活动图示例
活动图中泳道的概念
泳道(swinlance)代表对象对活动的责任,泳道把活动图中的活动划分为若干组。并把这些组指定给对象,它的好处是明确表示了那些活动是由哪些对象进行的。
将模型中的活动按照职责组织起来通常很有用。例如,可以将一个商业组织处理的所有活动组织起来。这种分配可以通过将活动组织成用线分开的不同区域来表示。由于它们的外观的缘故,这些区域被称作泳道。
活动图给我的思考:
活动图其实是从内部的角度来看待整个系统,活动图的泳道概念实在是个伟大创举,可以将任务,参与对象区分得如此形象,而且分门别类,干脆利索。
包(package)
在一个大型软件系统建立模型时,通常会将设计元素进行分组组织。包其实是一组模型元素和图的集合。
包的示例
好了,关于软件分析系统中常见的可视化概念和基本的重要视图我逐一梳理了一下,我简单总结一下:
1. 基于对功能需求的描述产生了可视化图形元素表达的概念
2. 在软件的分析和设计中,可视化图形已经工具化,use case图,交互图(顺序图,协作图),状态图,活动图构成了系统的行为视图(behavioral view)
3. 流程图是一个统称,虽然形式多样,但在软件研发领域基本上属于系统行为视图的范畴。
4. 顺序图,协作图,状态图,活动图是最为常见的流程图形式,有着各自的侧重点和表达规范,也有着各自的优缺点,没有所谓完美统一的流程图。
常见的图形元素和符号: