上一篇总结了界面交互词汇的规范,比如登录和登陆不能通用,账号比帐号更规范等。今天我将oa审批工作流设计过程中踩过的坑进行总结分享给大家,避免重复踩坑。
一、审批流程包含哪些要素?
答:一般审批流程审批包括发起申请、已申请的、待办流程、已办流程、以及流程监控。此处容易犯的错误是,只设计了发起申请页面,忘了已申请的页面;只设计了待办流程页面,忘记了已办流程页面。
流程监控分为申请人查看进度,以及管理人员查看流程详细过程。对于申请人来说他们希望能看到流程的全貌并希望知道当前的进度。以仓单注册流程为例,因其流程复杂,设计部门众多,耗时长,申请人无法看到当前进度就会产生焦虑情绪,所以在本次仓单注册流程的页面设计中,加入了会员端流程进度的展示。图中所示是一个Steps进度展示组件:
管理人员若有监控和审计的需求,我们就需要在界面中展示流程的详细过程,例如对流程中所有操作动作的记录:申请、修改、撤销、复核、审核、撤销审核、审批等等。通常我们需要记录操作人、操作时间,若有特殊需求,可能还需要记录修改了哪些字段的记录甚至进行版本记录。在会服系统的席位申请流程中,业务人员提出要对每一个申请的申请、审核、驳回、修改的操作进行记录,因此我们在申请记录详情页加入了时间轴组件。如图所示:
二、设计一个审批流程需要做哪些需求调研?
答:首先要调研业务流程:参与人有哪些,参与人的上下级关系怎样;是否有分支子流程,分支流程之间以及分支流程与父流程之间为串行关系还是并行关系,分支流程之间是否互斥,分支流程的聚合节点在哪里,聚合方式是什么;何种情况下流程结束;是否允许中止流程,中止后是否需要回滚已完成的节点。
然后需要调研流程中的细节:是否允许申请人修改、撤销、删除申请,是否需要记录修改历史;是否需要复核,是否允许审批人反悔;是否记录并展示申请时间、申请人、审批时间、审批人等操作信息。是否需要待办提醒以及如何提醒。
最后需要调研权限需求,包含查看权限和操作权限。查看权限,例如发起人是否可以查看其它人发起的流程,是否允许申请人查看操作日志等。操作权限,例如申请人与复核人不能为同一用户,申请人与撤销人不能为同一用户,审核人与审批人不能为同一用户等。
三、设计流程需要有哪些产出物?
答:业务流程图,状态流转图,若权限需求较多,还应提供角色权限矩阵。
四、什么是子流程?
答:当业务流程处理环节多,繁杂时,可以用子流程来分解。例如,交割的货物交收流程中,车船板与厂库非标的货物交收流程是父流程,延期、复检是子流程。设计子流程时需要调研清楚子流程的前置条件和后置条件,子流程之间是串行还是并行,是否互斥。
下图是一个简化版的货物交收流程。延期子流程和复检子流程的前置条件都是卖方已发货,后置条件都是未到达最后时间且买方未确认到货。这两个子流程之间不互相排斥可以同时申请。
延期子流程:
复检子流程:
五、撤回申请、撤销申请、撤消申请有何不同?
答:可以通用。在流程申请中大部分情况下使用撤销申请。撤回通常用于发出的消息撤回,例如撤回邮件,撤回短消息。撤消通常用于操作动作的回滚,例如富文本编辑器中的撤消按钮,办公软件中的撤消按钮。
六、审批流程包含哪些节点?
答:通常可能包含:申请、复核、审核、审批等节点。
七、复核、核对、审核、审查审批、核准有何区别?
答:复核:指同一级别用户对录入信息进行核对,通常不允许复核用户与申请用户为同一用户。
核对:将多人并行录入的输出由计算机进行比较,相同则流转至下一节点,不相同则退回。
审核:指审核人具有检查正确性的责任,但不具有公布结果的权限。
审查:相当于二级审查
审批:审查批示,审批人具有公布结果的权限。
核准:相当于审批。
八、什么是会签(会审)
答:一般当公文的内容涉及本单位的多个部门或与其他单位有关时,需要进行会签。会签的通过规则可以根据业务需要来设置,例如全部通过则算通过,或其中一人或N个人通过则算通过。
九、流程记录是否应该给予用户删除权限?
答:正在进行中的流程建议不允许任何用户删除。若业务上有审计需求,则建议不提供删除功能,若有必要可以在详情页面显示操作记录。
已经被驳回,或申请人撤销的流程,可以允许用户删除,这里需要调研的是,只删除申请人自己界面中的记录,还是将所有用户界面中的记录都删除。(此处的删除全部非物理删除)
十、并行与串行用于何种场景?各有何种优劣势?
答:通常并行流程用于同一级别不同部门的会审,并行审核可以提高审核效率。串行流程用于不同级别间由下至上的审核。串行审核可以筛选掉不合法的申请为上级审批减轻工作量。
例如本次会服系统的设计中,会员部与系统运行中心的审核由原先的串行审核改为并行审核,可提高审核效率。如图红框中所示。
此流程有一个细节设计值得介绍一下,图中大家可以看到申请材料一共有6个,其中会员部审核1、2、5、6,系统运行中心审核3、4、5。任何一个部门初审不通过,会员都需要修改后重新提交。这里就会产生一个问题,因为席位申请的表单信息量极大,驳回率较高,每次驳回会员修改后,都需要交易所两个部门重新检查,非常耗时。所以这里设计了为每一个材料单独提供通过或驳回的设计,通过的材料不需要再修改,只允许修改未通过的材料,这样降低了会员的误操作率,也提高了交易所的审核效率。如图红框中所示,材料一被驳回了需要重新上传,材料二通过了不能再修改。
十一、流程进度展示(Steps)设计过程中应注意哪些细节?
答:Steps进度展示条,就是图中的这个东西,它为用户展示了完整流程以及当前进度,是一种信息透明化可视化的很好的工具。但运用过程中我们也遇到了一些小困难。
首先我们发现常见的Steps都只能展示节点比较少的流程,通常不超过5个节点,例如电商流程,例如请假出差申请流程。那么像仓单注册这种包含4个子流程几十个节点的流程该如何展示?
第二我们可以注意到,Steps是一个线性的展示,没有子流程,没有分支流程,那么如果流程进入了子流程或分支流程,该如何展示?
在仓单注册流程设计中,我们遇到了史上前所未有的复杂程度,子流程分支流程繁多,子流程包含了交割预报、入库、质检、注册四个子流程,每个子流程各自包含3-5个节点。在申请过程中因品种不同,或因表单填写内容不同,会产生不同的分支流程,例如强麦不能复检,棉花不能由普通质检机构质检,保税仓单和非保税仓单的流程也不同。
在第一次的Steps设计时,我们把几乎所有的节点都展示出来,结果是这样的:
然后我们发现PC端的屏幕宽度是有限制的,这么长的流程图需要拐弯才能放得下:
这样看起来并不像是一个简洁明朗的用户界面,更像一个工程师使用的设计工具,这时候我们要站在用户角度去考虑了,仓单注册流程一共涉及4个单位:会员、仓库、质检机构、交易所。会员作为申请者其实只需要目前流程已经流转至哪个单位了,他们就可以去和交易所反馈问题。作为仓库和质检机构以及交易所的审核人员,他们只需要知道自己的待办任务是什么,办理完成即可,不需要了解上下游的情况。对于管理者来说,只看到Steps里面的内容又显得太少了,真的出现问题时查日志才能真正找到问题所在。因此,我们只为会员端提供了steps的展示,并且进行了精简:
虽然精简过后看起来好多了,但是这里有很多信息没有体现,例如会员申请了20张仓单,质检时过滤掉8张,最后可能只有12张注册成功,那么会员无法知道这少掉的8张去哪里了,所以我们把分支流程也加了进来:
又变复杂了,怎么办?继续精简!分析上图不合格的仓单与合格的仓单一共展示了3种信息,1节点,2原因,3过程路径。我们提炼出节点和原因才是重点,过程路径并不是重点,节点和原因可以只展示在该节点的下方:
至此,所有不必要信息已经被剔除,必要信息已经被安置在合适的位置上。
十二、如果业务人员提出的要求不尽合理怎么办?
答: 在会员服务系统的席位申请流程调研过程中,业务人员提出了一个需求,即会员每次申请一个新的席位,需要把所有历史席位附带在表单中,以便在终审时供领导参阅。第一版原型设计时,我们将所有历史席位信息展示在表单中,导致表单非常冗长,并且这样做也并不符合逻辑,因为席位申请是允许同时申请多个的,而哪一个席位先通过终审也是无法预测的,所以在申请时即把历史席位信息附加在表单上是不合理的。在第二次调研时我们询问了业务人员是否可以在初审通过后再将历史的席位信息附加入申请表提供给领导终审,业务人员表示同意,这样界面更加简洁了,流程也更加合理了。