当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

对“带条件选择的并行汇聚路由问题”的再思考

发表于: 2009-09-10   作者:comsci   来源:转载   浏览:
摘要: 2008年上半年,我在设计并开发基于”JWFD流程系统“的商业化改进型引擎的时候,由于采用了新的嵌入式公式模块而导致出现“带条件选择的并行汇聚路由问题”(请参考2009-02-27博文),当时对这个问题的解决办法是采用基于拓扑结构的处理思想,对汇聚点的实际前驱分支节点通过算法预测出来,然后进行处理,简单的说就是找到造成这个汇聚模型的分支起点,对这个起始分支节点实际走的路径数进行计算,然后把这个实际
2008年上半年,我在设计并开发基于”JWFD流程系统“的商业化改进型引擎的时候,由于采用了新的嵌入式公式模块而导致出现“带条件选择的并行汇聚路由问题”(请参考2009-02-27博文),当时对这个问题的解决办法是采用基于拓扑结构的处理思想,对汇聚点的实际前驱分支节点通过算法预测出来,然后进行处理,简单的说就是找到造成这个汇聚模型的分支起点,对这个起始分支节点实际走的路径数进行计算,然后把这个实际运行的路径数作为汇聚点路由控制的关键参数。。。。

   经过简单的测试,这种算法的确可以解决的一类汇聚和分支点在拓扑结构上面完全对称的工作流程图的引擎问题,但是对于不对称的图就失去作用了,当然作为一个开源工作流系统的商业化产品完全可以对用户绘制流程图进行种种限制,使用户绘制的流程图达到引擎所能够处理的那种规范程度,但是这种限制措施却不能够真正使用户满意,所以当我现在重新开始对这个问题进行思考的时候,我发现这个问题的实质其实是概率数学问题,表明上看起来有点像条件概率,但是又仿佛是随机变量的马尔科夫链问题,我查遍了手头的数学手册和计算机方面的算法导论中关于图论的相关算法均未发现有相似的问题的描述和解决办法,虽然无法立即通过现成的数学工具和算法来处理这个问题。

   但是我相信只有通过对流程图拓扑结构与节点选择路由进行一次合并的结构建模来生成一个拓扑结构相关的动态方程并辅助以概率计算才能够真正解决此类问题。。这个问题已经不是单独的的软件架构设计的问题,而是一个在工作流系统设计方面出现的特殊而又带有普遍意义的算法问题,而类似问题在工作流系统设计领域还将不断出现,对于此类问题我的原则是充分利用各种数学语言和工具,大量借鉴自动控制领域,电路设计领域和TCP/IP网络设计和协议的相关知识和模型,不被某种流程软件规定的文档结构模型(比如说JPDl,BPM)所限制,要跳出流程设计的小圈子,占在一个更高的层次来看到流程系统设计的种种技术问题,在更高的战略层面进行规划和设计,使国内开源工作流系统的核心技术水平不断的提高,并借鉴国外开源组织的先进的设计思想和方法,不断的进步,实现软件设计领域的发展和超越。。。。。

  虽然国内做工作流的厂家和人的绝对数量不少,但是在工作流技术的某些领域进行联合设计和创新的厂家和个人却相对很少,而对于类似工作流设计的这种具有很大的变化性的技术领域(jbpm3-jbpm4的设计变化)保守于某个固有的产品和技术是绝对会被很快淘汰的,所以我建议国内做流程系统开发和设计的厂家,组织和个人联合起来,多进行沟通和讨论,多交换思想,这样才不至于出现在短期内盈小利,而长期却大落后的这种情况。。。。。。。。。


对“带条件选择的并行汇聚路由问题”的再思考

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
我把图中出现的问题叫做 “带条件选择的并行汇聚路由问题” 问题的描述:在一个流程图中,存在N个分
在设置路由时,发现设置以下路由,系统不能识别 routes.MapRoute( name: "Default1", url: "{contro
本文主要介绍在JWFD工作流引擎设计中遇到的一个实际问题的解决方案,请参考我的博文"带条件选择的并
很简单只在帝国的基础上添加 http://bbs.phome.net/ShowThread/?threadid=201928&forumid=31 //user
实验指南 BGP 路由汇聚 1,summary-only Night conf t int s2/0 ip ad 10.1.1.1 255.255.255.0 encap
实验指南 4,attribute-map/route-map 初始配置见实验指南: BGP路由汇聚(上)3 在Rainier上做BGP
应用程序入口 import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.A
最近在使用正则表达式的g标志时出现了错误,索性就把正则表达式在总结下,算是加强理解吧! 1、创建
前面在谈PaaS的时候曾经谈到过共享数据库,私有数据库的问题,在这里再谈谈在多业务系统建设过程中
三层结束一段时间了,前面进行过总结。上篇有大神问我为什么不敲一个VB.NET版的登陆窗体,我想说其
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号