5.5.2
活动图
UML的活动图(activity diagram)是用于表示系统控制流的,是状态图的特殊形式。活动图与流程图比较类似,具有如下与流程图不同的特征。
1)不像系统流程图那样仅用于程序设计级,能用于描述概念级的模型。
2)能描述并行动作。
构成活动图的主要元素如图5-36如示:
|
图5-36活动图的构成元素 |
活动图与流程图一样可以表示活动的顺序,活动图的控制流像流程图一样由相当于goto语句的控制进行移动,但没有循环结构和多层分支结构。图5-37表示自动贩卖机的活动图。
|
图5-37
自动贩卖机的活动图 |
这个活动图与前面介绍的场景描述相比,能用于描述一般的情况,包括利用者中途停止、继续投入钱币、取出商品后继续利用等一些异常情况。当然,当控制流变得复杂时,可能会使活动图难于理解。
在流程图中,动作的主体通常是由计算机(或相当于计算机的实体)所决定的。在面向对象的框架中使用活动图就使得各种各样的对象成为活动的主体。为了明确地表示出活动的主体,也可使用标识主体的描述方法(如图5-38所示)。
|
图5-38
标识主体的活动图 |
当把活动图视为图形时,其路径可解释为执行路径。根据不同的图示,分支可解释为“or”关系(选择分支),即可选择任一路径执行;也可解释为
“and”关系(并行分支),即所有的路径同时执行。此外,活动图还可表示为层次结构,使得活动图可像数据流图一样进行分解。
活动图主要是描述系统的全部活动,在模型化活动方面与UML的状态图、序列图和协同图成为互补关系。另外,也可用于描述工作流、业务流和开发过程等。
|