WS-BPEL(WebServicesBusinessProcessExecutionLan-guage,服务业务流程执行语占)是为组合Web服务而定制的一项规范,它能够描述由Web服务参与的复杂业务流程,同时又能将Web服务组合而进一步包装成更为高级别的Web服务并发布出去。WS-BPEL定义了用来描述基于流程及其相关方之间互操作的qp务流程行为的模型和语法。WS-BPEL流程定义了这些相关方之间的多重服务互操作是怎样被协调起来达成业务目标的,以及这种协调所需的状态和逻辑。
2.4任务管理系统体系结构
为了实现模具产品异地设汁的高效协同上作,本系统采用业务流程管理技术作为技术支持,使用SOA思想对系统功能模块进行封装,构建了-个模具设计任务自动化管理环境。系统分为3层。
2.4.1用户层
用广I层位于客户端,提供任务分配工具和模具设计工具。任务分配工具是一个在JAVA平台上使用JGraph组件开发出的可视化的业务流程模型设计器,项目管理人员可采用此工具进行任务分配,业务流程模利设计器将任务分配的结果映射为WSBPEL语言存储在XML文件中,同时将该XML文件存入业务流程执行引擎所指定的目录,业务流程执行引擎读取此文件后自动运行业务流。模具设计丁具包括常用的CAD设计软件,如UG等,本系统在。NET平台上,使用WMI(windowsManagementInstrumentation)组件开发出远程控制的功能,该功能被封装在服务器端的“任务启动服务”中,该服务能在指定的时间启动指定设计人员机器上的设计软件(如UG)。
2.4.2服务层
服务层位于服务器端,是系统的核心层。系统以Web服务的形式封装了任务管理系统的核心功能,其中包括文件传输服务、用户管理服务、任务列表服务、任务启动服务和消息服务。其中,文件传输服务提供文件的上传和下载功能;用户管理服务提供用户权限管理功能;任务列表服务提供设计人员任务列表管理功能,如一个任务(非原子任务)可能由多个设计人员完成,同时一个设计人员也可能负责多个任务;任务启动服务提供启动设计任务的功能(如前所述的“在指定的时间启动指定设计人员机器上的设计软件”);消息服务提供消息传递的功能。
2.4.3服务支持层
服务支持层也位于服务器端,该层的主要职责是为上层的服务层提供技术支持,其中包括数据库、业务流程执行引擎、FTP服务器、消息队列。如用户管理服务和任务列表服务需要数据库支持、文件传输服务需要FTP服务器的支持等。在此层中,业务流程执行引擎是任务管理系统的核心部分,它负责运行从用户层中传来的WS-BPEL描述文件(即模具设计流程),以自动执行业务流程。系统中采用开源的ActiveBPELEngine作为业务流程执行引擎。
3应用实例
作者在JAVA平台上开发出了一个模具协同设计任务管理系统,该系统现在还处于原型系统阶段。下面还是以级进模设计为例,来说明该系统的运行过程。
图形化的业务流程设计器界面,如图5所示。项目管理人员通过浏览器登录后即可访问此界面。
每-个节点都代表着一个设计子任务。子任务中包含有设计人员、设计任务外始时间、设计工时、CAD模型文件名、模具设计应用程序、消息文本等信息。当项目管理人员将模具设计任务流程设计完成之后,便将其结果传入业务流程执行引擎,业务流程执行引擎即会自动执行此业务流程。同时,设计好的业务流程也可当作模板存入服务器,以便于日后重用。
当设计人员登录后,设计人员可通过调用“任务列表服务”查看自己所承担的所有设计任务,任务列表中同样显示了设计任务的开始时间、合计工时、CAD文件名等信息。当时问将要达到某项任务的开始时间时,系统会调用“消息服务”弹出提示信息来提示设计人员;当达到任务开始时间时,系统会调用“任务启动服务”和“文件传输服务”,将用户的设计工具在指定的时间自动启动,同时,下载并打开CAD模型。当设计人员的设计工作完成后,可调用“文件传输服务”将设计结果上传到服务器中。
4结论
根据模具协同设计的特点,提出了基于活动树的模具协同设计任务分解模型,该模型能够有效地保证协同设计过程中的信息同步。在此模型的基础上,将业务流程管理技术与基于SOA思想的Web服务技术相结合,开发出了一个模具协同设计任务管理系统的原型系统。该系统提供了可视化的业务流程设计界面,可以帮助项目管理人员做出科学合理的任务分配计划,并使得任务分配信息能在不同设计人员之间自动传递。该系统可大大提高模具设计管理的自动化程度,具有良好的应用前景。