一篇好的文章需要好好的打磨,你现在浏览的文章是一篇关于工作流设计思路 工作流设计模式的文章,本文对文章工作流设计思路 工作流设计模式好好的分析和解答,希望你能喜欢,只有你喜欢的内容存在,只有你来光临,我们才能继续前行。
10年有幸接触了HP的一套PAAS平台,里面有一套关于工作流、审批流的设置模块。公司如今做的这个项目也实用到审批流。这中间磕磕碰碰的遇到不少问题,但最后也小有收获,趁着周末闲暇时间,把一些细节方面上的事分享出来,一来是对前期的工作有个总结;二来抛砖引玉想多听听大家的意见,开拓开拓思路,和大家共同成长进步。
先来看看关于工作流、审批流的定义:
(1)PAAS平台工作流&审批流的定义:
工作流:可自己定义的一种自己主动运行的工作流程,由表单数据发生改变时触发,同一时候触发关联多种不同的事物。
审批流:可自己定义的一种审批流程,须要用户手动批示是否同意进入下一步,触发审批流程规则须要满足审批申请人和数据筛选条件。
(2)百度百科工作流&审批流的定义:
工作流:在多个参与人员之间依照事先定义好的规则传递信息、文档或任务的过程自己主动运行,从而实现某个预期的业务目标,或者促使该目标的实现。
工作流的优点:
(1)降低了记录分配,任务指派过程中很多不必要的操作;
(2)通过标准化流程提高工作效率;
工作流应用场景:当新增客户信息时,区域A的客户自己主动分配给业务员A,区域B的客户自己主动分配给业务员B,并发送邮件或者短息通知相关业务员。
审批流:审批流定义节点用来为某个详细的业务单据或某个详细单据的一个业务类型进行审批流程的定义。被定义了审批流程的单据将依照定义的审批流程被传递和审批。这一完整的过程就称为审批流。
概述:通常的流程一般分为2个层次来讲:流程、步骤(活动或者节点):
(1)流程就是某一详细的业务流程(请假审批流程,财务报销审批流程);
(2)步骤(活动或者节点)就是一种特定业务类型的封装;
一套完整的审批流程、工作流程大体上包含:
(1)流程定义;
(2)步骤定义:触发规则;操作人;运行动作(发起申请、撤回);运行操作(任务通知、邮件提醒、字段更新、转移数据、转换表单、传送接口);
(3)步骤反复:触发规则;操作人(串行/并行);运行动作:(审批处理:通过、拒绝(退回、否决)、撤回);运行操作:允许、拒绝同一时候包含(任务通知、邮件提醒、字段更新、转移数据、转换表单、传送接口);
(4)流程结束;
名词解释:
第一:操作人处理
(1)串行:上一处理人指定某一处理人时,其它拥有此步骤权限的操作员不可进行查看和操作,必须当前处理人处理完成后,流程才干继续;
(2)并行:由上一处理人指定固定多个处理人时,由任一员工处理就可以,不分前后顺序,所有处理完毕,进入下一步骤;
这里有2点须要说清楚:
(a)多人处理分为:一人通过(当中一人进程审批处理就可以)、多人通过(全部审批人都须要进行审批处理)2种情况,请依据自己的业务详细选择;
(b)设定审批人分为:由提交人指定、自己主动依照角色层级关系分配、选择审批人3种情况,请依据自己的业务详细选择;
两者的相应图例如以下:
第二:运行动作
(1)申请:针对当前业务表单信息发起申请,开始审批流程的传递。分为2部分:由申请提交人手动发起申请、由程序自己主动推断满足触发规则的数据自己主动发起申请;另外还要注意的2点:是否同意提交人撤消(是、否)、记录编辑(不可编辑、管理员可编辑、管理员和审批人都可编辑 );
(2)通过:当前步骤处理通过,进入下一步骤,若为末步骤,则流程处理完毕;
(3)退回:将步骤退回至上一步骤,即返回至上一处理人处,若为首步骤,则不进行退回;
(4)否决:将步骤直接结束,运行结束动作拒绝活动,不再进行操作,或者回退至第一步骤;
(5)撤回:若当前步骤已处理,下一处理人未处理的情况下可进行撤回操作。
上面须要注意的是:拒绝的时候是采用“退回”还是“否决”动作。以下几种情况的相应图:
第三:运行操作
(1)任务通知:定义的系统内任务自己主动生成,能够由定义好的流程调用,在流程运行到适当时机发送系统内任务通知相关人员;
(2)邮件提醒:定义给系统内部和外部人员发送邮件提醒的事务。能够在工作流和审批流中调用,在流程运行到适当时机发送邮件通知流程相关人员;
(3)数据更新:用于流程运行的事务,能够在流程运行到指定位置,依照设置好的数据更新规则,指定更新本表单或关联表单的数据;
(4)表单转换:设置一个表单的数据,按转换模板映射生成还有一个或几个表单数据。假设表单带有子表单数据,也能够设置子表映射转换到相应表单的子表单;
(5)数据转移:能够将表单数据转移给设置好的目标用户。能够在工作流和审批流中,须要转移数据的环节调用此数据转移;
(6)传输接口:工作流和审批流假设须要将流程结果触发到第三方系统。
什么是工作流
工作流最早起源于生产组织和办公自动化领域,它是针对平时工作中的业务流程活动而提出的一个概念,目的是根据将工作分解成定义良好的任务或角色,根据一定的原则和过程来实施这些任务并加以监控,从而达到提高效率、控制过程、提升客户服务、增强有效管理业务流程等目的。
为了更好地实现某些业务工作目标,可以利用计算机在很多个参与人之间按某种既定原则自动传递文档、信息内容或者任务。
因此,只要信息在人与人、人与系统或者系统与系统之间进行传递,就必须构建工作流。
工作流类型有哪些
工作流是在整个工作区中发生的,有些是结构化的,有些是非结构化的。当数据从一个任务转移到另一个任务时,工作流就存在了。但是,如果数据没有流动,就没有工作流。比如遛狗、去杂货店和取干洗衣物等,这都不是工作流,而是任务管理。
主要的工作流包括以下三种:
1.流程工作流(Process Workflow)
当一组任务具有可预测性和重复性时,就会发生流程工作流。也就是说,在项目开始工作流之前,您已明确数据的流转方向。比如采购申请批准工作流,一旦申请提交,每一步处理工作相对固定,工作流几乎不会有变化。
2.项目工作流(Project Workflow)
项目具有类似于流程的结构化路径,但在此过程中可能具有更大的灵活性,项目工作流只适用于一个项目。比如发布一个新版本的网站,你可以准确预测项目的任务流程,但是这个任务流程不适用于另一个网站的发布。
3.案例工作流(Case Workflow)
在案例工作流中,对于数据流转的方向是不明确的。只有收集到大量的数据时,数据流转的方向才会比较明显。比如保险索赔,一开始并不知道如何处理,只有经过一番调查,才会明确。
自动化工作流VS手动化工作流
在手动化工作流中,一个人必须时刻跟进申请,并手动发送到每个申请人处。例如,当员工填写报销单时,她必须通过电子邮件将其发送给经理以获得批准。经理批准后,她必须通过电子邮件发送到财务部门。财务部门收到后,需要付款并电子邮件告知员工付款已经完成。
在自动化工作流中,当人工完成某项任务时,她不负责将数据传递给下一个人。系统会自动管理任务流,包括通知、截止日期和提醒,最后会自动发送到财务部门进行处理。
在手动化工作流中,必须手动更新电子表格,也需要发送大量消息和电子邮件来了解项目所处的状态。而在自动化工作流中,追踪项目可以直接在系统中直接看到。因此自动化工作流可以为员工节省大量的手动操作时间和操作错误,显著提高工作效率。
重视工作流管理的公司都会使用工作流管理软件。使用力软进行工作流管理,您需要按照需求创建一个内容丰富的表单,并搭建一个清晰的流程。然后,申请人填写初始表单,软件自动将流转处理申请的数据,直到完成为止。最后,会有可视化报表显示数据的情况。
工作流自动化的好处
1.消除冗余的任务提高效率
通过力软工作流进行信息收集,可以舍弃使用Excel进行填写,并可以自动整理数据。通过力软工作流进行在线聊天,可以舍弃使用微信QQ等进行交流。最后,通过力软工作流进行数据分析,可以舍弃手动创建数据报表。三个环节都可以消除冗余的任务,并提高效率。
2.更高的可视化程度
力软强大的报表功能可以让你快速分析数据情况,清晰的跟进项目的实施情况。
3.明确各节点负责人的责任
无论采用哪种工作流类型,都可以将工作分配到每个节点负责人手里,而且每一步操作内容都可以通过流程日志进行查看,方便后期责任的确认和追踪。
计划
对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。
分析
软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。
设计
软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
编码
软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。
测试
软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。
维护
维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以使它扩展功能,提高性能,为用户带来明显的经济效益。然而遗憾的是,对软件维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维护的工作量和成本都要大得多
以上内容是小编精心整理的关于工作流设计思路 工作流设计模式的精彩内容,好的文章需要你的分享,喜欢工作流设计思路 工作流设计模式这篇精彩文章的,请您经常光顾吧!
下一篇:更多农历