• [UML]UML系列——活动图activity diagram


    系列文章

    [UML]UML系列——用例图Use Case

    [UML]UML系列——用例图中的各种关系(include、extend)

    [UML]UML系列——类图Class

    [UML]UML系列——类图class的关联关系(聚合、组合)

    [UML]UML系列——类图class的依赖关系

    [UML]UML系列——类图class的泛化关系

    [UML]UML系列——类图class的实现关系Realization

    [UML]UML系列——包图Package

    活动图的引入:先上实例

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

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

          描述MP3播放功能:

    实例引入:活动图的作用

            求最大分数:

         该过程的代码描述:

     1  public class assistant 
     2 {
     3         public int id;
     4         ……
     5          public int max(int score1, int score2, int score3)
     6         {
     7             int temp;
     8             temp = score1;
     9             if (score2 > temp)
    10                 temp = score2;
    11             if (score3 > temp)
    12                 temp = score3;
    13             return temp;
    14         }
    15     }

    活动图的概念及作用    

          概念

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

          活动图的作用

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

    活动图的基本符号

         活动(动作)

         1、活动的概念

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

         2、活动的符号

         状态

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

         转移(动作流)

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

         分支与合并

         分支

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

     

          合并

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

    活动图的其他符号

         分叉和汇合

     

          分叉

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

     

          汇合

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

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

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

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

         泳道

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

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

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

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

         添加泳道之后:

        

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

         对象流

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

        上面的购物过程的活动图加入对象流之后:

    活动图的Rose建模

    一、创建活动图

    右击use case view ->new->activity diagram”

    二、重命名活动图并双击打开活动图窗口

    三、绘制活动图的关键步骤

    1、添加泳道

    (1)添加泳道:单击工具栏上的泳道按纽,在活动图窗口中单击。

    (2)重命名泳道:双击泳道标签,弹出如下窗口

    (3)调整泳道的宽度:拖动泳道间的调整线

     

    (4)删除泳道

     方法1:右击泳道->delete

    此删除操作产生的效果:
    泳道被删除(非彻底删除,可恢复)
    泳道内的图形也会同时被删除(非彻底删除,可恢复)

    方法2:在浏览器中右击泳道->delete

    此删除操作产生的效果:
    泳道被删除(彻底删除,不可恢复)
    泳道内的图形也会同时被删除(非彻底删除,可恢复)

    2、设置转移条件

    3、添加对象与对象流

    (1)将对象与对象流按纽显示在绘图工作栏中

    右击绘图工具栏空白处,选择“Customize”,弹出如下窗口,将这两项添加到绘图工具栏。

    (2)添加与设置对象

    注意:
    在同一步活动图中,同名的对象只能通过复制来创建

    总结

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

     

  • 相关阅读:
    C/C++ 公有函数无法返回私有的类对象解决方案
    C/C++ ShowWindow()
    Windows 隐藏控制台
    Windows 关闭win32 控制台
    Windows 开启win32 控制台
    CSS中可以和不可以继承的属性
    css3实现炫酷的文字效果_空心/立体/发光/彩色/浮雕/纹理等文字特效
    CSS position 属性_css中常用position定位属性介绍
    无间歇文字滚动_ 原生js实现新闻无间歇性上下滚动
    好看css搜索框样式_分享8款纯CSS搜索框
  • 原文地址:https://www.cnblogs.com/wolf-sun/p/3432135.html
Copyright © 2020-2023  润新知