以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 SVG/GML/VRML/X3D/XAML 』  (http://bbs.xml.org.cn/list.asp?boardid=21)
----  基于JGRAHP的工作流模型设计器[原创]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=12128)


--  作者:comsci
--  发布时间:11/17/2004 4:37:00 PM

--  基于JGRAHP的工作流模型设计器[原创]

   
                             基于JGRAHP的工作流模型设计器
                                      JWFDM v0.1

                                      comsci@163.com
                                      yqy@fangfa.net
                                        QQ: 1984441
                                         2004 - 11

                                        介绍   


     这个工程包中包含是我在jgraph3.0的基础上实现的一个功能比较简单的工作流模型设计器的JAVA代码,本来我们是在做一个J2EE的电子政务系统,没有想到要和工作流打交道,但是后来客户的要求提高了,对公文处理提出了新的需求,原来的B/S程序没有办法实现这些功能,所以只有考虑使用工作流系统来满足这些需求,在网上看到大家都在热情的讨论工作流的东西,开始很受鼓舞,本来以为可以很容易找到合适的对象,了解,学习工作流,但是发现大家都在讨论老外的标准老外的东西不是不好,只是来的太复杂了,很多东西我们在实际使用中用不上,而且还会把我们的思路引到他们的路上去,被牵着鼻子跑,因此我徘徊了一段时间后决定找一个比较容易的点切入,
  自己完成一个工作流系统(也是工作的安排),这样做的东西可能会和大家的标准不太一样,比如我把流程图保存后,文件格式就是gxl,不是XPDL,而我的数据流基本是在关系数据库中(和大家讨论的使用xml来处理的主流不一致)这样方便我写一些SQL来处理,也方便与我们的业务想结合(数据库中的数据结构只是基本的流程图数据,并不和活动等东西扯上关系)使用jgraph开发设计器是一个非常好的选择,JGRAPH的结构清晰,数据结构也设计的非常简洁非常适合做流程图和图型结构的程序,当然它也有缺点。。。。。,比如JGRAPH包中一些有明显的缺点,不能把图标保存,还原图的时候不能把坐标还原等。。这些问题我都在自己的程序中通过修改JGRAPH的源CODE把它们完善了,也许还有一些其它的问题我没有发现,希望各位朋友能再接再厉

  工作流系统实现的的关键,通过设计器画图,把图中的节点与边表示为一个可以处理的图数据结构,使用算法对这个图模型进行自动编历,在遍历过程中把活动触发,活动的代码处理完成后对节点数据进行修改,循环继续遍历  ,直到最后一个结束点,至于其中的什么并发,串行,汇聚,分流等。。都是算法设计上需要处理的问题,越简洁的流程图数据结构越能方便算法处理这个图,而过多的数据会影响算法设计者的思路。。。。有时会陷入死胡同.....所以对于初入这行的朋友来说,把这个门坎迈过以后,再来看其它的工作流系统,会一通百通。。

   我希望我们的项目中使用的工作流软件都非常优秀,而要做一个非常优秀的工作流系统出来,也许不是一两个公司或者组织几个人就能搞的很好的,因为这里面有很多东西是在不停的变化的,大家在一起讨论,把自己的设计,思路拿出来,共享,会把我们所有人的水平提高的,闭门造车只能把自己封闭起来,希望大家一起进步。。。。。

   (感觉,工作流的商业和开源软件都比较复杂,对工作流在各个不同的行业中的推广和应用带来一定的困难)


   基本功能

      画有向图(节点,连线),保存,提交,图遍历算法


   类与方法说明


   1: workflow_main 主窗体类(无具体功能)
   2: workflow_GraphEd 绘制流程图类
   3: workflow_FlowTree 主窗口坐边的树型浏览区类
   4: workflow_DB_connection 连接数据库类
   5: workflow_JGraphGXLCodec 写GXL文件类
   6: workflow_Graph2Gxl      保存GXL文件主类
   7: workflow_dom            使用DOM读取解析GXL文件数据类
   8: workflow_client         活动节点处理类  
   9: workflow_FileImportGxl  还原显示GXL文件为流程图类
   10:workflow_GxlReader      使用SAX读取GXL文件,现在已经不使用
   11:workflow_IntoSql        写数据库类
   12:workflow_stepMain       对数据库中的流程数据进行初步处理的类,供引擎使用
   13:workflow_engine         主引擎类(实现流程图遍历算法,这几天正在疯狂修改,也许包中的有问题,我觉得写好以后,在发上来)
   14 workflow_AbstractActionDefault   接口方法(内部调用)
   15:GraphEd_ChangeCellAttribute_Dialog 修改图节点属性类
   16:workflow_progressbar    进度条显示类


   扩展说明
   
   这个程序和我的思路适合初入工作流门的朋友,用OBE,SHARK的高手看了不要骂我哈。。。
   我写程序的时候,不知道什么是jawe
     JWFDM v0.1代码工程包  jwfdm.rar 需要的请加我QQ,我发给大家
   
   



--  作者:yanbin3494
--  发布时间:12/13/2004 3:16:00 PM

--  

--  作者:YuLimin
--  发布时间:12/14/2004 9:05:00 AM

--  
鼓励一下,至少有用心去研究了一下!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms