各种工作流模式的实现
支持多实例模式的动态工作流研究

摘 要: 为了解决 多实例模式给 工作流的建模和 实现带来的动 态语义和数据共享冲突问题 , 在对 多实例模式进行深入分析的基础上 , 讨论 了一种具有动 态性的建模 方法。这种基 于 X D P L的过程定 义方案支持各种多实例活动并且具有较强的动态性 , 能与不同的实现引擎兼容。 同时, 出了一种活 提 动多实例动态组装的活动执行部件设计方案 , 中活动 实例 管理器的设计 解决 了动 态执 行 多实例活 其
Ke r s y a c wok o ; mo e i g y wo d :d n mi rf w l d l ;mu t l n t n e at r ; w r  ̄ w e g n n l i e i sa c s p t n p e ok o n ie
0 引 言
为了实现工作流技术 的标准 化和 开放性 , 作流管 理联 工 盟( rf wMaae et olin Wf ) 出 了工作 流管理 Wok o n gm n C aio , MC 提 l t 系统( rf wM n gm n S s m, MS 的参考模型 … 。如 Wok o a ae et yt Wf ) l e 今关于参考模 型的讨 论中 , 当一部 分是针对其灵活性 、 相 动态 性的 , 因在于流程建立 与 流程执行 在 时间上环 境上 的错位 原
C u p r temut l ntn e atr f ce t , a di rv h y a co ok o d e . n a s p oth li eisa c sp t ne inl p e i y n mp oe te d n mi fw r ̄ w mo 1
维普资讯 http://www.c来自第2 6卷 第 l 2期
20 0 6年 1 2月
工作流模式的概述

【 关键 词 】 工 作 流 ; 作 流 模 式; 程 定 制语 言 : 工 流
O 引 言 .
难 在 于 决定 何 时 同步 , 时合 并 。 同步 可 选 流 导 致 可 能 的死 锁 , 何
21基本 控 制 模 式 . 多实 例 模式 未考 虑 多实 例 的 同步 问 题 。 如 。 主 流程 中孵 例 从 并 行 分 叉 (aa e S l) 当 两 个 或 更 多 任 务 需 并 行 执 行 时 Prl l p t: l i 如 i l rFo和 IHo 中支 u - w 需要 并 行 分叉 。除 不 要求 任 何 程 度 并 行 支 持 的 系统 外 大多 数 工 化 出一 个 可 变 数 量 的子 流 程 . Vsa WokI 持 的 那 样, 启 动 多实 例 未 考 虑 同步 问题 : 仅 但是 有 时候 要 求所 有 作 流引 擎 都较 易 支 持并 行 分 叉 。
23结 构 化模 式 ,
工 作 流技 术 是 实 现企 业 业 务 过 程建 模 、 务过 程优 化 、 务 合并 并 发 流 可 能 导致 不 期 望 的任 务 多重 执 行 。 业 业 过 程 管理 与集 成 . 而 最 终 实 现 B M 目标 的核 心 技 术 。按 照 工 从 P 作 流 管理 联 盟 ( MC Wok o ngmet ol o ) 定 义 Wf — rf w Ma ae n a tn 的 l C i i 【 工 作 流 就 是 自动 运 作 的业 务 过 程 部 分 或 整 体 , 现 为 参 与 者 l 】 表 对 文 件 、 息或 任 务 按 照规 程 采 取 行 动 , 令 其 在 参 与 者 之 间 传 信 并 递 模 式 是 对 一 定 上 下 文 中 连 续 发 生 的 具 体 形 式 的 抽 象 ,. E G mi .等 在 可重 用 面 向对 象 面 向 编程 技 术 中首 次 系 统地 分 类 an a 了大 约 2 个 设 计 模 式脚 3 。描 述 了 面 向对 象系 统 中经 常 发 生 的 模 式 集 这 些 设 计模 式 独 立 于 实现 技 术 。
基于.NET的工作流技术的研究与实现

