论文部分内容阅读
随着SOA和业务流程管理BPM技术日益成熟,基于业务流程的开发得到越来越广泛的应用。BPMN是由国际标准组织BPMI所制定的业务流程描述语言,制定了标准化的图形符号用于流程的设计和交流。WS-BPEL是面向服务计算中服务复合层重要的技术规范,WS-BPEL支持通过组合分布异构的服务形成复杂的业务流程。BPMN和BPEL模型之间存在差异,跨越两者之间的鸿沟实现无缝转换足当前服务计算中的关键问题之一。现有的BPMN到BPEL转换方法对用户建模限制太大,并且转换后的BPEL不能直接部署和运行,自动化程度不高。现有BPEL到BPMN转换方法缺少对复杂BPEL结构的转换。
针对这些问题,论文设计了一套双向模型转换方法。首先分析了现有BPMN到BPEL的转换方法。然后根据分析结果对已有的BPMN到BPEL转换方法进行扩展,并着重解决了路由OR和并发多实例Multi-instance的语义分析和转换这一难点问题,减少了用户建模时的限制,转换得到的可直接执行的BPEL,提高了自动化程度。在此基础上,设计了BPEL到BPMN的转换方法,采取自上而下的扁平化策略来将嵌套块结构的BPEL控制流转换成为平整无层次的流程图结构,其中分析了Link设置不同条件时的语义并分别转换到对应的BPMN结构,解决了复杂BPEL结构的转换。
最后,作者在流程设计平台OnceBPD(Once Business Process Designer)实现了双向转换功能,能够将BPMN模型转换为BPEL模型,得到的BPEL文件可以部署和运行在OnceBPEL流程执行引擎。还可以将BPEL模型装换为BPMN模型,并应用于OnceBPEL引擎监控信息的可视化,实现了在OnceBPD中直观、形象的显示流程监控。