工作流系统中用XML存储流程图的意义


  用流程设计器画一个流程图出来,这个流程图本身包含节点数据和节点间的连接线的数据,这些数据就是流程图的拓扑结构,至于节点内部存储的业务数据和嵌入公式数据本身不应该算是流程图的核心数据,至于控制流程图运转的那些代码就更不能算是流程图的组成部分了,就好像一个人生下来,只携带了父母的DNA信息,而不会携带父母的知识,学历和财富,这些并不是遗传的组成部分。。。。。

开发一个流程设计器,为什么要用XML来存储流程图呢? 这个仅仅是惯例,但是并不一定就是唯一的选择,如果我们把流程的运行实例存储在数据库中,那么真正的流程应该是和数据库紧密联系的,而XML文件仅仅是一个中间过程,仅仅是一个中间过程,因为对XML的操作还是远远不如对数据库的操作那么简单和便捷,XML数据操作没有类似数据库的SQL语言那么成熟和可靠。。而数据库中的流程实例还可以很方便的用于记录流程的运行状态等参数值,而XML结构这样做难度就很大。。。也没有成熟的,开源的解决办法。。。。

实际上,从流程设计器设计出来的流程甚至可以直接存储在数据库中,中间不需要XML作为中介。。至于把某种固定模式的XML流程结构作为标准语言模板来固定下来,就显得不是那么灵活了,因为我们的设计器设计出来的流程图结构和里面的数据会随时调整,试想一下,如果你的设计器必须用某种固定模型的XML结构,那如果有一天你的业务伙伴给你说:我们的流程图里面需要增加一项参数,可能需要对流程设计器进行修改,然后输出一种有新的结构的流程图,你该怎么办呢?  你告诉他,不,先生,我们的流程图是标准模型,不容许修改,你回去告诉你们老板,你们必须修改你们的业务。。而不是要求我们修改我们的流程设计器。。。。。

55555555555   祝大家六一儿童节快乐。。。。。。

 

你可能感兴趣的:(xml)