OSCHINA 第 13 期高手问答:工作流开发

红薯 发布于 2012/03/25 00:03
阅读 9K+
收藏 19

本期 OSCHINA 高手问答我们请来 ccflow 的创始人周朋 (@ccflow ) 为我们解答工作流开发方面的各种问题。

周朋, 开源的驰骋工作流程引擎ccflow设计者,创始人.致力于可复用的框架技术,映射技术,工作流程管理技术的研究,设计,应用.所研发开源软件产品在国内应用广泛影响深远。

OSCHINA 高手问答远离喷子和与主题无关的讨论,谢谢支持。

下面请大家就工作流开发或者是 ccflow 的相关问题向周朋 @ccflow 提问:)

以下是问题补充:

@ccflow周朋:要想学好ccflow首先要看两个重要的文,用svn下载下来位于D:\ccflow\Documents\里面。 (2012/04/17 20:55)
@ccflow周朋:驰骋工作流程引擎,工作流程管理系统免费培训青岛站6月6号 http://my.oschina.net/ccflow/blog/60662 (2012/06/04 22:21)
加载中
1
宏哥
宏哥

引用来自“ccflow”的答案

引用来自“宏哥”的答案

引用来自“ccflow”的答案

没有看明白你做的流程引擎,也没有明白你的关键性问题。    

上面那个流程的关键问题就是,法务,财务控制. 需要组织定义.没有看到你的系统能够进行组织定义,并且通过定义的流程选择组织/人来做审批.

流程最重要的作用就是控制,不只是记录.

一个流程引擎组织结构是运行流程基础,一个流程的节点访问权限是有多种控制方式。

按岗位计算, 按部门计算, 按SQL计算, 按设置的人员计算, 由上一步发送人选择,
   按上一节点表单FK_Emp字段计算 ,按上一步操作人员, 按上一步操作人员., 目前ccflow 只总结出来以上的几种模式。    

还是上图的例子,比如法务审批. 通常情况,合同根据规模,类型,有可能是法务部任意一人都可以审批,也有可能必须指定某个律师或者法务部的头进行审批. 里面有很多逻辑计算关系.这种计算非常依赖于master data,也就是系统当中的configuration 部分来做的,并不是程序执行.不仅仅是 R/W的控制.逻辑也可以根据发起人,相关人等发生关系.在不同环节,对不同信息,对不同的人,要进行控制,否则企业报价的安全性得不到保护.

另,上面的图不是设计,是需求
ccflow周朋
ccflow周朋
http://my.oschina.net/ccflow/blog/55983 一个工作流引擎咨询者对于ccflow的问题汇总
宏哥
宏哥
@蒙懂 : 是他一直对我纠缠不休,我早就说,不要继续讨论,说我诽谤,说我赌局输,还把你搅进来.
蒙懂
@宏哥 : 宏哥 算了吧 你们做不出ccflow那么好的 软件 就不要出声啦 好好学习 ccflow吧
蒙懂
@宏哥 宏哥 你是什么目的啊
宏哥
宏哥
@ccflow 不是每个人人都像你一样廉价,有精力对付每一个混混.
下一页
1
中山野鬼
中山野鬼
@宏哥 希望你能把ccflow的重要不足,无论是否是理解清楚ccflow本身,流水log一下。ccflow 我会后期尝试看是否有直接再开发修正的价值,当然这要 @ccflow 同意。总比我开始重新规划数据结构要好。呵呵。
宏哥
宏哥
看下面我提到“没有看到组织贴合性(org alignment), 委托,授权.”的帖子这个部分,他们都无法做到。所谓的做到,是偷换概念的。这些东西很复杂。企业里面这些东西,和他们提到的不一样。
1
一千年前的人
一千年前的人
@ccflow 请问我现在的业务系统已经有一个表单,现在想对这个表单加一个流程,这种情况如何利用ccflow呢?   ccflow中都是从自定义表单开始的。 谢谢!
ccflow周朋
ccflow周朋
有两种方案 1,在ccflow的节点属性里,表单类型中使用自定义表单。 在表单url属性里输入您的表单url. 2, 使用sdk表单。 可以查查流程操作手册,有详细的描述。
1
蓝天宁
ccflow还是一个好用的产品,没必要踩。
0
北落
北落

我想问的是,针对用户的一些特殊需求应该如何解决。

比如说公司里的领导比较懒,不喜欢打字,想点几下按钮就能搞定的情况该如何解决。

 

ccflow周朋
ccflow周朋
ccflow的技术支持群号:140539808
ccflow周朋
ccflow周朋
您的问题在后面有回答. etc: 如果您访问不了官网,请直接下载 http://code.google.com/p/ccflow/
0
xoHome
xoHome

您好,因为我之前也开发过公司的工作流系统,所以有些问题需要请教下:

1、工作流程需要满足什么条件才能算工作流(符合行业标准)?因为之前我开发的工作流系统能满足公司的任何审批流程需求,但给一位工作流前辈看后评论并不好,说我理解概念错了,这里具体有什么行业标准来判断,需要注意什么地方呢?

