上一篇讲了工作流的主要概念和用途。
知道了要依靠工作流引擎来推动流程向前。
这一篇讲一个具体实现的例子,比较简单,对于复杂的流程关系定义处理不了,上下文参数构建也不支持,这些依赖具体的业务领域模型处理了。
好在工作流基本的概念是有了,对于复杂的应用可以借鉴成熟的产品,知道工作流是怎么回事了其他产品也就容易上手了。
工作流概念这一块,目前也没个统一规范,就自己搞了一套,没采用那些推荐标准太复杂用不上。
要开发一个工作流引擎出来,跟其他开发没有不同,概念、需求、建模。
一、搞清楚都要用到哪些概念
二、能够提供哪些功能、准备用例
三、建模
1.静态模型
依据关键流程的用例推导概念、明确概念定义、支持概念所要用到的数据结构
2.动态模型
定义各功能模块操作,并检查是否覆盖所有关键用例。
实际例子,懒得敲那么多字了,直接上图
1.用例,用来确定系统边界
2.主要概念,及概念见关系
3.流程生命周期定义
说明一下,分配状态和运行状态是两个维度的东西,为了省事就定义在一起了。
4.系统架构
描述引擎的内部构成、引擎与外围系统的关系。