以数据为中心的业务流程管理思想是目前BPM发展的新阶段,该思想兼顾业务流程中的业务数据与活动,优于传统的工作流管理思想,易于结合SOA进行系统实现。在业务流程中对业务操作起关键作用的客观存在的数据实体称为artifact。它记录了整个业务流程执行过程中的操作数据并且标志着流程的进度与状态。文献在有关artifact基本概念和优越性、使用artifact进行流程建模、基于artifact的流程系统的分析等方面做了大量讨论。文献提出了ArtiFlow的概念。ArtiFlow是一种以数据为中心的业务流程逻辑模型,用artifact类型、服务、库与传输管道元素来描述实际的业务流程。SerFlow与ArtiFlow相对应,是一种业务流程逻辑模型,其特点在于将Artiflow中的库转化为了一类特殊的服务,使逻辑模型更易转换为物理模型。
Web服务作为SOA架构中的成熟技术,借助于Internet实现了分布式跨系统的应用集成与整合。BPEL作为目前流行的web服务组合技术,应用于Web服务编排与服务重建,在企业业务流程重组方面得到了广泛应用。
以数据为中心的业务流程管理特点在于artifact是一个具有完整生命周期的动态实体,其中的信息模型记录了在业务流程过程中的核心业务信息,对于这类信息的管理是以数据为中心的业务流程管理系统相对于其他流程管理系统的优势。
1 体系结构
A-Stein是以数据为中心的业务流程管理系统的原型系统。图1给出了A-Stein的体系结构。
图1 A-Stein的体系结构图
1.1 ArtiFlow管理器
ArtiFlow模型管理器的功能包括模型设计、检查与优化。
模型设计部分提供绘图平台。通过对ArtiFlow模型及其中基本元素进行规范化描述,用户只需通过简单的图形即可描述实际生活中的业务流程,再由系统将图形描述转换为xml格式描述的ArtiFlow模型。
模型检查包括以下几个方面:1)服务输入/输出检查;2)服务运行方式检查;3)服务操作检查;4)模型完整性检查;5)死锁风险检测;6)服务输入传输管道检查;7)服务输出传输管道检查;8)服务循环检查。
模型优化功能,根据服务事件链的优化分析方法,从模型应对未来流程需求变化的角度,给出模型优化建议。
1.2 Serflow转换器
Serflow转换器的输入是Artiflow描述文档。其主要功能是通过分析文档,将其中的库元素转换成一种特殊类型的库服务,并对流程中的这一类库服务进行优化检查,生成xml格式的Serflow模型描述文档。Serflow模型继承了Artiflow模型中描述的所有流程信息,且其中的基本元素只有服务,因此该模型更易于进行实际Web服务的选择和组合。
1.3 服务信息检索器和服务选择器
服务信息检索器的功能是随时搜索网络上各类Web服务发布的信息,并将其整理归类作为Web服务元数据存储于本地的数据库,称为服务元数据库。该数据库用于系统中的服务选择。
服务选择器的功能是分析Serflow转换器中输出的xml格式的Serflow描述文档,找出业务流程所需的各个服务的基本要求,按照这些需求到服务元数据库中进行匹配,寻找能完成业务流程各部分功能的Web服务。
1.4 流程生成器
流程生成器以服务选择器的输出为输入,其功能是将Serflow模型按照Web服务映射结果自动地转化为BPEL可以识别的执行文档。这些文档包括流程部署文档和一个wsdl文档。该模块使流程能自动利用BPEL调用Web服务。
1.5 流程执行器
系统中的流程执行器直接引用外部资源BPEL引擎,用于设计调度各Web服务以完成整个业务流程要达到的功能。在流程执行过程中,系统插在各个Web服务之间的截快照服务实时的返回流程数据,这些数据存储于本地的流程记录数据库。
1.6 流程监控器
流程监控器提供对系统中正在运行或已经结束的流程实例的监控和查看功能,监控的对象可以按流程实例进行分类,可以具体到流程中的具体artifact实例。可以随时向用户提供流程的实施执行状态报告,分析流程的实际运行情况是否正确。
2.关键技术
2.1 关键artifact生命周期可达性验证
关键artifact记录着业务流程中的核心业务数据,标志流程的各个阶段。因此,需对于已设计好的artiFlow模型进行关键artifact生命周期可达性验证。
Petri网是一种研究系统动态运行中并发、异步和状态变化的数学工具。A-stein应用Petri实现对关键artifact生命周期可达性的验证。其具体原理为,对于给定的关键artifact类型,根据模型中服务对artifact属性操作情况,将属性进行分组。将模型中的服务转换为Petri网中的变迁。artifact的每一个属性分组就转换为Petri网中的状态。将转换后的变迁与库元素连接起来,进一步实现Petri网的自动化转换,然后采用Petri网的可达图算法获得关键artifact在该ArtiFlow模型所描述的业务流程经过的服务路径。通过获取关键artifact的服务路径后系统将ArtiFlow模型转换为有向图,来验证关键artifact生命周期在ArtiFlow模型中的可达性。
2.2 ArtiFiow模型到SerFlow模型的自动转换
对应于实际的业务流程,模型中的一些库是不需要的,信息可以由一个服务直接传给下一个服务继续处理。为了降低ArtiFlow模型实施的复杂度和代价,A-stein通过分析ArtiFlow模型中的核心artifacts,提出了一种以artifact为中心的数据分析方法得到复杂业务活动序列,并提出活动树的概念及相应算法在Serflow模型中新增一类特殊的服务元素取代Artiflow模型中原有的库元素,用于完成artifact的取存操作。同时,根据ArtiFlow模型中服务间可能存在的事件触发关系,对这类服务元素进行合并,以减少模型实施过程中服务元素的数量,达到优化目的。
2.3 SerFlow到BPEL的自动化转换
系统在底层实现上采用BPEL。要实现SerFlow模型到BPEL流程的自动实现,必须要把SerFlow转换成BPEL流程运行需要3个基础文件所需的3个文件。
根据SerFlow模型描述的artifact的服务路径信息和通过服务选择模块匹配的Web服务信息,A-stein能够通过底层编程自动生成BPEL代码,构建BPEL流程文件,并将其部署到BPEL流程引擎中,实现BPEL流程的执行。
2.4 基于FSA的监控手段
完成业务流程的全部功能需要多个Web服务的协同工作,然而他们之间的协作并不总是完全按照模型的设计正确进行。例如通信原因、Web服务的更新等等,都会使基于Web服务组合而成的业务流程系统变得不稳定。因此对流程的实时监控是非常必要的。本系统定制了一个特殊的Web服务,插在其他Web服务之间,其功能是截取artifact实例在实际运行中的阶段性数据,获取流程执行轨迹。同时根据serflow中的流程数据,设计了专门的有限状态自动机来描述流程中的约束条件,通过判断实际运行中的Web服务序列是否满足该有限状态自动机,来判断Web服务的调用是否正确。
3 环境介绍及系统演示
3.1 环境配置
实验平台:IBM PC;
CPU:Pentium IV 2.4 GHz;
内存:512MB;
操作系统:Microsoft Windows XP;
DBMS:Microsoft SQL Server 2000;
编程语言:Java 6.0;
编程环境:JDKl.6,Tomcat6.0,Eclipse 3.4。
3.2 系统演示
Artiflow模型管理部分是该系统的最基础模块。如图2所示为用户提供了一个绘图界面,简单地拖拽各基本元素图形就可以画出流程图,对各基本元素都有相应的属性定义选项卡。同时,管理器中的检查功能能够从多个角度及时的检查不全面的属性定义或不合逻辑的流程图规划。
图2 模型设计中服务属性的定义界面
模型导人导出模块为系统中的模型数据提供了基础管理功能,该模块将用图形描述的业务流程存储为xml格式的文档,提供模型导入、导出等功能。该模块用户界面如图3,中间窗口是对数据库中所有模型基本信息的目录,可选择性的导人或导出。前面窗口是本地文件树,提供选择导人导出的具体位置。图4展示了一个实际的业务流程图与其导出后的xml文档。图5给出了图4业务流程的优化方案。
图3 模型的导入导出界面
图4 图形化模型与导出后的文档
Serflow转换器、服务选择器、流程生成器等的运行都在系统的内部完成,为了展示中间运行结果,本系统设计了Serflow转换结果展示界面和服务择结果展示界面,图6上部分是某流程Artiflow模型转换为Serflow模型后的简单示意图,下半部分是在转换过程中从Artiflow中抽取出的必要流程信息。图7是将Serflow中的服务与数据库中的Web服务相匹配后得到的映射表。
图5 优化方案界面
图6 Serflow转换结果展示
图7服务映射表
流程检测界面如图8所示,对检测结果的查询可分为两组条件进行:1)按时间范嗣查询某流程中的具体流程实例信息;2)按时间范围查询artifact实例的信息,这一查询将流程中的各个artifact抽取出来,用以具体监控其生命周期的运行状态。结果按照快照时间分组给出,方便了解每一阶段流程的运行情况。
图8 流程检测界面
4 结论
本文介绍了一种以数据为中心的业务流程管理系统的原型系统,A-Stein,阐述了系统的体系结构、各模块功能、关键技术以及主要操作。该原型系统提出并初步完成了从流程设计、优化到Web服务的组合并最终执行和监控流程的完整的系统解决方案。现已在若干实例中得到验证。在接下来的工作中,我们将深入的研究更多类型的实际业务流程的特点,以完善系统功能,扩大系统应用范围。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/