1 工 作 流 管理 系统
1 1 工作 流 原理 与系统体 系结构 .
1 2 流 程分析 .
企 业 中存在着 各式 各 样 的 办公 流 程 , 中最 主 其 要 的就是各 种 审批 流 程 , 文就 以审批 流程 为 示 例 本 对工作 流 管理 Biblioteka 统 的设计 做详 细 的介 绍 。
t pi u m t aybsdo et ho g f. e p tr dS L Sl ̄20 a bs . i ss m h e r e t a cl a nt cnl y r sa o i l e h e o o N t l o a Q e :00dt ae T s yt a a mn f -r v a h e s
个 软件构 件使 用 的数据 。 () 用 与 应 用 数 据 : 于工 作 流管 理 系 统 来 3应 对 说, 它们不 是工 作流 管理 系统 的组成 部分 , 而是 属于 外部 系统 和数据 , 它们 被 工 作 流 系统 调用 来 完 成 整 个 和部分 工作 流管 理 的功能 。 把计 算机技 术 在工 作流程 管理 中的应用 称 为工 作流技 术 。 当然 , 用 工 作 流技 术 所 体现 的形 式 是 应 个工 作 流平 台或工 作 流管理 系统 。 l 。】
主要 由三类 构件组 成 :
s o t n d te t fw r i ,r i d t e w r f ce c ft e b s e s e tr r e e l e l e okn h r n e i o ok n e h me g as o e ii y o u i s n ep i ,ral rai d w r i e h k n h n s y z g w t o t p r ,p o ie eb a d—n w mo e frd v lp n f e e tr r n ee t n cb s e sa e . i u e s rvd d t rn h a p h e d o e eo m to ne i i l r i u is g s e h t p s e c o n
一种多实例工作流模式的解决方案

一种多实例工作流模式的解决方案
陈大锋;吴泉源;刘江宁;刘必欣
【期刊名称】《计算机工程与科学》
【年(卷),期】2005(027)001
【摘要】多实例MI是一种重要的工作流模式,由于它引入了许多与工作流语言的语义和系统实现相关的问题,在许多情况下难以被直接有效地实现.本文在对MI的类型和实现技术进行分析的基础上,提出了一种基于"活动数组"的方案.它不仅能明显简化MI的建模,提高模型语义的精确性,并且具有较强的表达能力,实现较简洁.【总页数】4页(P89-92)
【作者】陈大锋;吴泉源;刘江宁;刘必欣
【作者单位】国防科技大学计算机学院,湖南,长沙,410073;国防科技大学计算机学院,湖南,长沙,410073;国防科技大学计算机学院,湖南,长沙,410073;国防科技大学计算机学院,湖南,长沙,410073
【正文语种】中文
【中图分类】TN311.5
【相关文献】
1.基于网络划分的多实例工作流模式解决方案 [J], 胡飞虎;张丹丹;杨慧媛;马玲
2.多实例工作流模式的π演算形式化 [J], 梁爱南;李长云;黄贤明
3.针对工作流模式执行约束的解决方案 [J], 付丽娜;郝克刚
4.一种基于BPEL4WS的多实例工作流模式的解决方案 [J], 刘利;范磬亚;徐汀荣
5.基于π演算的多实例工作流模式的建模方法 [J], 梁爱南;李长云;黄贤明
因版权原因,仅展示原文概要,查看原文内容请购买。
workflow源码解析

