浅析LR.Net工作流引擎

在当代信息化软件系统开发中,工作引擎是其中非常重要的一环。所谓工作引擎,是指工作流作为软件系统的一部分,其中包括了流程的节点管理、流向管理、流程样例管理、审核管理等o | + k n n d }重要功能。
工作流引擎可根据角色、分工和条件的不同来决定信息传递的路由与内容的分级。其对各应用| 6 6 6 / B F n系统是有着决定作用的。
浅析LR.Net工作流引擎

美观友好的交互界面,稳定的数据库信息交换,满足实际业务需求的高效程序逻辑,这些都是判断一个| 1 P 5 $ f S软件系统是否优秀的重要标准。一个满足以上条件的系统,将会在一定程度上保证其稳定性和易用性。
做到程序稳定,是为了保证该系统的可靠性,满足界面易用,则是在保证模块化、结构化、操s z 5作的便捷性。这样可以在业务流程发生变化,例如决策权的改变T h c 1 q、组织结构的变动时,随之变换] y l I 9 x @的全新业务逻辑,而工作流引擎解决的就是这个问题。如果应用程序缺乏[ i x稳定高效的逻辑层,就会很容易出现包括信息路由错误、异常循环在内的各种错误。
浅析LR.Net工作流引擎
这里举个简单的例子。一台电脑,外观前卫炫酷,但如果硬件系统有问题,那势必会出现各种BUG,如不加以改进,极有可能被人嫌弃,最终变成一堆废品。而应用系% r A G i统的拓展性就好比电脑的运行速度,别人开机只需五秒,而你的 H ( P则需要五分钟(业务流程变动需要更长时间的程序修改),孰优孰劣,一目了然。而如果电脑动不动就蓝屏重启(程序逻辑异常循环),那这样的电脑谁还会用呢?
服务架构
面向服务的体系结构,是一个组件模型,它将应用程序的不同功G = d G [能单元通过这些服务之间定义好的接口和契约联系起来。接口是采用中立@ l * &的方式进行定义的,它独立于硬件平台、操作系统和编程语言。工作流引擎使构建在各种系统中的服务,以统一和通用的方式进行交互。
浅析LR.Net工作流引擎

想要一套有灵活工作流机制的OA系统的企业不在少数,于是有很多人使用用Domino来摸索着做。等待后来ASP.NET出现,好像大家都醒悟了,各领域企业都要求使用工作流引擎实现企业信息审批流程化。
基于企p s [业的实际需求,近几年出现了一批标@ ~ { D + q准的企业级工作流引擎,并获得了双软认证。这里讲一下口碑比较好的Learun,总体采用= / = 4 u d l Z /拖拽式设计,配合代码w d b e Z _ P生成器,通用业务流程代9 * n 1 x I Z码量接近于零,各项指标及客户反映都不错,其基本思路如下:
首先,定义流程步,主要包括:操作的接口f [ o _ +地址、操作参数、操作类型(起始操作、中间操作等)。其目的是将来对每个操作进行关系设置和流程定义时,可以选用这些定义好的操作步。
第二,定义操作的参数,除接口地址外,还需定义其参数。
第三,定义操作步之间的关系。就是定义各流程中每步的前驱、后继的操作。
第四,定义流程。其中必要的内容,是基本信息、流程操作以及流转规则。流程基本信息这里不表。流程步定义比较复杂,包括步骤类型(起始} ( x、中间、终结),入口步骤、出口步骤、通知模式、人员、角色、发送通知的内容。
第五,跳步定义,如需根据参数的不同,提交审批到不同的步骤,这里叫做流程步骤变迁规则设置。设置的内容需要:原步骤、目标步骤、8 U ; F 7 6 l 变迁方向K ] / m d n l L(正/负)、条件S H a ^ , J B e E规则(判断参数时用与还是用或)。然后设置参数、参数值以及比较条件。
第六,授权管理。这个比较简单X ` D R了,判断被提交的人是否处于授权状态,从而进行/ ; c N d [ V授权处理。
浅析LR.Net工作流引擎
以上所说只是基础逻辑,实际编写过程中还要考虑各企业的实际情况,learun框架内置的工作流引擎,集合了各行业客户意见与建议,适用性强,t d D r F t稳定性高,使用便捷,欢迎体验W P p a } 3 h F t指正。
参考资料来源以及技术详情参阅:www.learun.cn/Hoc g l 4 k ` k vme/VerificationForm