Shark工作流的实现和WMFC&OMG规范的对比
-----第五部分:工作流的实例化
关键字:Shark 工作流 WMFC OMG 规范
学习了这么多的开源框架,准备自己也实现一个。万事开头难,先说说如何用XPDL来描述流程中需要包含的信息和如何实例化一个流程。
在shark中有一个Package-Business_Example 的例子。其中Customer Service - Request for Partial Shipment (客户服务—对分装运输的要求)流程信息的xdpl描述如下:
DurationUnit="D">
Participant_Repository_Par10
【(5)Shark工作流的实现和WMFC&OMG规范的对比】
Participant_Repository_Par10
解释如下:
这个流程只有两个活动:
1、
询问用户时候需要分装运输
2、
告诉客户销售
两个活动的转移:
上面的描述只是一个基本的XPDL的实现,在现实世界里所需要的信息是不充分的。
比如:
1、当用户A登陆后,需要知道和用户A相关的那些活动已经启动,并提示用户A,操作这个活动。这样在实例化的流程中需要包含参与者的信息。
2、上面的描述中只是包含了工作流本身的信息,很显然,工作流任务执行的具体最后要落实在业务过程上,那么在实例化后的工作流中应该包含业务的数据,最少应该包含能够找到这个业务的连接数据。
3、工作流具体的状态业务状态在实例化的流程中应该保存起来。
从上面的对比中可以看出,工作流引擎对如何实例化工作信息和业务信息应该是不同的,因为这并不是WMFC规范中的内容。
待续
田春峰
accesine@163.com
推荐阅读
- 工作流|开启Activiti之旅
- activiti|springboot + activiti 项目搭建及简单使用
- (16)Shark工作流的实现和WMFC&OMG规范的对比
- (10)Shark工作流的实现和WMFC&OMG规范的对比