个人作业二-举例分析流程图和活动图的区别与联系
(1)流程图的定义说明
I)什么是流程图
有几种流程图:简单的有(高级流程图;详细流程图以及同时显示流程步骤和涉及的人员的流程图(或称为矩阵流程图)。流程图是可视化的一种方式,通过信息处理系统直观地展示信息,展示一个系统中的行为和序列。
II)流程图的意义
流程图是一个示意图,说明为获得一个问题的解决方案需执行的行为和操作顺序。通常在配置计算机解决方案的早期阶段,需要绘制流程图。流程图能促进程序员和业务人员之间的沟通。在问题的编程中流程图起到非常关键的作用,并在理解复杂和冗长问题的逻辑时非常有用。流程图一绘制好,用任何高级语言编写程序就相当容易了。我们经常看到流程图给人们解释程序的时候十分有帮助。因此可以说,流程图是更好地给复杂程序存档的必需品。
流程代表一系列满足特殊需要的逻辑操作行为。流程自然出现。流程可能没有规律,不固定或者充满问题。有一个团队调查了某个商务流程,发现了其中的不足。团队负责人的回复是此商业操作中没有流程。实际上,一个商业运营是不可能没有流程的。流程可能没有固定的形式,或者说调查者自身不能清晰感觉到流程的存在。
可以从流程总是伴随着商务或交易这样的定义来理解流程图。但不是所有的流程都适合用流程图来表示。可以用流程图表示的流程有固定的套路,而且流程的关键环节不会时常变化。
III)什么时候要用流程图
流程图有利于理清事情当前的工作原理,以及如何可以改善。它还能协助寻找流程中的关键要素,同时还清晰地绘制一个过程结束和另一个过程开始之间的界限。制作流程图能促进参与者之间的交流,还能促成关于流程的共识。
流程图还能帮助发现多余或者错位的步骤。此外,利用流程图还可以确定适合的团队成员,辨别谁提供输入或资源给谁,建立用于监控或收集数据的重要领域,辨认需要改进和增加效率的领域,以及得出关于导因的推测。流程图还可以用于检查病人,信息,资料,临床护理的流程,或者这些组合流程。建议通过小组讨论的方式制作流程图,因为个人难以了解整个流程,而且交流有助于提高。
IV)流程图的类型
高级流程图
高级流程图(也叫一级或者自顶向下流程图)显示一个过程中的主要步骤。它呈现了一个流程的鸟瞰图。它可能也包括每个步骤(生产产品或者服务)的中间输出,和所涉及的子步骤。这种流程图提供了该流程的基本图像,并确定流程内部发生的变化。它对于找出合适的团队成员(参与此过程的人)以及监控进程十分有用,因为它专注于中间产出。
大多数流程用四五个形状就足够代表重要的步骤或者活动了。实际上,使用较少的形状是好的,因为这迫使设计者考虑哪些才是重要的步骤。其它步骤通常是重要步骤的子步骤。
详细流程图
详细流程图用图形表示一个流程中所有的步骤和活动。这种流程图表示一个过程中的步骤或活动,包括决策点,等待时间和频繁需要重做的任务(工作),以及反馈回路。详细流程图在检查流程细节方面和寻找问题或低效领域时十分有用。如,病人登记的详细流程图显示,当记录员和临床人员不能协助客户时导致的延误。
部署或矩阵流程图
一张部署流程图从谁负责某个步骤的角度映射出流程。它以矩阵的形状,展示不同的参与者和这些参与者的步骤流向。它主要是在确认谁向谁提供输入或服务,确认哪些地方不同的人可能不需要做同样的任务时发挥作用。
应该使用哪一种流程图
每种流程图都有优点和缺点。高级流程图是好制作的但是可能在某些情况下缺乏一些细节。当选择流程图类型时,团队应该清楚绘制流程图的目的。以下的表格:满足不同目的的流程图种类给你提供一些指导。但是你如果还不确定用哪一种,从高级流程图开始,逐渐转向详细的和部署流程图。注意,制作详细和部署流程图会很耗时。
V)绘制流程图的指导原则
流程图符号
通常使用标准的符号绘制流程图;但是需要时也可以使用特殊的符号。
怎样画流程图
一套有用的标准流程图符号,并非严格要求使用这些方框,圆圈,菱形或其它标准的符号来制作一个流程图,但是标准符号确实能更清晰地展示事件的类别。以下是大多数情况常用的一组标准符号。
圆角矩形—代表自动产生的事件。此类事件会引发后续行为,比如接到来电,或者描述一个新事态。
矩形或方形—代表流程中控制的事件。通常这是一个发生的步骤或行为。在大多数流程图中,这是常用的符号。
菱形—代表流程中的决策点。这种符号的描述一般为“是”或“否”回应,据此,流程各自分支走向流程图的不同部分。
圆圈—代表流程图和另外一个过程的连接点。另外一个流程的名称或指称应该写在此符号中。
(2)给出活动图的定义说明
活动图是uml的动态模型的一种图形,一般用来描述相关用例图。准确的活动图定义:活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。活动图是一种特殊的状态图,它对于系统的功能建模特别重要,强调对象间的控制流程。
交互图强调的是对象到对象的控制流,而活动图则强调的是从活动到活动的控制流,活动图是一种表述过程基理、业务过程以及工作流的技术。它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模
(3)举例对比流程图与活动图的区别
活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流。活动图在本质上是一种流程图。
活动图与流程图的区别
(1)、流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系。而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。
(2)、活动图能够表示并发活动的情形,而流程图不行。
(3)、活动图是面向对象的,而流程图是面向过程的。
用例图的4个基本组件:参与者(Actor)、用例(Use Case)、关系(Relationship)和系统。
泛化(generalization):泛化关系是一种继承关系,子用例将继承基用例的所有行为,关系和通信关系,也就是说在任何使用基用例的地方都可以用子用例来代替。泛化关系在用例图中使用空心的箭头表示,箭头方向从子用例指向基用例。
扩展(extend): extend关系是对基用例的扩展,基用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。extend的基用例中将存在一个扩展点,只有当扩展点被激活时,子用例才会被执行。 extend关系在用例图中使用带箭头的虚线表示(在线上标注<<extend>>),箭头从子用例指向基用例。
包含(include): include为包含关系,当两个或多个用例中共用一组相同的动作,这时可以将这组相同的动作抽出来作为一个独立的子用例,供多个基用例所共享。因为子用例被抽出,基用例并非一个完整的用例,所以include关系中的基用例必须和子用例一起使用才够完整,子用例也必然被执行。include关系在用例图中使用带箭头的虚线表示(在线上标注<<include>>),箭头从基用例指向子用例。
举个例子:
一张活动图可以有多个开始状态和结束状态。
一个活动可以与多个实体对象相关(相关指的是一种访问操作)。
分支用在有多条路径可选的流程中,针对不同的路径进行不同的分支处理。
活动图的走向可以是横向的也可以是纵向的,根据个人喜好而定。上图的这个销售订单处理活动图重点展示的是并发处理符号,它反映多个活动可以同时并发处理,并发结束后,又转变为顺序处理。

流程图定义:
1: 有起止框、输入框、输出框、处理框 、流程线、连接点组成。
2: 起止框:表示算法的开始或结束
3: 输入\输出框:表示算法的输入和输出操作。输入操作是指从输入设备山过江算法所需要的数据传递给指定的内存变量;输出操作 则是将常量或变量的值由内存贮器传递到输出设备。
4: 处理框:算法中各种技术和赋值的操作均一处理框加以表示。处理框内填写处理说明或具体的算式。
5: 判断框:算法中的条件判断操作。判断框说明算法中尝试了分支,需要根据某个灌水或提哦案件的成立与否来确定下一步的执行路 线。判断框内应当填写判断条件,一般用关系比较运算或逻辑运算来表示。
6: 注释框:表示对算法的走向,流程线箭头的方向就是算法执行的方向。
7: 连接点:表示不同地方的流程图的连接。

(4)活动图与流程图联系:
活动图本质上是一个流程图,更加抽象了
举个同一系统的例子(图书管理系统):
流程图:

活动图:


浙公网安备 33010602011771号