工作流学习心得一、 XPDL、FPDL设计理念解析:XPDL、BPMN、BPEL 的流程模型都有一个共同的特点,就是没有区分模型中的工作流逻辑和业务逻辑。 业务逻辑是指某个具体的业务操作,例如填写一张表单,调用一个WebService 服务,发送一个消息等等。 工作流逻辑是指对这些业务逻辑的某种编排方案,例如先执行哪个业务操作,然后执行哪个业务操作,哪些可以并行等等。 下面以一个请假流程来讲解一下这两种模型的区别,该业务规则如下: 首先由请假人提出申请;请假申请提交到部门经理处审批;审批通过后到人力资源部登记备案。(暂且不考虑审批不通过的情况。) 这个业务用XPDL 建模,其流程图如下。这个流程图和UML 中的活动图差别不大,都是从宏观的抽象的层次描述了业务。我认为这种模型便于分析但是不利于执行。其根源在于流程元素的职责划分不清,在XPDL 中,Activity承担了太多的职责,可以代表一个人工活动,也可以代表一个自动的程序调用,还可以代表一个子流程,还可以是一个复杂的路由等等。图ii-2-1 XPDLwor