一、流程图
- 定义:流程是一组将输入转化为输出的相互关联或相互作用的活动。流程图则是将流程表达清楚的图形。
- 思路:表达清楚什么对象在什么前置条件下执行了什么操作,产生了什么结果。
- 四要素:根据流程定义,提取出流程需要具备的四要素:对象、输入、动作、输出。
①对象:即执行人或产品中的用户。
②输入:既可以是事件,也可以是动作。可以理解为前置条件。
③动作:即产品中的操作,如点击、输入等。
④输出:即结果或动作的目的。
二、业务流程图
- 定义:业务流程图是带泳道的流程图,是一种描述管理系统内各单位、人员之间的业务关系、作业顺序和管理信息流向的图表。
- 作用:表达清楚业务需求在产品线的各个阶段中在各个模块之间的轮转。
- 业务流程图的基本元素:
4.业务流程图的绘制步骤:
(1)角色:找出参与该业务的角色有哪些,角色可以是某个群体、某个岗位的抽象或某个系统。
如:应用中台的知识管理中,知识管理员是一个角色,负责管理知识模板和知识库;知识创建者是一个角色,负责生成(创建、编辑)知识;知识消费者是一个角色,负责消费(查看、点评)知识库中的知识。
(2)任务:穷举并抽象各角色承担的任务。
做需求调研时,需要穷举出各个角色所承担的任务,并详细了解每个任务的具体内容。然后对任务的具体内容进行抽象提炼,提取任务要点,采用“动宾结构”对任务进行描述(描述时不限字数,但最好不超过8个字)。
如:穷举创建知识并存入知识库的业务流程中,用户角色的任务:
- 选择知识模板;
- 输入知识相关信息;
- 提交知识;
- 审批知识;
- 存入知识库。
除了围绕业务目标的任务,我们还要考虑实际执行过程中异常情况的处理任务。即针对每个任务节点,思考:是否有异常情况出现?有哪些异常情况出现?出现异常情况后如何处理?
如:(接上)为了处理这些异常情况,用户角色还需要处理的任务有:
- 返回信息不完整异常提示;
- 返回未审批通过提示;
(3)顺序:按顺序串起主流程。绘图建议使用业务流程图的基本元素来表达对应的含义。
按业务方的期望,顺利完成的正向流程,称为主流程。在主流程执行过程中,可能会出现一些特殊情况(如异常情况),描述对特殊情况进行处理的流程,称为分支流程。
先挑出主流程的任务,再找出可能需要的逻辑判断,最后按任务执行的先后顺序,用流程线连接起来,即得到主流程。以知识管理为例,主流程如下图所示:
(4)异常:补充分支流程。针对主流程,补充处理异常情况的分支流程
从穷举的任务中,找出异常情况对应的任务,补充到主流程中。见下图橙色部分:
(5)完善、调整流程图。
主要有三点:
- 在首位增加“开始”、“结束”节点,确保每个分支流程都有结束;
- 调整位置,使每个节点都在正确的角色泳道中;
- 尽可能避免线条交叉。
5.注意事项:
- 使用泳道图以及业务流程图中的基本元素来表达对应的含义。
- 一个流程只有一个起点,有一个或多个终点。
- 先角色、再任务;先主流程,后分支流程。
- 根据流程方向尽量从左到右,从上到下。
- 尽量避免线条检查。
- 完成后再次检查,是否完整,是否能形成闭环等。
二、状态机图
- 定义:状态机,又称为有限状态(自动)机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。它描述了一个对象在其生命周期内所经历的各种状态,以及状态之间的转移、发生转移的原因、条件和转移中所执行的活动。
- 作用:精确的描述对象在生命周期内的行为特征,指明对象的行为以及不同状态之间的差别。
- 状态机图的基本元素
4.状态图的绘制步骤:
(1)明确对象,找出对象可能的状态。
以不动产的场景服务管理为例,对象为“场景服务”,涉及的状态包括:“待测试”、“待发布”、“已发布”、“已下线”。
(2)按顺序串联主流程状态,并补充状态之间转换的事件。
如:进入场景服务管理后,可选择新增服务,完成该操作后,服务状态变为“待测试”;针对“待测试”状态的服务进行测试操作,如测试成功,则服务状态变更为“待发布”;然后由管理人员手动将该服务发不出去供第三方使用,状态变更为“已发布”;如服务需要调整修改或关闭,管理员可执行下线操作,状态变更为“已下线”。如下图所示:
(3)补充逆向流程或其他异常路径。
上面的状态机时按照正常情况下的每个状态推进的,实际运行过程中是否有其他推进路径?是否会逆向推进?这些我们都要完整的思考。
如:新增完服务之后直接删除服务;针对已下线的服务进行二次编辑修改然后重走流程直至上线等。此时的状态图如下所示:
(4)完善、调整状态图。
主要有三点:
- 尽可能避免线条交叉;
- 检查是否形成闭环,所有的规则是否都考虑完善。
- 一个流程只有一个起点,有一个或多个终点。