21种工作流模式介绍讲解
- 格式:ppt
- 大小:528.00 KB
- 文档页数:25
⼯作流(Workflow)学习---基础知识整理⼯作流定义:⼯作流是将⼀组任务组织起来以完成某个经营:定义了任务的触发顺序和触发条件,每个任务可以由⼀个或多个完成,也可以由⼀个或⼀组⼈完成,还可以由⼀个或多个⼈与软件系统协作完成。
⼯作流2.0的定义是:实现⼯作过程管理的⾃动化、智能化和整合化。
⼯作流2.0最主要的特征就是可以灵便的实现数据整合和数据统计,消除信息孤岛,既能实现OA办公系统内部⼯作流之间的数据整合,如借款与报销、预算与决算等,⼜能实现OA办公系统⼯作流与其他业务系统之间的数据整合,如HR、ERP、CRM等。
⼯作流2.0能彻底的弥补⼯作流1.0的不⾜,它不但实现OA办公系统内部的数据整合,也实现OA办公系统和第三⽅应⽤系统之间的数据整合。
如果给⼯作流1.0打上标签的话,那就是“⽆纸化、重复⼯作、流程孤岛、系统孤岛、数据孤岛”;⼯作流2.0对应的便是“智能化、效率质量提升、外部数据整合、消除信息孤岛、内部数据整合”。
毫⽆疑问,⼯作流2.0更加智能,更加整合,能够实现数据的同步交换和共享的特征更受⽤户欢迎,能有效帮助企业简化多余流程,是未来⼯作流技术发展的⽅向。
适⽤⾏业消费品⾏业,,服务业,银证险等,物流服务业,物业服务业,物业管理,⼤中型进出⼝贸易公司,政府事业机构,研究院所及教育服务业等,特别是⼤的跨国企业和集团公司。
具体应⽤1.关键业务流程:订单、报价处理、采购处理、合同审核、客户电话处理、等。
2.⾏政管理类:出差申请、加班申请、请假申请、⽤车申请、各种办公⽤品申请、购买申请、⽇报周报等凡是原来⼿⼯流转处理的⾏政表单。
3.⼈事管理类:员⼯培训安排、绩效考评、职位变动处理、员⼯档案信息管理等。
4.财务相关类:付款请求、应收款处理、⽇常报销处理、出差报销、预算和计划申请等。
5.客户服务类:客户信息管理、客户投诉、请求处理、售后服务管理等。
6.特殊服务类:ISO系列对应流程、质量管理对应流程、产品数据信息管理、贸易公司报关处理、物流公司货物跟踪处理等各种通过逐步⼿⼯流转完成的任务均可应⽤⾃动规范地实施。
工作流是iWorker今年重磅打造的亮点功能,主要用于多节点多步骤的业务工作协同,只要预先定义好,工作流将按照设置的步骤自动一步步地往下跑,从而实现工作过程管理的自动化、智能化和规范化,大大提高工作效率。
任何一家企业的运营都离不开流程。
科学合理的流程管理能够将管理者从烦琐的事务中解放出来,也有助于企业员工在具体的执行过程中更加明确、清楚地知道自己什么时候该做什么事,应该先干什么、后干什么、达到怎样的标准。
同时消除企业部门壁垒、消除职务空白地带,保证各项工作之间的衔接和补位,避免出现工作漏洞,解决执行不力的顽疾。
实际上,审批流是一种特殊的工作流。
但审批流主要适用于由发起人的上级或职能部门负责人,如财务、人事主管等对某项事务给予审批意见的场景。
而工作流则更侧重于业务流程的规范自动化,清晰地界定什么节点什么人该做什么事,按照预先的设置自动衔接各个部门各项工作,提升业务协同的执行力。
某公司以往的售后维修工作采用的是纸质的派工单流转,极其不方便,而现在则直接将派工单设置为iWorker中的一个工作流。
不同的人在不同的时间节点做自己应该做的事情,整个工作业务按照预设的步骤有条不紊地进行,流畅高效:管理员在后台>系统配置>工作流配置中可新增工作流分类文件夹,可按照公司部门或者按照工作流类别等方式进行分类,并且可以设置每个分类的负责人,以及这一类工作流相关报表的可查看人员,如销售部的工作流模板可以设置为由销售部的某个专员来设置,而销售部的工作流报表数据可以设置为只由销售部的领导进行查看,权限设置比之前更加灵活细化了。
工作流负责人在首页右边的“常用”里找到“工作流设置”,点击进入自己所负责的工作流的表单模板列表页,右上角有一个“新建工作流”的按钮工作流表单模板设置采用的所见即所得的操作方式,直接将左边的字段控件拉到中间的表单设置区域,即可直观看到设置后的表单模样,而右边可设置该字段的名称、大小等:1、工作流不仅仅是内部成员的独有功能,外部成员也同样可以参与,真正实现公司内外部的业务协同。
⼯作流模式1编程模型从消化系统讲起,⼝腔、肠道、胃…等消化器官组成了消化系统,每个器官⼜是由更微观的物质构成,⽐如细胞。
细胞⼜可以细分。
细胞可以分类,⽩细胞,红细胞等等。
这⾥细胞可以认为是消化系统的基本组成元素。
这种组成结构⾮常像⾯向对象的思维,因为它们都要解决同⼀个问题:现实世界复杂性。
类可以认为是最基本的组成元素,类可以组成组件(构件),构件组成服务。
知道了消化系统的组成,我们来看如何实现吃这个功能,吃的功能完成需要⾷物通过各种消化器官,使⽤消化器官的功能完成。
这个过程是⾯向过程的,是⼀个流程。
再看我们程序的实现,Staitc Main是程序的⼊⼝,C#中功能的实现也是通过调⽤相互关联的类中的⽅法实现的。
C#本⾝就提供了丰富的控制结构(if else,while等等)。
分析:从最简单的语句到类到组件,到⼦系统。
代码结构的最优化组织⽅式采⽤⾯向对象,可以更好复⽤,使⽤设计模式后可以更好控制变化。
但是运⾏时逻辑往往是⾯向过程的。
⽐如Main{}中的逻辑。
就象细胞构成嘴、肠胃,这些器官⼜构成了消化系统,但是吃饭这个功能的完成是利⽤各个器官的功能,按照某种控制流程完成的。
结论:程序的⽬标之⼀是功能实现,其中实现⽅式是基于过程的,组织结构是⾯向对象的。
1.1过程控制模型常见的过程控制模型有:1、C#语句控制流;2、XAML;3、数据库表;4、DSL(领域描述语⾔),图形(专⽤的图形⼯具)。
数据库表中可以存储过程的调度逻辑,领域模式语⾔这⼏年也⾮常流⾏。
过程的描述可以⽤任何⼀种⽅法实现。
1.2C#控制流程的问题看⼀看交互式过程:在流转的过程中需要外部消息的响应的过程。
可能某个处理会等待⼏天甚⾄⼏周。
如果使⽤C#控制流实现,应该怎么实现。
⼀般的做法是新建⼀个线程异布执⾏某个流程,⽽主线程持续运⾏(类似Windows服务),如果流程停滞,线程会被阻塞,如果阻塞的线程⼀多,整个系统的性能就会有很⼤影响,毕竟线程池等系统资源有限。
21种工作流模式的实现1. 顺序(Sequence)工作流中的各个活动在同一个进程中按顺序依次执行。
例子:在“发送货物”之后“发送单据”。
2. 平行拆分(Parallel Split)工作流中从一个线程中的一个点拆分为在多个线程中平行执行的多个活动。
例子:活动“付款”激活了“发送货物”以及“通知顾客”的执行。
3. 同步(Synchronization)工作流中的多个活动在一个点上汇合成一个线程。
例子:活动“归档”在“发票”和“收款”全部完成后被激活。
4. 排他选择(Exclusive Choice)工作流中的一个点,基于决定或者工作流中的数据,流向若干个分支中的一个。
5. 单合并(Single Merge)工作流程中的一个点在两个或者多个分支发生非同步的汇合时执行。
它假设这些分支中不存在平行执行的情况。
例子:在收到支付或者确认信用之后,汽车被交付给顾客。
6. 多选(Multi-choice)工作流中的一个点,基于决定或者工作流中的数据,流向若干个分支中的几个。
7. 平行合并(Synchronize Merge)工作流程中的多个路径在一个点被汇合成一个单一的进程。
如果多于一个的路径到达了,活动线程就需要进行同步。
如果只有一个路径到达,那么其它的路径应该非同步的重新会聚。
该模式假设在一个分支被激活后,不会在等待其它分支完成的过程中再次被激活。
这种模式的难点在于决定在哪些分支到达后启动活动。
8. 多合并(Multi-merge)工作流程中的多个分支在一个点进行非同步的汇聚。
如果多于一个的分支被激活——可能是并发的——每个进入分支的每个活动都在合并之后启动新的活动。
9. 鉴别器(Discriminator)鉴别器是工作流中的一个点,它等待进入分支中的一个完成,然后才激活其后的活动序列。
从那个时刻开始,它等待所有剩余的分支完成,并且“忽略”它们。
一旦所有的分支都已被触发,它就会重置自己,以便能被再次触发。
⼯作流模式-⼯作流数据模式40种正如语⾔是⼈与⼈之间的沟通⽅式⼀样,数据是IT系统之间的沟通⽅式,语⾔之间的沟通总是有效,数据交互却未必,因为除了让计算机理解之外,数据还需要让⼈理解,IT系统是对现实⽣活的映射,也正因为如此,现在数据之间的沟通也在向语⾔靠拢即语义化(REST/语义⽹)。
在WfMC的⼯作流模型⾥,⼯作流数据被分为了3类,如图C-1所⽰。
图C-1 WfMC的⼯作流数据分类1. ⼯作流控制数据:⼯作流系统管理的内部控制数据,这些数据包括了与流程实例和活动实例相关的执⾏数据和状态数据,例如流程实例的状态、执⾏时间、⼯作项的执⾏者、执⾏时间、状态、紧急程度等。
2. ⼯作流相关数据:⼯作流系统使⽤⼯作流相关数据确定流程实例的流转条件,并选择下⼀个将执⾏的活动,这些数据由业务系统访问并修改。
例如报销流程中的“报销⾦额”,这个数据会决定该流程的审批路径;再例如为活动设置的超时时间,这个数据会触发活动的取消。
这些数据是⼯作流系统需要依赖进⾏流程流转的业务应⽤数据。
3. ⼯作流应⽤数据:业务系统管理的业务数据,⼯作流系统不能访问。
我们遵循WfMC的⼯作流数据分类,区别是将⼯作流相关数据根据应⽤场景进⼀步细化为3 类并重新定义,如图C-2所⽰。
图C-2 ⼯作流数据分类我们将⼯作流相关数据泛化为为⼯作流系统能够访问并使⽤的业务应⽤数据,分为3类:1. 连接业务系统的关联数据:⼯作流系统与业务系统进⾏关联的数据,例如特定于Web系统,⼯作流系统会在每个流程/活动实例⾥保持有导航⾄对应业务表单的URL。
2. 传递作⽤的业务应⽤数据:当流程跨越多个业务模块时,需要在模块间传递数据,此时会利⽤⼯作流系统进⾏传递,在⼯作流系统⾥暂时存储或转换这些业务数据。
在⾯向服务的软件架构中(SOA),⼯作流系统作为重要的中间件负责服务之间的调⽤编排,业务应⽤数据被封装为SDO通过⼯作流系统在不同Web服务(业务系统)间传递。
⼯作流控制模式-基本控制模式5种基本控制模式包括基本的顺序、并发、条件和合并路由,是其他控制模式的基础。
基本控制模式有以下5种,如图A-2所⽰。
图 A-2 基本控制模式1. 顺序:活动顺序执⾏。
2. 并发分裂:分⽀分裂为两个或多个后续分⽀,所有后续分⽀都被同时触发执⾏。
3. 同步:两个或多个分⽀合并为⼀个后续分⽀,只有所有分⽀都执⾏完毕后,后续分⽀才会被触发执⾏。
4. 排他选择:分⽀分裂为两个或多个后续分⽀,只有⼀个后续分⽀被选择执⾏。
5. 简单合并:两个或多个分⽀合并为⼀个后续分⽀,分⽀不需要同步,任何⼀个分⽀执⾏完毕后就会触发后续分⽀的执⾏。
1、顺序(WCP_1: Sequence)描述:在⼀个流程实例⾥,活动在前续活动完成后顺序触发,如图A-3所⽰。
同义词顺序执⾏、串⾏路由。
应⽤顺序模式是⼯作流建模的基础,是流程定义⾥最基本的构建块,⽤以描述连续互相依赖的⼀系列活动。
2、并发分裂(WCP_2: Parallel Split)描述分⽀分裂为两个或多个后续分⽀,分⽀执⾏完毕后触发后续并发分⽀的同时执⾏,如图A-4 所⽰。
新员⼯⼊职时,先去⼈⼒资源部报道,接下来填写⼊职资料和签订合同,于此同时,IT部门帮忙开通RTX邮件开发环境权限、初始化机器,两个⼯作同时进⾏。
图 A-4 并发分裂同义词AND-split、Fork、并⾏路由、并⾏分裂。
应⽤作为设计流程的⼀个基本原则,我们应该尽可能采⽤并⾏过程。
信息化的⼀个重要作⽤就是加快信息的流动,让并⾏⼯作越来越成为可能。
试想如果没有办公⾃动化系统,我们到⼈⼒资源部报到后,IT部门并没有及时收到消息,那么我们填完⼊职资料后还要去IT部门申请机器,这个效率就⾮常低了。
对流程⽽⾔,流程实例执⾏时间是最重要的衡量指标:执⾏时间越短,对顾客越有效率,没有⼈喜欢等待。
3、同步(WCP_3: Synchronization)描述两个或多个分⽀合并为⼀个后续分⽀,被合并的分⽀都执⾏完毕后,后续分⽀才会触发,如图A-5所⽰。
⼯作流分类与学习参考资料:百度百科⼯作流概念:⼯作流(Work Flow)就是⼯作流程的计算模型,即将⼯作流程中的⼯作如何前后组织在⼀起的逻辑和规则在计算机中以恰当的模型进⾏表⽰并对其实施计算。
⼯作流要解决的主要问题是:为实现某个业务⽬标,在多个参与者之间,利⽤计算机,按某种预定规则⾃动传递⽂档、信息或者任务。
简单地说,⼯作流就是⼀系列相互衔接、⾃动进⾏的业务活动或任务。
我们可以将整个业务过程看作是⼀条河,其中流过的河⽔就是待审核的表单。
WF⼯作流包含两种类型的⼯作流:顺序⼯作流和状态机⼯作流。
顺序⼯作流提供了⼀系列有组织的步骤,⼀般情况下,步骤是逐⼀执⾏的。
可能有的步骤需要等待某些事件的发⽣才可以继续执⾏,但通常情况下顺序⼯作流⼀般⽤于⽆需⼈⼯⼲预的操作。
状态机⼯作流提供了⼀系列的状态。
⼯作流从初始状态开始,到终⽌状态结束。
两个状态之间定义⾏为进⾏过渡。
通常情况下,状态机⼯作流对事件作出反应,事件的发⽣将会使状态发⽣改变。
⼯作流的具体应⽤1.关键业务流程:订单、报价处理、采购处理、合同审核、客户电话处理、供应链管理等2.⾏政管理类:出差申请、加班申请、请假申请、⽤车申请、各种办公⽤品申请、购买申请、⽇报周报等凡是原来⼿⼯流转处理的⾏政表单。
3.⼈事管理类:员⼯培训安排、绩效考评、职位变动处理、员⼯档案信息管理等。
4.财务相关类:付款请求、应收款处理、⽇常报销处理、出差报销、预算和计划申请等。
5.客户服务类:客户信息管理、客户投诉、请求处理、售后服务管理等管理等。
6.特殊服务类:ISO系列对应流程、质量管理对应流程、产品数据信息管理、贸易公司报关处理、物流公司货物跟踪处理等各种通过表单逐步⼿⼯流转完成的任务均可应⽤⼯作流软件⾃动规范地实施。
⼯作流的审批模式 审批流程设置分为两种模式:传统模式和⽐例计算模式 传统模式是指对审批流程的每个节点设定相应审批⼈,只有当该节点上的所有⼈员都通过审批请求后,才可以进⼊下⼀个节。
21种工作流模式的实现工作流模式是对工作流程进行合理规划和设计的一种模式化表达方法,它将一项复杂的工作分解为多个环节,明确每个环节的责任和任务,提高工作效率和质量,降低出错率。
下面将介绍21种工作流模式的实现方法。
1.顺序工作流模式:按照一定的顺序依次进行各个环节的工作。
实现方法是明确每个环节的开始时间和结束时间,制定清晰的工作流程和责任分工。
2.并行工作流模式:多个环节同时进行,相互独立。
实现方法是将工作流程分解为多个独立的子流程,明确每个子流程的开始时间和结束时间。
3.分支工作流模式:根据不同情况采取不同的分支工作流。
实现方法是在工作流程中增加分支节点,根据条件判断进入不同分支工作流。
4.合并工作流模式:多个分支工作流合并为一个工作流。
实现方法是在每个分支工作流的结束节点设置等待节点,等待所有分支工作流都完成后再进入合并节点。
5.循环工作流模式:工作流程中的一些环节需要重复执行。
实现方法是在循环节点设置条件判断,当满足条件时继续执行循环体,直到不满足条件后跳出循环。
6.串行-并行-串行工作流模式:工作流程先串行进行一部分环节,然后并行进行多个独立的环节,最后再串行进行剩下的环节。
实现方法是将工作流程分解为两个子流程,在并行节点连接两个子流程。
7.串行-并行-并行-串行工作流模式:工作流程先串行进行一部分环节,然后并行进行两个独立的子流程,最后再串行进行剩下的环节。
实现方法是将工作流程分解为三个子流程,在并行节点连接两个子流程。
8.雁行工作流模式:工作流程先串行进行一部分环节,然后并行进行多个子环节,其中每个子环节又是一个串行工作流模式。
实现方法是在并行节点连接多个子流程。
9.交叉工作流模式:工作流程中的一些环节需要交替执行。
实现方法是在工作流程中增加交叉节点,在交叉节点根据条件判断选择不同的环节执行。
10.迭代工作流模式:工作流程中的一些环节需要重复执行,并且每次执行结果都会影响后续环节的执行。