目录
[6.1 对业务流程建模时](#6.1 对业务流程建模时)
[6.2 对用例进行活动图建模时](#6.2 对用例进行活动图建模时)
一、什么是活动图
活动图**(Activity Diagram)**是UML中用于描述工作流程或操作执行流程的一种行为图。它展示了操作的流程,包括决策、并行处理、循环等,以及这些流程中涉及的各个活动或动作。
二、应用场景:
- 业务流程建模:活动图非常适合描述复杂的业务流程,因为它可以清晰地展示流程中的各个步骤、决策点、并行流程等。
- 软件需求分析:在软件需求分析阶段,活动图可以帮助分析人员更好地理解系统的功能需求,特别是那些涉及多个用户、多个系统或并行处理的功能。
- 系统设计:活动图可以作为系统设计的一部分,描述系统或组件在执行特定功能时的行为。
- 工作流建模:对于需要明确指定任务执行顺序的系统,如生产流程控制系统或项目管理系统,活动图可以用来描述工作流。
三、绘图符号的说明:
- 动作/活动(Action/Activity):表示流程中的一个步骤或动作,用矩形表示。
- 起始节点(Initial Node):表示流程的开始,用实心小黑圆点表示。
- 活动终点(Activity Final Node):表示流程的正常结束,用带有内圆圈的空心圆表示。
- 流控制(Flow Control):表示流程的方向,用带箭头的线连接各个活动或节点。
- 决策/分支(Decision/Branch):表示基于某个条件的决策点,用菱形表示,菱形内通常包含决策条件。
- 合并(Merge):表示多个分支合并为一个流程的点,也用菱形表示,但通常没有条件。
- 分叉(Fork)和汇合(Join):表示流程的并行处理,分叉用一条线分为多条线表示,汇合则用多条线合并为一条线表示。
- 对象流(Object Flow):表示对象在活动之间的流动,用带有标签的虚线箭头表示。
四、语法:
在UML中,活动图的语法并不是像编程语言那样的严格规则集合,而是指如何使用上述绘图符号来构建图表。活动图的构建通常遵循以下原则:
- 起始节点表示流程的开始。
- 活动表示需要执行的任务或步骤。
- 决策节点用于根据条件选择不同的流程路径。
- 分叉和汇合用于表示并行处理。
- 活动终点表示流程的正常结束。
- 流控制箭头指示流程的方向。
- 对象流表示对象如何在活动之间传递。
活动图通常是通过UML建模工具以图形方式创建的,但也可以用文本或伪代码来描述,特别是在早期的需求分析阶段。然而,对于复杂的系统或流程,图形表示通常更加直观和易于理解。
五、例图
也可以是泳道图来对用例或者对象建模。
六、建模的流程
在建模时,通常选择对业务流程建模或对用例的交互进行建模。
6.1 对业务流程建模时
- 选择要描述的业务过程,找出业务过程中的关键对象或参与者,将重要的对象或参与者从左到右依次排开;
- 为反应动作状态的执行者,为这些对象或参与者添加泳道;
- 找出业务的关键动作状态或活动节点,在对应的泳道中添加动作状态或活动;
- 确定业务的起始点及结束状态,为活动图添加初始状态和结束状态;
- 从起始状态开始,按照动作的发生次序,依次添加到活动图中;
- 连接动作状态,并根据业务情况,添加分叉与汇合、分支与合并等节点;
- 如需描述对象的情况,使用对象流来补充活动图。
- 审查活动图中是否有遗漏或需要进一步说明的地方,是否需要使用另外一个活动图进一步描述某些活动。
6.2 对用例进行活动图建模时
- 选定要建模的用例,确定用例执行的基本流程;
- 通过用例的事件流找出参与者的主动动作,把这些动作整理为活动图中的动作状态或活动状态;
- 为参与到用例基本流程的参与者和系统添加泳道;
- 把动作状态和活动状态添加到对应的泳道中;
- 使用分叉与汇合、分支与合并来描述用例执行中的并发动作和特殊事件的备选动作;
- 审查活动图是否符合实际情况,是否有遗漏,以及是否需要借助另外一个活动图来描述活动的情况。
(未来会做更详细的探讨,敬请关注)