游戏迷提供最新游戏下载和手游攻略!

你可能学过一张假的流程图,下面三步教你如何画一张大工厂流程图。流程画图软件有哪些

发布时间:2024-07-04浏览:4

流程图有没有特定的标准?正确的流程图应该具备哪些规范?本文将从流程图的含义、如何绘制流程图、常见流程图问题三个方面解答这些问题。

作为产品经理,画流程图是必备技能,比如开发订单处理的流程、产品评价的流程、用户开立银行账户的流程等。

介绍如何画流程图的文章也很多,我们发现画法多种多样,概念也各异,这就带来一个问题:什么样的流程图才是正确的?有标准吗?

没有标准和方法的流程图,必然会产生歧义和混淆,比如下面两个流程图,都是有问题的,容易产生表述混乱。

有问题的流程图

有问题的流程图

其实流程图是有标准的,就是UML(统一建模语言)制定的标准,叫做活动图。而且这个标准被微软、IBM等大公司所采用。通过这篇文章,我们可以知道上面两个流程图存在的问题。

因为我们知道很多流程图都存在问题,所以画好流程图并不是那么容易的。所以我将分三篇文章介绍如何绘制 UML 流程图,分别是:

第 1 部分:如何创建具有正确规则的流程图?

第二部分:如何创建大家都喜欢的流程图?

第二部分:流程图概念分析

第一部分带你了解流程图的正确姿势与语言,第二部分教你如何画出粗细合适、大家都喜欢的流程图,第三部分则是概念讲解,破除对业务流程图、任务流程图、功能流程图的误解。

先学习流程图的规则就像下棋,必须先了解棋的规则,然后学习取胜的策略。如果反过来,就好比会下棋,却不懂基本规则。规则很无聊,但你还是得先学习。

本文包括:流程图的含义、如何绘制流程图、以及常见流程图问题。

1.流程图的意义

产品经理要注意画流程图,需要有清晰的逻辑表达和思维。

首先,很多产品经理往往从制作可交互的页面原型开始,但是这样往往会导致需要重画原型,因为流程不清晰,所以应该先画流程图,再画原型。

其次,研发经常批评产品经理没有逻辑,画流程图是建立逻辑的一种方式,也是面试和产品评测演讲中必不可少的,我们来看看怎么画。

2.如何画流程图?

流程图是描述为完成某项任务而进行的一系列相关活动。UML 将流程图称为活动图,为了便于讨论,也称为流程图。

我们以一个订单为例,一步步画出流程图,整个流程涉及从用户下单到收到商品的过程,以下是订单流程:

逻辑是,用户下单后,物流人员需要把商品送到用户家里,用户收到货后,点击确认收货,整个订单就完成了。这里面涉及到以下几个概念:

1. 活动理念

这里,物流人员送货上门和用户确认收货,都是体现人的行为,都涵盖了“主语+谓语+宾语”,“用户”为主语,“点击”为谓语,“确认收货”为宾语。

人们所做的事就是“动作或操作”,UML 称之为活动。其实它和动作或操作含义差不多,但活动的泛化更为广泛。

活动的标准画法是画一个圆角的长方形框,里面写上具体的活动,活动的内容写法是“主语+谓语+宾语”,可以根据说话习惯省略宾语或主语。

活动之间以箭头线连接,称为“转移”。这意味着完成一个活动后,可以进入下一个活动。例如,物流人员将货物送到你家后,用户确认订单已完成,否则无法进入下一个活动。

2.起点和终点的概念

流程图有一个“起点”,表示流程从哪里开始。起点是一个小的实心圆圈。

流程图也有“终点”,表示上一步的“活动”是整个流程的终点。对于上面的订单流程,终点活动是“用户确认收到商品”,这个活动完成后,整个流程就完成了。终点画成一个实心圆加一个空心圆。

注意:起点必须有,但终点可以省略,也可以有多个。画出终点的好处是让别人知道你考虑了终点因素。但有些流程涉及的终点太多,终点很明显,画出来就麻烦了。

3.判断和平行概念

