活动图(Activity Diagram):活动是某件事情正在进行的状态,既可以是现实生活中正在进行的某一项工作,也可以是软件系统中某个类对象的一个操作。
活动图的组成:动作状态、活动状态、动作流、分支与合并、分叉和汇合、泳道、对象流。
动作状态:动作状态时活动图最小的单位构造块,表示原子动作
动作特点:
1.动作状态时原子的,无法分解为更小的单位
2.动作状态是不可中断的,一旦运行就不能被终止
3.动作状态可以是瞬时行为,所占用的处理时间极短
4.动作状态可以有入转换,入转换可以是动作流,也可以是对象流。
活动状态:活动状态可以被理解为一个组合,他的控制流由其他的活动状态或者动作状态组成。
活动特点:
1.活动状态可以被分解为其他子活动或者状态动作,可以被中断。
2.活动状态内部可以用另一个活动图表示
3.和动作状态不同,活动状态可以有入口动作和出口动作,也可以有内部转移
4.动作状态是活动状态的一个特例,如果某个活动状态只包括一个动作,那么他就是个动作状态。
动作流:由初始状态到活动状态结束
分支与合并:描述了软件对象在不同的判断结果下所执行的不同动作。
上图描述了还书过程,首先还书,如果所借图书没有超过期限,则还书成功,如果超过规定期限,则需要缴纳一定罚款,才能离开
分叉和汇合:在建模过程中可能会遇到对象在运行中存在两个或者多个并发运行的控制流,在UML中可以使用分叉把路径分成两个
或者多个并发流,然后合并,同步这些并发流。
对象流:活动图一般是对系统进行需求分析,描述系统动态行为,这些工作处于软件开发的早期阶段,当软件开发进入建造期后,
就需要考虑动态的行为实现,这时,就可以在活动图中使用对象流。