工作流的详细定义
工作流的详细定义
http://211.95.124.238:22/cgi-bin/topic.cgi?forum=20&topic=299&show=0
由于本人做了一个所谓工作流的小东东(www.bestsolution.cn下载),常常有人这样问我。
你的工作流能够自定义表单吗?你的工作流能够自定义报表吗?你的工作流能够建模组织机构吗?你的工作流能够进行权限控制吗?你的工作流能够带附件吗?。。。。。
对于上面的问题我的回答全部都是:不可以#
于是有人就怀疑,那么工作流能够做什么?
所以,我想就我对工作流的浅显理解说一说。请大家指教。
从功能的角度看:工作流系统的本职工作就是管理和控制业务流程,例如:流程实例的启动、停止;环节实例的启动、结束;任务的分配等等。
从工作流系统的组成看:工作流系统应该包括流程引擎、流程定义工具、运行管理工具、api系统。工作流系统应该该**不**包括表单定义、组织机构定义及其管理、权限管理、数据流管理等等。工作流系统虽然不包括上述功能,但是工作流系统一定会和上述功能发生交互关系,所以好的工作流产品并不是一个包办上述功能的产品,而是一个设计良好的能够和上述功能交互的系统。
从和其他系统的关系看待工作流:如果站在基础业务平台的角度,那么,工作流系统、组织机构管理系统、表单自定义系统、权限管理系统、数据流管理系统、报表系统都是这个基础业务平台的服务。业务功能系统在运行的过程中会调用这些服务,这些服务之间本身也可能互相调用。例如:工作流服务和组织机构管理服务之间的关系就非常密切,尽管如此,如果认为工作流系统一定包含组织机构管理系统应该是不正确的。在oa系统中,表单自定义好像比较重要,而且流程常常需要引用表单上的数据,但是表单自定义绝对不是工作流系统的组成部分。流程在运行的过程中可能跨多个数据库系统,任务在流转的过程中需要“携带”大量的业务数据,但是这些也不是工作流要做的事情,完成这些工作的系统我称之为“数据流管理系统”。总之:从功能的角度,所有的功能都是必要的,但是从技术的角度,这些功能不可以做到一个“铁板一块”的所谓的“工作流”里面去。
从技术发展的趋势看:工作流系统很可能发展成为一个类似关系型数据库管理系统的专职的系统。
我那个工作流东东还在改进中,希望作出一个设计合理的(决对不是强行coding出来的),工程实用的东西出来。