AHPU-YZZ

软件工程 班级链接
博客班级 https://edu.cnblogs.com/campus/ahgc/AHPU-se-JSJ18
作业要求 https://edu.cnblogs.com/campus/ahgc/AHPU-SE-19/homework/11473
目标 流程图和活动图的区别与联系
要求 <3190704120>
1、流程图明确的指定了每个活动的先后顺序,而活动图描述活动所必要的工作顺序。活动图主要考虑业务的流程,体现actor与系统的交互行为。

2、流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理之间有严格的顺序和时间关系;而活动图描述的则是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。

3、活动图能够表示并发活动的情形,而流程图做不到。

4、活动图是面向对象的,而流程图是面向过程的。

5: 有起止框、输入框、输出框、处理框 、流程线、连接点组成。

6: 起止框:表示算法的开始或结束

7: 输入\输出框:表示算法的输入和输出操作。输入操作是指从输入设备山过江算法所需要的数据传递给指定的内存变量;输出操作 则是将常量或变量的值由内存贮器传递到输出设备。

8: 处理框:算法中各种技术和赋值的操作均一处理框加以表示。处理框内填写处理说明或具体的算式。

9: 判断框:算法中的条件判断操作。判断框说明算法中尝试了分支,需要根据某个灌水或提哦案件的成立与否来确定下一步的执行路 线。判断框内应当填写判断条件,一般用关系比较运算或逻辑运算来表示。

10: 注释框:表示对算法的走向,流程线箭头的方向就是算法执行的方向。

11: 连接点:表示不同地方的流程图的连接。

12:流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系。而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。

13:活动图能够表示并发活动的情形,而流程图不行。

14:活动图是面向对象的,而流程图是面向过程的。


一、流程图
定义:以特定的图形符号加上说明,表示算法的图,称为流程图或框图。
功能:
流程图是流经一个系统的信息流、观点流或部件流的图形代表。在企业中,流程图主要用来说明某一过程。这种过程既可以是生产线上的工艺流程,也可以是完成一项任务必需的管理过程。
流程图是揭示和掌握封闭系统运动状况的有效方式。作为诊断工具,它能够辅助决策制定,让管理者清楚地知道,问题可能出在什么地方,从而确定出可供选择的行动方案。
流程图有时也称作输入-输出图。该图直观地描述一个工作过程的具体步骤。流程图对准确了解事情是如何进行的,以及决定应如何改进过程极有帮助。这一方法可以用于整个企业,以便直观地跟踪和图解企业的运作方式。
流程图使用一些标准符号代表某些类型的动作,如决策用菱形框表示,具体活动用方框表示。但比这些符号规定更重要的,是必须清楚地描述工作过程的顺序。流程图也可用于设计改进工作过程,具体做法是先画出事情应该怎么做,再将其与实际情况进行比较。
基本结构:顺序结构,条件结构(又称选择结构),循环结构,分支结构。
流程图符号及含义:

举例说明:(邮箱注册)

二:活动图
定义:活动图是一种用于描述系统行为的模型视图,它可用来描述动作和动作导致对象状态改变的结果,而不用考虑引发状态改变的事件。在UML中,活动的起点用来描述活动图的开始状态,用黑的实心圆表示。活动的终止点描述活动图的终止状态,用一个含有实心圆的空心圆表示。活动图中的活动既可以是手动执行的任务,也可以是自动执行的任务,用圆角矩形表示。
活动图的组成:

动作状态
  动作状态(action state)是原子性的动作或操作的执行状态,它不能被外部事件的转换中断。
  在UML中,动作状态使用平滑的圆角矩形表示,动作状态表示的动作写在矩形内部
活动状态
  动作状态是一种特殊的活动状态。可以把动作状态理解为一种原子的活动状态,即它只有一个入口动作,并且它活动时不会被转换所中断。
  活动状态和动作状态的表示图标相同,都是平滑的圆角矩形。两者不同的是活动状态可以在图标中给出入口动作和出口动作等信息。
组合活动
  组合活动是一种内嵌活动图的状态。一个组合活动在表面上看是一个状态,但其本质却是一组子活动的概括。一个组合活动可以分解为多个活动或者动作的组合。每个组合活动都有自己的名字和相应的子活动图。一旦进入组合活动,嵌套在其中的子活动图就开始执行,直到到达子活动图的最后一个状态,组合活动结束。
  如果一些活动状态比较发杂,就会用到组合活动。比如,我们去购物,当选购完商品后就需要付款。虽然付款只是一个活动状态,但是付款却可以包括不同的情况。对于会员来说,一般是打折后付款,而一般的顾客就要全额付款了。这样,在付款这个活动状态中,就又内嵌了两个活动,所以付款活动状态就是一个组合活动。
分叉与结合
  并发(concurrency)指的是在同一时间间隔内,有两个或者两个以上的活动执行。对于一些复杂的大型系统而言,对象在运行时往往不止存在一个控制流,而是存在两个或者多个并发运行的控制流。为了对并发的控制流建模,在UML中引入了分叉和汇合的概念。
  分叉用来表示将一个控制流分成两个或者多个并发运行的分支,结合用来表示并行分支在此得到同步。
分支与合并
  分支在活动图中很常见,它是转换的一部分,它将转换路径分成多个部分,每一部分都有单独的监护条件和不同的结果。当动作流遇到分支时,会根据监护条件(布尔值)的真假来判定动作的流向。分支的每个路径的监护条件应该是互斥的,这样可以保证只有一条路径的转换被激发。在活动图中,离开一个活动状态的分支通常是完成转换,它们是在状态内活动完成时隐含触发的。
  合并指的是两个或者多个控制路径在此汇合的情况。合并是一种便利的表示法,省略它不会丢失信息。合并和分支常常成对的使用,合并表示从对应分支开始的条件行为的结束。
泳道
  为了对活动的职责进行组织而在活动图中将活动状态分为不同的组,称为泳道(swimlane)。每个泳道代表特定含义的状态职责的部分。在活动图中,每个活动只能明确的属于一个泳道,泳道明确的表示了哪些活动是由哪些对象进行的。
  每个泳道都有一个与其他泳道不同的名称。
  每个泳道可能由一个或者多个类实施,类所执行的动作或拥有的状态按照发生的事件顺序自上而下的排列在泳道内。
对象流
  活动图中交互的简单元素是活动和对象,控制流(control flow)就是对活动和对象之间的关系的描述。详细的说控制流表示动作与其参与者和后继动作之间以及动作和其输入和输出对象之间的关系。而对象流就是一种特殊的控制流。
  对象流(object flow)是将对象流状态作为输入或输出的控制流。在活动图中,对象流描述了动作状态或者活动状态与对象之间的关系,表示了动作使用对象以及动作对对象的影响。

posted @ 2020-11-11 23:18  ahpu-yzz  阅读(197)  评论(0编辑  收藏  举报