workflow源码解析Workflow是一种用于描述和执行工作流程的编程模型,它可以帮助我们更好地组织和管理复杂的业务流程。
本文将对Workflow的源码进行解析,分析其实现原理和核心功能。
Workflow的源码主要包括工作流引擎、工作流定义和工作流实例三个部分。
工作流引擎是整个系统的核心,它负责解析工作流定义,创建和管理工作流实例,并根据定义中的规则和条件来驱动工作流的执行。
工作流定义是工作流的静态描述,它由一组任务和它们之间的关系组成。
每个任务代表一个具体的操作,比如发送邮件、生成报告等。
任务之间的关系包括顺序、并行和条件等,用于定义任务的执行顺序和条件。
工作流实例是工作流的动态执行过程,它由一组任务实例和它们的执行状态组成。
任务实例代表工作流中的一个具体任务的执行过程,包括任务的执行状态、输入参数和输出结果等。
工作流实例根据工作流定义的规则和条件来驱动任务实例的执行,实现整个工作流的自动化执行。
Workflow的源码采用面向对象的设计思想,使用Java语言实现。
它使用了一些设计模式,如工厂模式、观察者模式和状态模式等,来实现工作流引擎的灵活性和扩展性。
工作流引擎是Workflow的核心组件,它负责解析工作流定义,创建和管理工作流实例,并根据定义中的规则和条件来驱动工作流的执行。
工作流引擎首先读取工作流定义的XML文件,将其解析成一个内部的工作流模型。
工作流模型包括任务、任务之间的关系和任务的执行规则等信息。
然后,工作流引擎根据工作流模型创建一个工作流实例,并将其添加到工作流实例列表中。
工作流实例是Workflow的动态执行过程,它由一组任务实例和它们的执行状态组成。
工作流实例根据工作流定义的规则和条件来驱动任务实例的执行,实现整个工作流的自动化执行。
工作流实例首先根据工作流模型创建任务实例,并将其添加到任务实例列表中。
然后,工作流实例根据任务实例的执行状态和执行规则来选择下一个要执行的任务实例,并将其状态设置为"执行中"。
办公自动化系统中动态工作流研究

办公自动化系统中动态工作流研究摘要:传统的工作流系统规定只能够在流程设计阶段对流程进行编辑和修改,在流程开始运行之后就不能再对其进行任何操作。
但随着应用的不断深入和企业自身不断发展,业务流程变得更加复杂,控制步骤和流转规则的不可预知性越来越大;业务种类变得更加多样,设计阶段并不能将所有业务都包含进去;业务发生环境和外部条件的变更变得更加频繁,极其容易发生流转失败,进而导致流转的停滞或回退。
因此,需要使用动态工作流思想指导工作流模型的设计,在确保不影响工作流正常流转的情况下,允许用户进行动态修改,提高系统的适应性和柔性。
关键词:办公自动化;动态工作流;动态工作流引擎;动态修改0 引言现代企业经常会发生工作流实例和预定义时建立起来的模型不一致的情况,特别是一些意外情况和事件。
让用户参与并解决是一个有效的方法。
这就需要工作流系统能为用户提供修改工作流的功能,并且在修改后,能保证整个系统继续运行和数据的一致性。
1 工作流技术综述1.1 工作流定义根据国际工作流管理联盟(Workflow Management Coalition,简称WfMC)的定义,工作流(Workflow)是根据预先定义的逻辑规则对业务全部或部分进行自动运作,目的是使流程参与者能相互协作,把信息在他们之间自动传递。
换句话说,工作流就是为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。
1.2 工作流引擎工作流引擎的工作原理是对过程定义进行解析,从而实现过程实例化,根据过程定义和运用时的信息动态决定业务过程的执行,实现业务过程的计算机管理。
其中关键是控制过程实例和活动实例的状态转换。
目前主流的开源引擎有:由Enhydra组织开发的Shark、OpenSymphony组织开发的OSWorkflow和JBOSS项目集成的JBPM。
2 动态工作流2.1 动态工作流含义对于动态工作流中的“动态”,不同的研究者有着不同的认定,但是其本质和特点是基本一致的。
工作流Activit介绍与应用

工作流Activiti介绍与应用工作流(workflow)就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。
我的理解就是:将部分或者全部的工作流程、逻辑让计算机帮你来处理,实现自动化。
1Activiti简介Activiti是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理,工作流,服务协作等领域的一个开源,灵活的,易扩展的可执行流程语言框架。
它实现了BPMN 规范,可以发布设计好的流程定义,并通过api进行流程调度。
1.1Activiti基础编程框架Activiti的基础编程框架如下:Activiti基于Spring,ibatis等开源中间件作为软件平台,在此之上构建了非常清晰的开发框架。
上图列出了Activiti的核心组件。
:流程引擎的抽象,对于开发者来说,它是我们使用Activiti的外观(faade),通过它可以获得我们需要的一切服务。
(TaskService,RuntimeService,RepositoryService...):Activiti按照流程的生命周期(定义,部署,运行)把不同阶段的服务封装在不同的Service中,用户可以非常清晰地使用特定阶段的接口。
通过ProcessEngine能够获得这些Service实例。
1.2Activiti重要服务类ProcessEngine:流程引擎的抽象,通过它我们可以获得我们需要的一切服务。
RepositoryService: Activiti中每一个不同版本的业务流程的定义都需要使用一些定义文件,部署文件和支持数据(例如 XML文件,表单定义文件,流程定义图像文件等),这些文件都存储在Activiti内建的Repository中。
RepositoryService提供了对 repository 的存取服务。
TaskService:在Activiti业务流程定义中每一个执行节点都被称作一个Task,流程运行过程中,与每个任务节点相关的接口,比如complete, delete,delegate等等都是TaskService提供的。
工作流操作手册

