Step Of WorkFlow----了解WorkFlow运行思路

Technorati 标签: WF
1。谈谈什么是工作流?

使用软件去描述一个商业活动(Business Process)是非常复杂的。这个活动也许是一个Pizza订单,或者是一个商业交易,或者是一个健康保健活动。在平时的工作中,我们经常的谈论这些事情时候,就会出现工作流(WorkFlow)这个词了。听上去Workflow也许很简单,但是常言道:成功决定于细节

2。工作流需要做些什么呢?
  • 我们需要数据表,数据访问类去管理工作流的状态(Workflow State)。
  • 我们需要组件(components)去发送消息,需要组件(components)去等待消息到达。
  • 我们需要将工作流(Workflow)转化成计算机可以执行的命令。
3。工作流很简单么?

下面我们看个简单的例子:

 
 
4。作为一个工作流我们需要哪些代码?
  • 我们需要处理(Handing)工作流服务日志(Logging),诊断(diagnostics)异常的代码。
  • 我们需要事件处理(Event),记录程序运行状态(Hook to track),随时取消正在运行的工作流(Running Workflow)。
  • 我们需要工作流在大部分时间内可以为空闲(idle)并且等待事件发生,因为我们不能为了等待事件而去阻塞应用程序的线程几周时间。
  • 我们需要一个机制去保存工作流状态(Workflow State),把它存在持久性数据文件中(persistent data store)移除内存中的工作流数据。当事件发生时候还原工作流状态,继续执行工作流。
5。我们创建工作流所遇到的问题。

不幸的是,在工作流里面以及周围有着大量的代码,因此我们就无法很容易地看到真正的工作流(Workflow)。依赖代码则会将我们工作流的模型化的过程隐藏起来。

  • 一个工作技术人员由于没有代码能力而无法看到工作流。
  • 一个程序员需要很深的代码技术才能把工作流从代码堆里挖掘出来。
6。我们现在的开发目的是什么?
  • 开发Workflow的目的就是将工作流依赖代码分离开。
  • 这个模式(Style)允许开发人员,甚至是商人去陈述(Express)工作流需要做些什么(What the Workflow should be)。
  • 而工作流引擎则注意如何执行工作流中的服务(How to execute the Workflow).
7。那么一个工作流到底是什么样子呢?
 
 

上面的XML文档就是一个工作流。

8。工作流引擎。

而我们所说的工作流引擎就是可以明白了解这个XML文档,并且将XML文档翻译成计算机语言。

工作流引擎的功能包含处理工作消息,对于异常的处理,以及对于取消工作流的处理

9.XML与工作流之间联系。
  • XML文档是用途最为广泛的工具。
  • XML可以读,修改,创建,改变XML。

通过C#语言很容易解析XML文档,使用模块和箭头生成可视化的工作流(Workflow)。可以让软件使用者通过连接模块,制作成可视化的工作流,并将其生成为XML文档。

10。让我们想想在工作流中我们需要什么?
  • 我们需要指定一个工作流,通过声明化方式或者是可视化设计器方式。
  • 我们需要将添加工作流定义为工作流引擎,这个引擎管理异常事件工作流的跟踪还原工作流(activation)和暂停工作流(de-activation)

 

转载于:https://www.cnblogs.com/kelelong/articles/1728375.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值