WorkFlow事情流引擎目前因此BPMN和Active事情流为两大阵营为主,源代码以:Java、net为主,而PHP险些没有事情流引擎(这就很尴尬了)。
说完大体情形,我们开始进入正文:
开拓一个别系,最关键的部分不是系统的界面,也不是和数据库之间的信息交流,而是如何根据业务逻辑开拓出符合实际须要的程序逻辑并确保其稳定性、易掩护性(模块化和构造化)和弹性(随意马虎根据实际业务逻辑的变革作出程序上的变动,例如决策权的改变、组织构造的变动和由于业务方向的变革产生的全新业务逻辑等等)。 Workflow 引擎办理的便是这个问题:如果运用程序缺少强大的逻辑层,势必变得随意马虎出错。

就好比一辆汽车,外表做得再俊秀,如果发动机有问题就只是一个摆设。运用系统的弹性就好比引擎转速方面的性能,加速到100 公里须要1 个小时(业务流程发生变动须要进行半年的程序修正)还能喝采车吗?引擎动不动就熄火(程序由于逻辑的问题陷入去世循环)的车还敢开吗?(来源于百度百科)
为什么要用事情流引擎?为理解释这个问题,我们来举个例子:运用处景: 张三工程师正在研发一套OA、ERP等企业信息管理平台客户需求: 有个物资系统,客户希望这么做,A填写申请表——B部门经理审核——C物资管理部确认——D张三领用物资张三工程师: 急速开始了业务需求调研,剖析,总结。然后开始写代码了。业务表单很大略(这里我们就忽略了)审批设计:-1 退回修正 0 保存编辑 1部门经理审核 2 物资部门确认 is_use 是否领用根据设计:写了如下代码:
public function check(){ $code = input('code'); $userId = session('uid'); switch ($code){ case 1: //B核准 //一大堆逻辑代码 break; case 2: //c物资部核准` //一大堆逻辑代码 break; default: //张三发起申请 //一大堆逻辑代码 } }}
这时候,张三工程师,很快写完了代码。逻辑也精确,权限判断完备没问题,很高兴的跟客户开始了一系列的骚操作,并审核通过。韶光过了半个月,软件还在运维运用期间。客户给张三工程师打电话,我们领导说,要增加一个审核功能,
改为:A填写申请表——B部门经理审核——E主任核实——C物资管理部确认——D张三领用物资
问题来了: 而这个客户系统,有数十条,类似的审核业务?如果都这样变动?
这时候,求张三工程师的心里阴影面积?
总结下: 从上面的例子来说,不能说张三工程师的代码逻辑有问题,业务逻辑有问题。但是问题在哪里?
我个人认为,在于没有很好处理业务与逻辑之间的关键成分。我们常说,信息管理系统业务是一半,事情流程是一半。如何整合好这两个关系。须要运用到事情流引擎。
废话太多,来点实际~用事情流办理上面张三工程师的问题李四接手了,张三的业务,全面剖析了,下系统。决定开拓个专门管理该公司的业务流程问题。 把业务与流程剥离。
通过可视化快速构建。在2分钟就完成了上面的逻辑架构,同样的,改造了数十条业务逻辑。而这些,他只用了不到1个小时。
张三工程师,不可思议的说,原来还有事情流这东西~~~
总结来了通过上面的小Demo该当很随意马虎看出事情流强大的上风在于哪里。
不管你业务怎么变革,流程怎么变革,都能通过可视化的拖拽设计,
把专业的流程驱动交给专业的流程引擎,归集与统一。
你省去的不仅仅是流程的调研,客户需求剖析韶光,
更是你写if else 一大堆重复代码的韶光。
末了回到原题:
深入浅出,事情流引擎。LCDP(低代码开拓平台)的涌现并非有时,而是在发展过程中的一定,专业化的表单设计,流程驱动,会冲破传统开拓的弊端,为企业在快速构建,数据驱动上供应前辈的技能生产力!
末了推举几个国产流程引擎:
PHP流程引擎TPflow https://gitee.com/ntdgg/tpflow PHP精良的事情流新秀
JAVA流程引擎Jflow:https://gitee.com/opencc/JFlow 坚持流程开拓12年