UML系列——活动图activity diagram

原文地址: https://www.cnblogs.com/wolf-sun/p/3432135.html

系列文章

UML系列——用例图Use Case
UML系列——用例图中的各种关系(include、extend)
UML系列——类图Class
UML系列——类图class的关联关系(聚合、组合)
UML系列——类图class的依赖关系
UML系列——类图class的泛化关系
UML系列——类图class的实现关系Realization
UML系列——包图Package

活动图的引入:先上实例

实例描述:假如现在有一个简单的音乐盒,用户根据歌曲名称搜索自己喜爱的音乐,找到后,用户可以以MP3模式播放(同步显示歌词),也可以以MV模式播放。由于音乐和歌词都来自于互联网,因此在播放之前应连接这些文件。

根据上述描述,该音乐盒的用例图如下:

UML系列——活动图activity diagram_第1张图片
1.png

描述MP3播放功能:
UML系列——活动图activity diagram_第2张图片
2.png

实例引入:活动图的作用

UML系列——活动图activity diagram_第3张图片
3.png

求最大分数:
UML系列——活动图activity diagram_第4张图片
4.png

该过程的代码描述:

public class assistant 
{
        public int id;
        ……
         public int max(int score1, int score2, int score3)
        {
            int temp;
            temp = score1;
            if (score2 > temp)
                temp = score2;
            if (score3 > temp)
                temp = score3;
            return temp;
        }
    }

活动图的概念及作用

概念

活动图本质上是一种流程图,它描述活动的序列,即系统从一个活动到另一个活动的控制流。

活动图的作用

描述用例,描述类的操作,另外,可以用来描述算法(单独使用)。

活动图的基本符号

UML系列——活动图activity diagram_第5张图片
5.png

活动(动作)

1、活动的概念
表示工作流过程中命令的执行或活动的进行。

2、活动的符号

UML系列——活动图activity diagram_第6张图片
6.png

状态

7.png

注意:一个活动图中只能有一个开始状态,但可以有多个结束状态。(例如上面的MP3活动图,就有2个结束状态)

转移(动作流)

活动之间、活动与状态之间的转换。

8.png

分支与合并
UML系列——活动图activity diagram_第7张图片
9.png

分支

根据条件的取值决定动作的流向。

UML系列——活动图activity diagram_第8张图片
1.png

合并

合并将俩条路径连接到一起,合并成一条路径。


UML系列——活动图activity diagram_第9张图片
2.png

活动图的其他符号

分叉和汇合

分叉

用于将一个控制流分为两个或多个并发运行的分支。

3.png

汇合

用于将两个或多个控制流合并到一起形成一个单向的控制流,符号与分叉相同。

如果一个控制流在其他控制流到达之前到达了连接,它将会等待,知道所有控制流都到达了才会向连接传递控制权。

UML系列——活动图activity diagram_第10张图片
4.png

实例:销售合同从签订到履约的过程

销售合同签订后,要进行核对。如果发现错误,则终止履约;如果没有错误,则要核对货物清单确定是否有货,还要核对付款单确定对方是否已经付款,只有这两项都完成,才可以发货。如果无货或对方尚未付款,则终止履约。则活动图如下:


UML系列——活动图activity diagram_第11张图片
5.png

泳道

泳道表明每个活动是由哪些人或哪些部门负责完成。


UML系列——活动图activity diagram_第12张图片
6.png

在活动图中泳道区分了负责活动的对象,它明确地表示了哪些活动是由哪些对象进行的。

在包含泳道的活动图中每个活动只能明确地属于一个泳道。

简单模拟卓越网的购物流程


UML系列——活动图activity diagram_第13张图片
7.png

添加泳道之后:

UML系列——活动图activity diagram_第14张图片
8.png

从左到右:顾客、运输部、财务部

用活动图描述某个对象时,可以将涉及到的对象放到活动图中,并用一个依赖将其连接到活动或状态上,对象的这种使用方法就构成对象流。

9.png

上面的购物过程的活动图加入对象流之后:
UML系列——活动图activity diagram_第15张图片
1.png

总结

活动图就总结到这里,这章内容有点多,涉及到的名词特别多,其实照着文章中的实例自己画一遍,就印象深刻了。活动图用的还是比较多的。

你可能感兴趣的:(UML系列——活动图activity diagram)