工作流操作手册目录工作流操作手册 ....................................................................................................................................... 1-1 1说明 .................................................................................................................................................................... 1-1 2创建工作流模板 ............................................................................................................................................ 2-12.1打开工作流设计器......................................................................................................................... 2-12.2新建节点模版 .................................................................................................................................. 2-12.3设置流程回退任务......................................................................................................................... 2-32.4设置任务属性 .................................................................................................................................. 2-12.4.1设置提醒.............................................................................................................................. 2-12.4.2设置签发.............................................................................................................................. 2-12.4.3设置发放.............................................................................................................................. 2-22.4.4设置模板可用.................................................................................................................... 2-22.4.5编辑工作流模板............................................................................................................... 2-2 3启动工作流...................................................................................................................................................... 3-13.1新建工作流 ....................................................................................................................................... 3-13.2执行工作流 ....................................................................................................................................... 3-13.2.1查看任务“目标”和“引用”.............................................................................................. 3-13.2.2执行工作任务.................................................................................................................... 3-1 4功能配置参考................................................................................................................................................. 4-14.1添加引用 ............................................................................................................................................ 4-14.2设置外出代理 .................................................................................................................................. 4-14.3设置工作流代理人......................................................................................................................... 4-14.4设置作废 ............................................................................................................................................ 4-24.5设置共享文件夹 ............................................................................................................................. 4-24.6设置文件关联 .................................................................................................................................. 4-44.7查询活动-非活动用户 .................................................................................................................. 4-34.7.1添加新查询......................................................................................................................... 4-34.7.2执行查询.............................................................................................................................. 4-21说明1.工作流是完成目标的一个或几个业务流程的自动化操作,工作流程由用户(不能是dba用户)发起,具体的工作流任务将指派给用户。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
各种工作流模式的实现作者:非也QQ:20674450Email:nychen2000@目录1.概述 (3)2.Fire Workflow流程元素介绍 (3)1)Activity和Task: (3)2)Synchronizer、StartNode、EndNode (4)3)Transition (4)3.设计约束 (4)1)约束1 (4)2)约束2 (4)3)约束3 (5)4)约束4 (5)5)关于设计约束的说明 (5)4.顺序、分支、汇聚 (6)1)顺序分支汇聚其实是统一的 (6)2)顺序业务流程举例 (8)3)并行业务流程举例 (8)4)分支选择业务流程举例 (9)5)汇聚业务流程举例 (10)5.子流程 (11)1)流程设计 (11)2)流程模拟 (12)3)关于“Multi-Merge”的探讨 (13)6.“自由流”(Jump) (14)1)流程设计 (14)2)流程模拟 (14)3)相关API (17)7.循环(Loop) (18)1)流程设计、模拟 (18)2)相关API (18)8.略过(Skip) (18)1)流程设计 (18)2)流程模拟 (19)9.会签 (20)10.委派 (21)11.任务完成期限 (21)1)流程设计、模拟 (21)2)相关API (22)12.监听工作流事件 (22)1)TaskInstance事件监听器 (22)2)ProcessInstance事件监听器 (23)13.表单绑定 (24)14.流程元素属性详细说明 (25)1)所有流程元素通用属性 (25)2)WorkflowProcess的属性 (25)3)StartNode、Synchronizer、EndNode属性 (25)4)Activity属性 (25)5)Transition的属性 (26)6)Subflow Task的属性 (26)7)Tool Task的属性 (26)8)Form Task的属性 (26)1.概述本文最初始的标题是“21种工作流模式的实现”,但是我觉得21种工作流模式总结的并不科学,“21中工作流模式”只看到了业务现象,没有反应出业务的本质。
例如:“并行模式(Parallel Split)”、“单选(Exclusive Choice)”、“多选(Multi Choice)”没有实质区别,都是从流程的分支中选择若干个执行。
具体选择哪几个是由“转移条件”决定的,如果转移条件计算结果为true则执行,否则不执行。
因此并行模式只是分支选择模式的一个特例,即所有的转移条件计算结果都是true。
再例如:21中工作流模式中的“同步(Synchronization)”、“简单汇聚(Simple Merge)”也没有实质区别,在Fire Workflow中这都是“同步器”节点统一处理。
我甚至认为21中工作流模式存在一些谬误,我简单阐述我的看法,欢迎探讨。
例如:21种工作流模式对“简单汇聚(Simple Merge)”的解释是“流程中的某个节点,使得两个或者多个流程分支汇聚在一起”,之所以将这种汇聚称为“简单汇聚”,是“假设多个流程分支不并行执行,因此汇聚点不需要进行复杂的同步操作”。
这种强行的“假设”看似简化了问题,实际上非常不合理。
这种假设要求汇聚点“预知”多个分支中只有一个分支被执行,这种预知是很难实现的;或者限制多个分支中只允许一个被执行,这种后继节点限制前驱节点的行为是很荒谬的。
因此,本文将工作流模式按照我自己的理解重新组织。
本文档的所有示例流程都在example_workflow_process.rar中。
2.Fire Workflow流程元素介绍在使用Fire Workflow设计业务流程之前,非常有必要介绍一下Fire Workflow的工作流元素。
Fire workflow的元素分成三类:1)Activity和Task,2)Synchronizer、StartNode、EndNode,3)Transition1)Activity和Task:Acitivty在中文里一般称为“活动”,但是在我的文档里习惯称之为“环节”。
Task是任务,代表具体的业务逻辑,如录入一张表单、调用一段java代码或者调用另外一个流程(子流程Task)。
一个环节中可以有多个任务。
例如某个入职流程中有一个体检环节,体检环节包含了“检查视力”、“检查肝功能”、“检查心血管功能”等等多个任务。
在Fire workflow 中,体检环节建模如下:2)Synchronizer、StartNode、EndNodeSynchronizer是同步器。
此处的“同步”是一个更加广义的概念,他代表工作流子系统的计算逻辑。
开始节点(StartNode)和结束节点(EndNode)是同步器的特例,开始节点是没有输入“边”的同步器,结束节点是没有输出“边”的同步器。
3)Transition转移(Transition)在Fire workflow并不仅仅是一条连接线,他代表控制权在工作流子系统和业务子系统之间交换。
3.设计约束在本人看来,可以将整个系统分成业务子系统和工作流子系统。
Activity和Task代表业务子系统的计算逻辑;Synchronizer、StartNode、EndNode代表工作流子系统的计算逻辑;Transition代表控制权在业务子系统和工作流子系统之间转移。
有如下流程设计约束。
1)约束1每个Activity的前驱节点、后继节点必须是同步器。
即控制权从工作流子系统获得,业务执行完毕后控制权必须交还给工作流子系统。
2)约束2每个Activity只允许有一个输入Transition,一个输出Transition。
为什么呢?如果某个Activity有多个输入Transition,则说明此Acitivty需要执行“汇聚”逻辑,然而“汇聚”并不是Activity的职责,而是同步器的职责;同理,如果某个Activity 有多个输出Transition,则说明该Activity需要执行“分支”逻辑,这也不是Activity的职责。
3)约束3每个同步器的前驱节点和后继节点都必须是Activity。
即从业务子系统获得控制权后,进行汇聚和分支计算,然后把控制权再交给业务子系统。
在Fire Workflow中,顺序流程中的同步器与复杂逻辑中的同步器的算法是一致的,如下图,S1是S2的特列。
4)约束4一个流程有且只有一个开始节点,至少有一个结束节点。
5)关于设计约束的说明Fire Workflow是以Petri Net作为理论基础的,因此上述设计约束首先是Petri Net的要求。
但是Fire Workflow也力求不生搬硬套Petri Net;我通过学习研究,发现用Petri Net可以非常恰当地描述“控制权”在“业务子系统”和“工作流子系统”之间相互转换这样一个业务模型。
可以用Petri Net中的token来刻画“控制权”这个概念,用T来刻画“业务子系统”这个概念,用P来刻画“工作流子系统”这个概念。
因此,上述设计约束可以精确、严密地描述业务流程。
4.顺序、分支、汇聚1)顺序分支汇聚其实是统一的首先,Fire Workflow认为,“分支”和“汇聚”都是一种计算逻辑,这种计算逻辑应该由“工作流子系统”负责完成。
Fire Workflow用“同步器”节点在模型中表示这种计算逻辑。
如下图,同步器“S”是一个一般意义上的同步器。
上图中“S”首先对t1、t2、t3执行汇聚操作。
在Fire Workflow中,不管t1、t2、t3中哪个或者哪几个流程分支被执行,S都能正确地进行汇聚。
S汇聚完成后,根据转移条件的计算结果,启动t_a,t_b,t_c中的一个或者几个分支。
为什么说顺序、分支、汇聚是统一的呢?A)在上图中,如果“S”的前驱和后继都是唯一的,则形成一个特例,即顺序流程。
如下图。
B)如果上图中“S”的前驱是唯一的,后继有多个,则形成了“21中工作流模式”中的“并行模式(Parallel Split)”、“单选(Exclusive Choice)”、“多选(Multi Choice)”。
如下图C)如果上图中“S”的前驱有多个,后继仅有一个分支,则形成“汇聚”,如下图。
不仅顺序、分支、汇聚是统一的,同步器、开始节点、结束节点也是统一的,即开始节点和结束节点是同步器的特例。
如果同步器的前驱为0,则形成开始节点,如果同步器的后继节点为0,则形成结束节点。
在Fire Workflow中分别用和表示这两个节点。
2)顺序业务流程举例顺序模式的实现以及模拟请参阅《2_通过设计器和模拟器快速了解Fire Workflow》流程定义文件是MyFirstProcess.xml3)并行业务流程举例并行业务流程其实是分支选择的一个特例,即所有的转移条件计算结果为true。
在Fire workflow中如果Transition的转移条件EL表达是为空,则默认其结果为true。
业务举例:某商场送货流程。
仓库备货完成后流程分拆为两个并行的分支,一个分支通知送货员送货;另一个线程启动短信发送程序,预约客户在家等候收货。
如下图:相关的流程定义文件见:And Split.xml。
流程模拟通过模拟器可以模拟该流程,如下图。
可以看到,在“仓库备货”环节完成后,两个分支执行线程并行执行。
4)分支选择业务流程举例以典型的请假流程为例,如果请假天数小于等于2天,项目经理审批即可,否则需要部门经理审批。
该流程图如下。
在本流程中定义了一个名称为days的流程变量。
流程定义文件是:choice.xml流程模拟:启动流程,在工具栏上点击,设置流程变量days的值为3,如下图签收并完成“填写请假条”任务后,系统启动了“部门经理审批”环节,而没有启动“项目经理审批”环节,如下图:读者可以重新模拟该流程,将days的值设置为1看看结果如何。
5)汇聚业务流程举例在上述“并行业务业务流程举例”中,结束节点实际上进行了汇聚。
我们从模拟器可以看到,当“仓库备货”环节完成后,“手机短信发送程序”被自动执行,此时结束节点的颜色变成黄色,表示正在等待另一个分支完成。
当送货分支完成后,结束节点变成蓝色,整个流程实例执行完毕。
5.子流程1)流程设计在Fire Workflow看来,子流程是父流程的一个任务。
可以通过创建一个附带子流程任务的环节,也可以在已经存在的环节中增加子流程任务。
在本文提供的子流程实例如下图,在父流程和子流程中都定义了一个流程变量xyz,在下一节流程模拟中可以看到,父流程的流程变量的值传递给了子流程。
父流程图子流程图流程定义文件是:parent.xml,child.xml2)流程模拟首先在父流程的模拟器界面启动父流程,并点击设置流程变量xyz的值为100,如下图签收并通过Activity1.Task1后,系统弹出选择文件的对话框,定位到child.xml流程定义文件,然后确定。