2、之前我研究JBPM工作流,里面提到过几种工作流模式,那我想问下目前市场上流行的工作流系统总共分几种模式?

3、从开发角度上来看,工作流关联到公司具体角色依赖什么最好? 比如我开发的系统就是依赖公司的组织架构树(职位角色树),来确定节点处理人。可我公司的组织架构经常改变,导致流程系统也要经常重新配置,请问这点如何避免呢? 目前主流工作流系统是依赖什么来确定执行人的?

谢谢!

ccflow周朋
ccflow周朋
您的问题,在后面的回答。
0
xoHome
xoHome

我看了下您的空间,关于那个流程图的设计,感觉和我开发的那套非常像。但有个问题,就是流程设计系统零基础的配置不了,因为有些判断逻辑在里边,导致配置的图比较复杂比较大。 我之前了解过不少流程设计系统,感觉有些配置的流程图非常简单。 这是不是框架和企业专有系统的区别?

l
lj
回复 @ccflow : 非常同意"越减少专业性的概念给客户,客户越容易接受"
ccflow周朋
ccflow周朋
关于流程节点的配置,ccflow 还是很简单的。它只有线,节点,标签三种元素。 节点有5种节点类型,普通节点、分流节点、合流节点、分合流节点、子线程节点。流程设计器的表现形式与设计者的看待问题的角度有很大的差别。我们认为越减少专业性的概念给客户,客户越容易接受,而不是概念越多越专业就让人感到自己开发的强大。
0
ccflow周朋
ccflow周朋

引用来自“北落”的答案

我想问的是,针对用户的一些特殊需求应该如何解决。

比如说公司里的领导比较懒,不喜欢打字,想点几下按钮就能搞定的情况该如何解决。

 

1, ccflow 有手写板功能,可以用手写签字。

2, ccflow有获取或者设置输入默认值功能,可以把经常输入的大块文本自动的填入文本框里,以避免重复性的输入劳动与差错。

 比如:为法律流程设计 法律条款。 为审批意见中设置经常审批的意见。

0
ccflow周朋
ccflow周朋

引用来自“xoHome”的答案

您好,因为我之前也开发过公司的工作流系统,所以有些问题需要请教下:

1、工作流程需要满足什么条件才能算工作流(符合行业标准)?因为之前我开发的工作流系统能满足公司的任何审批流程需求,但给一位工作流前辈看后评论并不好,说我理解概念错了,这里具体有什么行业标准来判断,需要注意什么地方呢?

2、之前我研究JBPM工作流,里面提到过几种工作流模式,那我想问下目前市场上流行的工作流系统总共分几种模式?

3、从开发角度上来看,工作流关联到公司具体角色依赖什么最好? 比如我开发的系统就是依赖公司的组织架构树(职位角色树),来确定节点处理人。可我公司的组织架构经常改变,导致流程系统也要经常重新配置,请问这点如何避免呢? 目前主流工作流系统是依赖什么来确定执行人的?

谢谢!

RE:
1, 你可以参考工作流程行业标准去做,但是如果你完全按照它们说的开发工作流程引擎,你会感到概念非常之专业,用户很不好理解与培训。
2,工作流程根据我们的经验有,线性流程,同步分合流,异步分合流,父子流程,4种模式 。这4种模式就满足了现有的应用,至少我们所遇到的客户没有超出这4种范围,我的意见仅供您参考。
3,做为工作流程引擎提供商来说,他本身就会有一套组织结构,那么如何与您的系统进行集成?您可以参考ccflow的提供的集成方案,用简单的话来说,就是删除ccflow的组织结构5大表,建立同样结构的视图,视图数据是映射的您系统的结构的数据,您可以baidu  ccflow 系统集成.
xoHome
xoHome
非常感谢您的建议,我先了解下ccflow先
0
xoHome
xoHome

引用来自“xoHome”的答案

我看了下您的空间,关于那个流程图的设计,感觉和我开发的那套非常像。但有个问题,就是流程设计系统零基础的配置不了,因为有些判断逻辑在里边,导致配置的图比较复杂比较大。 我之前了解过不少流程设计系统,感觉有些配置的流程图非常简单。 这是不是框架和企业专有系统的区别?

谢谢回答! 我想再问下,从开发角度上看您如何处理节点?我的处理方式为:开始和结束节点:分别处理,代表流程实例开始和结束以及处理对应配置事件;普通节点:直接绑定角色树角色;分流节点:后台提供决定流程运行路线的所有判断因素以供客户图形配置,然后解析配置查找符合条件的节点,分为单线分支和多线分支(同时执行多条运行线);合并节点:我这里是对应分流节点,会等待未到的分支;动态节点:与普通节点不同,这里是根据一系列规则自动匹配符合要求的角色或成员;另外还有一个流程所属人节点,类似程序快捷方式,直接指定到申请角色。

我这里没有用到子流程,后面可能会加上。可能我的实现有点另类,麻烦您提下意见,谢谢。

还有一点请教,ccflow里如果组织结构经常变动,会影响已配置流程么?如果会的话,有什么样的解决方案呢?

返回顶部
顶部