业务引擎
我在调用子流程一文中提到了封装业务引擎,本文将对务引擎作一个说明
设计工作流有几个要考虑的问题,如权限、挂单、用户UI开发,工作流的项目不能算小项目,项目组致少有两个人吧,两个人就有了分工,一个开发前台,一个开发后台。有时可能用户会要求提供BS与CS两套界面,前台人员可能只精通ASP.NET与 WinForm的开发,对WF一无所知。后台开发人员可能对用户UI的开发又不是很擅长,在这种情况下,看一下工作是如何进行的:
以一个加班申请流程为例:
业务流程分析
看一下业务流程的场景分析:
1.某人没有完成或想提前完成工作、或女友不在家,闲着也是闲着,想蹭点加班费,申请加班
2.组长(也就是项目经理之类的)从项目需要分析有没有加班的必要,没有必要驳回申请,有必要上报
3.经理跟据当前管理需要对加班申请进行审批,(今天全公司就你一人申请加班,还是个女孩子,不放心,不批了)
收集业务表单
设计数据库
略
UI开发人员设计跟据业务表单、数据结构设计程序界面
创建界面
加班申请界面
表单编号:001
组长审查界面
表单编号:002
经理审批界面
表单编号:003
BS,CS分别设计一组,先完成验证,快捷键,提示,帮助等通用需求
工作流开发人员设计业务引擎
跟据业务流程开发WF工作流
设计表单对象
封装业务引擎
开发宿主
略,引擎可以寄生在那任何进程中, 下一篇文章在,我将演示如何使用COM+作为WF引擎的宿主
前台与后台对接
查询模块
上例中没有体现查询模块,查询模块可以放到业务引擎中,也可以独立,如果UI开发人员对WF也比效感兴趣,此部分可以独立出来,由UI开发人员在工作流开发人员的指导下完成,这样使团队的综合能力与配合也有一个提升.