论文部分内容阅读
随着Web服务的流行和业务生成技术的发展,分布式网络亟需一套标准化的流程定义规范来支撑业务的集成开发。目前,已有学者提出了一些业务流程建模语言和标注,其中最有影响力的有BPEL和BPMN等,且都已得到部分建模工具的支持。BPEL是一种描述业务流程、计算机可执行的标准语言,它把若干个现有的服务按照一定的业务逻辑组合起来形成业务流程,然后部署到执行引擎中,由执行引擎对流程进行解析和编译,逐步调用外部服务,完成整个业务流程的功能。BPMN是一个图形化的业务流程建模工具,其主要目标是提供一套被不同阶段的业务使用者容易理解的符号,现已被OMG组织接受成为正式标准。业务流程建模过程中,会有不同的用户参与,包括业务分析者、业务开发者以及业务执行者与监管者。对于不同阶段的业务用户,在业务流程建模过程中对建模工具的需求是不同的。BPEL建模工具的功能通常很强大,配置起来比较复杂,需要使用者非常熟悉BPEL的语法,这类建模工具通常适用于软件开发者。而BPMN规范缺少对业务流程图存储结构的定义,流程元素语义不明,构造的模型往往不能直接用于计算机交换、仿真、执行,因此业务分析者通常使用BPMN模型实现逻辑需求分析。本文设计并实现了一种基于BPMN/BPEL的全过程建模工具,该工具旨在为业务分析者和业务开发者提供一个统一的建模环境,使不同的业务人员可以从BPMN和BPEL两个层次进行不同粒度的建模。同时,该工具通过静态分析检测,可以及时发现业务节点对数据的并行访问冲突,通过与冲突优化数据库中的方案进行匹配,找到合适的优化方案进行模型替换,以解决流程变化带来的访问冲突问题。本文首先阐述了全过程建模工具提出的背景和意义,并针对其所涉及的相关技术进行了研究,比较了BPEL和BPMN的异同点。接着从全过程建模工具的应用场景和整体目标出发,分析了系统的功能性需求和非功能性需求,并对需求中提出的两个关键问题:业务模型访问数据冲突和模型映射方案进行了深入的探讨,设计了相关算法。然后根据分析和研究的结论,对全过程建模工具的总体架构和模块间的交互接口进行了设计,并重点阐述系统核心模块的实现。最后对全过程建模工具进行了全面的部署和测试工作,通过对测试结果的分析和说明,验证了系统的正确性,并对后续工作提出改进建议。