状态机工作流,顺序工作流和Flowchart
什么是工作流,工作流可以说是对业务处理过程的建模,当我们设计工作流的时候,我们首先要分析业务处理过程中要经历的步骤。然后,我们就可以利用WF创建工作流模型来模拟业务的处理过程。
WF工作流包含两种类型的工作流:顺序工作流和状态机工作流。
顺序工作流
提供了一系列有组织的步骤,一般情况下,步骤是逐一执行的。可能有的步骤需要等待某些事件的发生才可以继续执行,但通常情况下顺序工作流一般用于无需人工干预的操作。
使用顺序建模风格来构建的工作流非常易于理解和创作。它们可以用来模拟简单到难度适中的过程。由于程序性活动相当于编程语言中的程序性语句,你就可以使用这种类型的工作流来模拟几乎所有类型的过程。顺序工作流还很适合模拟简单的并且没有人类交互的过程(比如服务)。
状态机工作流
提供了一系列的状态。工作流从初始状态开始,到终止状态结束。两个状态之间定义行为进行过渡。通常情况下,状态机工作流对事件作出反应,事件的发生将会使状态发生改变。
Flowchart
Flowchart是一种众所周知的、能够直观地表示业务过程的图表。业务分析师、架构师和开发人员经常使用Flowchart作为他们表达过程定义和逻辑流的共同语言。
WF 3.x发布以来,客户向微软反馈了许多他们所喜欢的和不喜欢的。这些来自使用WF 3.x客户的反馈中,有一个共同点,就是“我们希望像Sequence、Parallel等一样简单。却像StateMachine一样灵活”。当微软深入发掘了这种观点背后的场景时,他们发现客户的过程(或者一部分过程)往往是顺序的,但在某些情况下还要求能够回退(对一些客户来说,这种情况属于“异常”,而对另外一些客户来说,它们则在“期望”之内)。Flowchart是WF 4.0的一个新的活动,它直截了当的解决了这种类型的情况(而且这种情况的数量并不小)。Flowchart是一种非常强大的结构,因为它提供了顺序的简单,再加上回退到上一个执行点的能力,可以用来模拟在处理外部输入时的重试逻辑,而这在现实世界中的业务过程中是非常常见的。
到底采用哪种类型的工作流,取决于具体的业务管理过程。
申请使用笔记本电脑流程:
员工提交申请表单信息(员工姓名、所在部门、职位)等信息--->如果当前公司空闲笔记本电脑数量=0则返回,否则继续--->如果当前员工为正式工则继续,否则返回--->如果当前员工为技术部、市场部、商务部则继续,否则返回--->通知综合部人员提取库存电脑发放给申请人并系统备案,流程结束。
申请笔记本电脑的流程由电脑自动根据用户提交的申请信息就可以完成,期间不需要人工交互或者因等待其它事件而暂停或者中止,这就是常见的顺序工作流。
公司请假流程:
员工提交申请请假表单信息(员工姓名、所在部门、职位)等信息--->如果是普通员工,自动流转到员工所在部门审批,如果部门审批通过且请假天数<=3则成功并系统备案,如果请假天数>3则自动流转到综合部审批,综合部审批通过则请假成功并备案--->如果是部门领导,自动流转到综合部门审批,综合部审批通过则请假成功并备案
请假流程有些过程需要暂时中止并等待其他过程的开始,需要与人交互来完成的。所以这个常见的状态机工作流。
状态机工作流的好处在于它可以定义状态,定义工作流如何从一个状态到另外一个状态。当外面的事件发生的时候,状态机工作流可以移动到不同的状态。外部行为可以是宿主程序引发工作流内部事件,也可以是宿主程序编程实现的下一个状态,也可以利用SetState Activity移动到下一个状态。
也就是说,状态机工作流强调职工与职工之间的工作交互,而顺序工作流更强调职工与计算机之间的工作交互。
信息来自:http://blog.sina.com.cn/s/blog_6158b3f90100ysrh.html
状态机工作流,顺序工作流和Flowchart的更多相关文章
- javascript状态机及在工作流中的应用
#javascript状态机及在工作流中的应用 ##状态机 什么叫状态机(Finite State Machine),书面上的解释可以自己借助搜索引擎寻找到.通俗地来讲是一个状态定义.查找.切换和事件 ...
- sharepoint 顺序工作流创建
顺序工作流提供了一系列有组织的步骤,一般情况下,步骤是逐一执行的. 1.新建 > 项目,选择 SharePoint解决方案 > 空项目: 2.部署为场解决方案 3.添加 > 新项,选 ...
- 使用自定义任务审批字段创建 SharePoint 顺序工作流
http://msdn.microsoft.com/zh-cn/library/hh824675(v=office.14).aspx#odc_sp14_ta_CreatingSPSeqWorkflow ...
- 工作流引擎在vivo营销自动化中的应用实践 | 引擎篇03
作者:vivo 互联网服务器团队- Cheng Wangrong 本文是<vivo营销自动化技术解密>的第4篇文章,分析了在营销自动化业务引入工作流技术的背景和工作流引擎的介绍,同时介绍了 ...
- Workflow笔记1——工作流介绍
什么是工作流? 工作流(Workflow),是对工作流程及其各操作步骤之间业务规则的抽象.概括.描述.BPM:是Business Process Management的英文字母缩写.即业务流程管理,是 ...
- 【转】WF事件驱动
转自:http://www.cnblogs.com/Mayvar/category/315963.html 这系统的教程有代码可以下载 WF事件驱动(5) 摘要: 之前,我通过4篇文章介绍了在WF4中 ...
- [转]WF事件驱动
本文转自:http://www.cnblogs.com/Mayvar/archive/2011/09/03/wanghonghua_201109030446.html 已经有不少朋友知道Workflo ...
- 关于WorkFlow的使用以及例子
近期做项目,项目需要用到工作流方面的技术,我在这里与大家分享一个workFlow学习的地址,共大家学习. http://www.cnblogs.com/foundation/ 各文档的说明: F资料├ ...
- WF4.0(2)----设计工作流
自从做了程序员,发现自己长胖了,而且自己的身体抵抗力也出了问题,最近身体不适,公司工作任务最近也很赶,上次写了WF4.0的简介,这次就工作中工作流设计的几种方式稍微总结一下.设计工作流包括四种方式:流 ...
随机推荐
- HDU5187 zhx's contest
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission ...
- 使用srvany.exe把程序安装成windows服务
srvany.exe介绍 srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行.也就是说srva ...
- ubuntu下安装 gSOAP 用于C/C++开发web service服务端与客户端
昨天在ubuntu下进行安装gSOAP,费了很多时间,没成功,今天又来找了大量教程资料,终于一次成功,这里写下自己的安装步骤和方法,供大家参考. 首先下载gsoap,我下载的是gsoap-2.8.1. ...
- windows 修改xhsell安全加密配置
由于xhsell旧版的与新版的有差别,导致新版的不能用旧版的xsh文件 1.将xshell升级到最新版本2.安装sed与grep到C:\Program Files (x86)\GnuWin323.将b ...
- functools模块方法学习(1):partial
函数的partial应用 典型的,函数在执行时,要带上所有必要的参数进行调用.然后,有时参数可以在函数被调用之前提前获知.这种情况下,一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调 ...
- delphi 开机自动运行代码
unit Unit1;//download by http://www.codefans.netinterface uses Windows,Registry, Messages, SysUtils ...
- maven的知识图谱
maven 1.maven的好处 java项目管理工具 依赖管理 对jar包统一管理 项目名称 公司/组织 版本信息 本地仓库 由于索引的存在,找jar包很快 项目构建 依赖管理 传统项目 很大 包含 ...
- [CP1804]组合数问题2
题目大意: 给定两个数$n(n\le10^6)$和$k(k\le10^5)$,找到$k$个不同的满足$0\le b\le a\le n$的组合数$\binom a b$,求这$k$个组合数的最大值. ...
- 【背包DP】【OpenJudge4978】宠物小精灵之收服
宠物小精灵之收服 总时间限制: 1000ms 内存限制: 65536kB [描述] 宠物小精灵是一部讲述小智和他的搭档皮卡丘一起冒险的故事. 一天,小智和皮卡丘来到了小精灵狩猎场,里面有很多珍贵的野生 ...
- iOS KVC/KVO 线程(GCP)
最近比较忙,把学习知识点的帖子的地址记一下,有时间再好好整理. KVC/KVO1 KVC/KVO2 线程(GCP)