现在我们已经画好了流程图。但是我们发现这个过程中有很多细节需要补充,也就是我们接下来要介绍的判断和并行的概念。下面我们就以问题为切入点,看看如何完善流程图。

如何表达“网上支付或者货到付款”有不同的处理?——利用判断符号解决。

这时候物流人员需要对订单进行判断,如果是网上支付(发货前付款),那么商品会直接送到用户手中,否则必须用户现金支付或者刷POS机后才能发货,流程图如下:

这个判断点用菱形符号表示,代表一次进入和多次退出,判断条件在退出线上用方括号表示。这里:

条件1为“若用户在线支付”(简称:网上支付),那么对应的动作为“物流将商品送到用户手中”;

第二个条件为“若用户货到付款”(简称:现金支付),对应的动作为“物流收现金”。

第三个条件是“如果用户选择POS支付”,那么“物流会使用POS机收款”。

注:不同于其他流程图在菱形中间写文字,这里菱形中间不允许写文字,但意思是一样的,其实可以在菱形位置写“物流确认付款状态”,写文字比较容易理解,但有点麻烦。

例如,在电子商务中,如果用户已经付款,他或她可能会后悔并通知商家。商家会有两个选择:“如果你同意,则取消订单”或“如果你拒绝,则坚持发货”。两种表达方式都可以达到相同的效果,但方式不同。

了解了与传统流程图的表示方法的不同之后,对于UML系统来说,除了上面介绍的用菱形的表示方法之外,还有一种方式就是不添加菱形判断图标,如下图所示:

这两种表达方式都可以,但是重要的是在转运线上写上判断条件。对于本例,增加一个菱形图标表示判断会更加清晰,明确物流人员需要在这里进行判断。

如果用户还想同时开具发票,该如何表达?——使用并列符号解决。

现在很多发货都是货品和发票一起发,或者支持电子发票,但是有些公司开具的是纸质发票,货品和发票位置不一致,这种情况下需要将货品和发票分开发给用户。

也就是说有两组物流人员,一组负责送货,一组负责发发票,这是一个并行的过程,如图所示:

流程图怎么画_流程画图软件有哪些_画流程图的

方法是画一条粗横线,加上一条入账和多条出账转移线,这个例子里两个出账分支流程是发货和发货发票,这时候是同时处理的,无所谓先做还是后做。

4.融合与合并概念

网上支付与现金支付,只要有一个支付完成,如何表达即完成?——通过合并解决。

至此,只要在线支付或者现金支付,就完成了支付。也就是条条大路通罗马,只要能走到一条路,就可以进行下一步。此时,有两种表达方式:

一种方式是通过三条转接线直接连到下面的活动,这种转接线我们之前见过。第二种方式是画一个菱形,有多个 ins 和一个 out。注意这里的菱形符号并不是判断的意思,只是借用了菱形符号,所以不需要在线旁边添加判断条件。

其实第二种画法才是UML中的标准画法。不过毕竟有些看流程图的人不是程序员,画的不好可能会引起误解。为了方便交流,可以选择第一种画法。不过,当你在网上看到流程图上加了合并的菱形符号时,你就应该意识到,这不是判断,而是合并。

再比如,用户可以点击确认收货,系统也会自动确认收货,谁先确认收货,即为收货,订单最终完成。

如何表达只有当发票和产品都被用户收到时,流程才算完成?——通过汇流解决。

前面我们说过了,商品和发票是分开寄送的,用户必须同时收到发票和商品后才可以点击“确认收货”,两者缺一不可,具体见下图:

发货方式是一条粗横线,加上多个入口和一个出口,入口分支是发货和发货单,此时是同时处理的,无所谓先做还是后做,但是相遇的时候必须全部完成才能进入下一步。

再比如餐厅上菜的例子,我们去餐厅吃饭,菜品是分开上菜的,全部上菜之后才算流程完成。但是在野流程图中,没有办法表达这个并行合并的过程。

通常并行与汇聚都是成对出现,即两组活动并行执行,但两组活动都必须完成之后才能进入下一阶段。上图是一个完整的流程图。

5. 流程图摘要

流程图表示方法概括如下:

3.通过问题学习概念

看完了如何画流程图,我们再来看看文章开头的流程图存在的问题。

情况 1:流程图中不应存在非活动内容

上面的流程图把一个产品经理的工作分为需求收集、需求讨论、需求评审,画了一个流程图来说明。大家想一想,这个流程图存在什么问题?

按照流程图的概念,流程图中每一个框就是一个活动,而活动的典型结构是“主语+谓语+宾语”。

在这个语境中,“有效需求、已有功能、需求池”不是一个活动,都是关于不同类型的需求和功能概念,真正的活动是产品经理的“收集需求、讨论需求、评审需求”。

这里大家会问,我应该如何体现“有效需求、需求池”等概念呢?

那么可以这样描述:我们可以将需求分为新需求+旧需求,其中新需求产品经理需要筛选出有效需求和无效需求。进入需求评审阶段的新需求是有效需求和旧需求,并放入需求池中。在这个阶段,我们决定哪些需求是本期需要开发的。

如果你了解UML面向对象的思维方法,就会知道上面的描述是另一种形式的描述,另外知识其实是可以互操作的,如果按照金字塔原理思考,也可以得到上面的描述。

通过本案例我们发现,如果将需求处理方案和需求评审流程混合在一起描述,会令受众感到困惑,而如果将两者分开描述则会清晰很多。

情况 2:流程图与状态图不同

这是一个买家下单、付款的过程,这里我们还是按照“主语、谓语、宾语”来拆分,我们发现等待付款不是一个活动,而是一个状态,横线上的“买家下单”就是一个活动(也就是用户点击下单)。

所以这还是不算流程图,用UML来表达成状态图更合适。如果从状态图的角度看,这里同样存在问题。以后我们会专门开个专题来讲讲状态图。

案例三:流程图的逻辑需要慎重考虑

这个流程图展示的是从用户下单到供应商发货的整个过程,我们假设这是京东或者天猫的下单流程,这里“生成发货单,用户选择支付方式并收款”的流程描述是错误的,你能想一想这是什么问题吗?

现在让我们回想一下如何在购物应用上下订单。流程如下:

1)当用户从购物车中点击“前往结账”时,将打开“提交订单页面”。

2)在“提交订单页面”,用户可以选择在线支付或货到付款,并编辑收货地址,此时点击“提交订单”按钮。

3)系统生成订单,并向用户显示“支付页面”。

4)在“支付页面”,用户可以选择银行卡或者支付宝,点击“银行卡支付”按钮。

5)系统将显示一个页面,要求您输入网上银行(或支付宝)密码。

6)在“密码输入页”,用户“输入账户密码”后完成订单支付。

回顾整个过程,我们会发现以下几个问题:

问题1:摘要“用户选择付款方式,然后收款,并可以在中途取消订单”是错误的。

其实就是指“在订单提交页面,用户先点击提交订单;然后弹出密码输入页面,用户输入密码完成支付”。此时,如果用户点击提交订单后没有输入支付密码,用户可以进入个人订单列表,选择“取消订单”。所以总结一下就是:用户提交订单,然后用户支付订单,提交订单后可以取消订单。

问题2:生成交货单和其他活动不并行。

系统实际工作过程是用户点击“提交订单”后,系统会生成订单,若未生成订单则不会出现支付页面,生成的订单在个人中心的订单列表中也可以看到。对于需要支付的订单,用户可以支付或者取消订单。所以发货单的生成和支付方式的选择是关系到是否同时进行的。

通过这个案例我们发现,流程培训首先需要仔细考虑每一个环节。其次,这就涉及到如何将流程的每一步抽象出来,如何画出大家喜欢、看得懂的流程图的问题。这也是第二篇文章的重点。

四、结论

通过本文,大家学会了如何绘制标准流程图。

这里我们首先要了解活动、判断、并行、并行汇聚、合并这些基本概念。其次通过三个例子讲解如何正确表达流程图,而不是学一张假流程图。

我们发现流程图是一种表达逻辑的方式,还有很多其他的方式需要进一步解锁,这些会在后续的文章中讲解。

能说说你遇到过的坑吗?有什么启发和改变吗?

热点资讯