基于Web服务的企业集成平台框架研究Word格式.docx
《基于Web服务的企业集成平台框架研究Word格式.docx》由会员分享,可在线阅读,更多相关《基于Web服务的企业集成平台框架研究Word格式.docx(27页珍藏版)》请在冰豆网上搜索。
Web
services
MENGXiao-j“n1”,ZHANGXul。
NINGRu-.zinl。
SONGYul
(1.Schoolof
Mechanical&VehicleEngineering,BeijingInstituteofTechnology,Beijing100081,China;
2.DepartmentofScientificResearch,TaishanUniversity,Tai’an271021,China)Abstract:
Toachievethedynamicintegrationofinformation,processesandapplicationsystems,alogicalofenterpriseintegrationplatformwasconstructed。
whichwasbased
framework
user—process—applicationsarchitecture.Ap—
plieationsystemsandbusinessprocesseswereencapsulatedbytheneutralandstandardportofenterpriseapplicationsanddatabase.Discoveryandsharingofenterprise
withthesup—
resources
couldbeachievedbyusing
thepublishinganddiscoveringmechanismofservices.Serviceswithintheenterprisecouldbedynamicallyorchestra—ted
as
process
SO
thattheenterprisebusinessprocess
can
bedynamicallyconstructedandmonitoredaccording
to
the
environmentchanges.Thekernelofthedrivenby
a
platformWaStheorchestrationandmanagementofWebservices。
whichwas
processengine.Thisplatformwasexhibited
enterpriseportalsupportingsinglesign-on.An
enter—
prise-wideKanbantion.An
system
wasalsoincorporatedwithinthe
an
platform,covering
theenterpriseandworkshopinforma—
implementationschemaof
astronauticenterprisewasprovided.
Keywords:
integrationplatformframework;
service-oriented
architecture;
dynamicenterpriseintegration
0
引言
它的生产开发能力完全依赖这些应用系统的功能及
’
其集成程度,目前集成化已成为现代开发技术的主流‘11,企业集成为企业内应用系统及业务过程的协
企业的正常运转一般由大量的应用系统支撑,
收稿日期:
2007—06—04I修订日期:
2007-10—15。
Received
04
June2007;
accepted
15
Oct.2007.
Basic
基金项目:
国防基础科研资助项目(D0420060521).Foundationitem:
ProjectsupportedbytheNationalDefense
China(No.D0420060521).
ResearchFoundation,
.
作者简介:
孟晓军(1972一),男,山东泰安人,北京理工大学机械与车辆工程学院博士研究生。
泰山学院科研处讲师,主要从事PDM及企业应用集成的研究。
E—mail:
mxj931@163.com.
892
第14卷
调运转提供了技术支撑,是企业未来发展的重要趋势。
国内外对企业集成展开了大量的研究,美国早在1994年就建立了国家工业信息基础结构协
service)的观点[7],这种观点认为可以设计被其他业务或系统订阅并按需使用的服务。
SOA提供的标准和通用的服务可以实现业务过程的互操作,利用SOA中服务的发布与发现机制,可以很好地解决企业资源发现和共享问题。
服务的自治性和可动态组合性可以为企业应用集成的动态要求提供技术支持。
Gartner公司预计到2008年,SOA架构将成为占有绝对优势的企业集成的基础框架[8]。
1
议——NIIIP,该协议依赖对象管理组织(Object
ManagementGroup,OMG)的公共对象请求代理结
构(CommonObject
RequestBrokerArchitecture,
CORBA)对象中问件协}义、工作流管理联盟(work—
flow
ManagementCoalition,wfMC)的工作流规
Organizationfor
范、国际标准化组织(International
企业集成平台功能需求分析
企业的设计生产可以概括为五大业务工作流
Standardization,ISO)的产品模型数据交换标准
(STandardfortheExchangeofProductmodelda-
程,即产品设计、生产技术准备与过程控制、厂级生产管理、车问执行层管理与控制、生产质量管理与控制。
集成平台对外应提供统一的企业门户,对内应实现应用系统的集成和业务流程的管理与集成。
本文提出的集成平台结合企业实际需要,以某航天科工集团及其下属企业为具体实施单位。
该集成平台总体上包括应用系统集成、业务流程管理、企业门户建设及综合看板与决策分析四大业务功能,如图1
所示。
企业集成平台
ll
I-_
ta,STEP)以及Internet标准通讯协议建立虚拟企业的技术标准,通过建立虚拟企业来协调和分享设计与制造信息口1;
文献[3]基于智能Agent建立了一个用于企业集成的框架结构,该框架使得智能代理间可以通过消息总线直接交互,并且企业中的人可以通过个人助理(PersonalAssistants,PA)参与到多Agent组成的企业集成结构中去。
我国对企业集成也开展了研究工作,文献[4]通过封装、继承、多态等面向对象的思想,构建了计算机集成制造系统(Computer
Integrated
ManufacturingSystem,
CIMS)信息集成建模框架,该框架提供了基本的使用CIMS信息集成系统的设计与构造环境。
文献[5]提出了一个面向CIMS企业集成的应用集成平台系统(CIMS
formEnterprise—orientedIntegrationPlat—
l
I
I应用系统集成II业务流程管理lI企业门户建设||综合看板与决策分析I
lI
上上上上上上上上上上上上上上上上上上
声品设计系厂级生声管理系统集成生±
技束准备与过程奎问生
iE
执
行层管理与控制系统集成
System,CEIPS),该系统基于软件重用和软件
组件的思想,研究支持面向CIMS企业集成的软件支持系统。
以上这些研究项目大都注重于创建企业内及企业问协作环境,解决企业的信息集成和过程集成问题,而对企业的资源发现和服务共享问题则很少论及[6],对业务流程及时动态地响应市场变化也较少论及。
在目前国内企业的生产实践中,企业内部业务流程、业务数据和应用系统的集成与动态重组仍然是实现企业集成的难点和重点。
企业经营环境和业务过程的动态变化要求企业集成能快速、动态地重组各种业务流程和业务系统,不断地改进、更新、添加新的业务,以适应业务服务的变化,因此企业应用集成的动态性要求很高。
基于Web服务的面向服务的体系架构(Serv—
ice-Oriented
统集成
控
制系统集成
质量管理与控制系统集
业务流程模板定义
业务数据提取转换
业务流
用户
用户与应用统
统
的知
——
企
奎问级看板系
直
接成本统计分析系统
业
级看板系统
程执行过程监控
与权
限管理
识
库
的应用接
口
资身
份认证源
工艺管理决策分
任务综
质
量统计分析
A能力分析系统
规范
析
系统
成
-_—_
●_一
__一
_一
图l企业集成平台功能结构图
企业集成平台应集成上述业务流程所涉及到的应用系统,并提供业务流程的定制和监控等功能。
集成平台建立了企业级和车间级两个层次的综合看板,企业或车间级管理人员通过综合看板获取生产进度、成本核算及质量统计等相关信息和数据,为企业或车问的决策分析提供支持。
企业用户通过平台门户实现单一用户登陆和身份验证,根据工作性质获取访问不同应用系统的权限,根据预先定义的业务流程逻辑获取相应的任务,根据业务需要调用相
Architecture,SOA)可以将企业内部
的应用系统、业务功能、业务数据封装为服务,这种架构思想起源于“把软件作为服务”(software
asa
谊商网
第5期
孟晓军等:
基于网络服务的企业集成平台框架研究
893
应的应用系统,整个集成平台体现为“用户一流程一应用系统”的逻辑架构。
想,把业务流程封装成服务,采用基于XML的Web服务描述语言(Web
ServicesDescriptionLan-
2基于服务的企业集成逻辑框架
针对企业资源的发现和共享问题,本文提出了基于服务的企业集成模型,利用基于可扩展标记语言(eXtensibleMarkupLanguage,XML)格式的中间文件,实现服务间的数据传递与转换,为过程集成奠定数据共享的基础。
通过服务封装构建集成平台逻辑框架,企业用户通过集成平台定制或者进入业务流程,调用相应的应用系统,在规范业务流程的同时,最终实现企业的过程集成和应用集成。
2.1
guage,WSDL)来描述接口。
业务流程服务在统一描述、发现和集成(Universal
eryand
Description,Discov-
Integration,UDDI)服务库中注册发布,并
说明业务流程服务所实现的功能、所属的服务类别及需要查找的UDDI地址,以及多个查找结果的选择策略等内容,为其他业务流程提供标准的服务,利用服务的发布与发现机制解决企业资源发现问题。
以五大业务流程为例,基于服务的企业集成模型如图2所示。
业务流程被封装成标准的服务,业务流程服务在相互发现和共享的基础上进行编制和组合,从而实现业务流程间的相互调用。
事实上,五大业务流程服务也是由子业务流程组合而成。
基于服务的企业集成实现模型企业是一个复杂的系统,用过程的观点来看待
企业,它的组成元素就是经营过程[9]。
根据SOA思
早1.用户登录
6.其他业务流程
访问服务
程设技控生执制质:
计术制产行量准管层管备理管理业①②与③④理⑤与务产生过厂车与生控流品产程级问控产制
雉
Data
集成平台的服务注册与管理
备理
程殴技控生执控质:
计术制产行制量准管层管理业①②与③④管⑤与务产生过厂车理生控流=甚产程级问与产制
图2基于服务的企业集成实现模型
在当前的商业环境下,企业的重要数据存储在异构的系统中,包括产品数据管理(Product
基于XML的中间格式文件同时满足了服务间实时通讯和异步数据传递和转换,二者互相补充以实现业务流程间的信息与数据交互。
例如用户单点登录时的信息传递被设计成同步的,而业务流程间的数据传递因为后续业务流程要对传递的数据进行处理和操作,需要耗费较长的时间来对这些请求做出响应,所以一般设计成异步数据传递。
服务问的通讯及数据传递如图3所示,服务间及与数据库间的交互是通过集成服务层的服务总线来实现的,为简便起见,图3没有画出服务总线。
2.2企业集成逻辑框架企业集成平台不但要实现企业业务流程的服务封装和组合,而且要通过集成服务层的企业服务总线实现企业公共的服务,其他业务服务建立在公共服务的基础上,服务之间的发现和调用,以及服务之间的通讯或数据传递完全依赖企业服务总线提供交互通道,即服务的提供者和使用者通过企业服务总线实现企业业务服务的集成。
Management,PDM)系统、客户关系管理系统、企业资源计划(Enterprise
Resource
Planning,ERP)系
统、Web服务器及其他系统等。
企业集成的一个核心功能是可靠地把信息源从应用系统传递到需要该信息的其他系统,这些数据的传递和转换依赖于业务流程的正确运转。
不同的业务流程可能涉及到独立开发的不同系统,互相不能理解对方的语法或语义。
所以,有必要在传输者和接收者问进行数据格式的转换。
通常采用的方法是在需要集成的两个系统间开发适配器,本文前面简要指出了这种点对点开发的缺点,而且适配器的开发耗资大,文献E103和文献[11]通过大量的调研指出,适配器的开发费用大约占整个集成项目费用的1/2。
由于构成当代SOA的一切基础就是通过XML进行数据表示[1引,本文采用基于XML的中间格式文件进行业务流程服务间的数据传递和转换。
894
业务流程的一个活动节点,用户为完成工作而调用
1.发送请求
2.按标准生成舭文
件,提供标准服务服务A3.向服务A传送XML文件4.服务A接收XML文件并解析服务B
相应的应用系统。
用户完成工作并提交后,该项业务活动结束,业务流程按照定义自动流转到下一个活动节点。
3企业动态集成实现技术
企业经营活动的动态性和企业内外环境的变
数据库A
l数据库B
化,要求企业集成能动态响应业务活动的变化。
灵活、动态地实现业务流程的集成体现了企业集成平台的柔性。
3.1
图3服务间基于XML文件的数据传递
基于服务的企业集成逻辑框架如图4所示。
企业通过集成平台的企业服务层对外发布企业级业务信息,集成平台内部实现企业业务流程及应用系统的服务封装与服务组合,依赖集成服务总线完成服务间的交互,按照业务需要调用或组合封装成标准服务的应用系统或业务流程逻辑,底层基础资源数据库为整个集成平台提供基础数据支持。
子业务流程服务通过服务的动态组合形成业务流程服务,而业务流程服务又可以进一步组合成企业级服务,通过在广域网上注册与发布,便于其他企业发现,为企业间的集成奠定技术基础。
服务组合实现企业动态集成企业业务流程可由不同的子业务流程组合而
成,子业务流程又可由更细粒度的子业务流程或不可再分割的原子业务流程组合而成。
例如,生产技术准备流程可分解为创建工艺技术准备任务、建立工艺物料清单(Bill
of
Materials,BOM)、工艺任务
分配、车间工艺设计等多个子业务流程。
因此企业的业务活动是由不同层次、不同粒度的流程组合而成。
利用SOA中服务的可组合性,通过服务的发布和发现机制,封装成标准服务的业务流程可以发
I皇l
浏览器
‘
现并调用其他业务流程服务。
标准服务具有WS-
表示层
DL描述的服务契约(服务契约是实现互操作与集成的手段),通过服务契约,交互双方能够理解同一服务定义,包括服务名称、消息、数据类型及相关的策略等信息,所以业务流程服务可以方便地组合形成组合服务。
组合业务流程服务如图5所示[121。
Q竺9∈竺多…∈9延梦殛至多…《多
王?
⑩⑩⑨
00
善l
业务1
企qk服务层
服务层
善I业务2I…I0—K
集成服务总线
业务一
l0
业务层
I应用系统lI。
N
l应用系统2l…I应川系统一l
集成服务层
y
数据库
日
资源库
知识库
标准库
数据层
图5业务流程组合
图4基于服务的企业集成逻辑框架
由原子业务流程或子业务流程组合而成的业务流程由业务流程执行语言(Web
ProcessExecutionServicesBusiness
整个集成平台体现为“用户一流程一应用系统”的逻辑框架。
企业内用户登录集成平台,根据其角色的不同获取不同的权限,自动进入自己的工作页面,接收自己的工作任务,而每个用户的任务是整个
Language,w孓BPEL)进行定义
和创建。
WS-BPEL是一种面向流程(process—ori—
895
ented)、依赖于WSDL的服务合成语言。
已定义的原子业务流程服务或子业务流程服务在WS-BPEL中定义为合作伙伴链接(partnerLink)、利用接收(receive)、调用(invoke)等基本活动,以及顺序(se-quence)、开关(switch)等结构化活动实现对已定义业务流程服务的编制(orchestration)和组合。
3.2灵活的企业动态集成技术在具体的实现上,业务流程的动态组合首先对业务流程进行分类,以规范业务流程,然后采用分层的方法,在业务流程服务层之上再设计一流程控制层,由流程控制层对核心业务流程逻辑进行调用,从而实现灵活、柔性地集成。
企业有些业务活动在整个企业内具有通用性(如基本数据访问业务),有些业务活动可能是某些业务过程内通用的(如生产技术准备流程),只有极少数流程是专用的,可以根据其通用程度分为全局通用流程逻辑、业务内通用流程逻辑和专用流程逻辑,并分别封装为全局通用流程服务、业务内通用流程服务和专用流程服务。
对业务流程的分类不但可以减少业务流程的数量和业务流程的冗余,更重要的是可以通过对相似或相近业务流程的整合起到规范业务流程的作用。
上述三类流程服务形成能完成一定业务活动、具有自治性的业务流程服务,这些服务可以被其他业务流程服务发现并调用,由这些核心业务流程服务组成企业的流程服务层;
而流程服务控制层负责根据业务的需要调用相应的业务流程逻辑,起到对已有业务流程服务进行调用和组合的作用,如图6所示。
用Web服务编制及WS-BPEL技术进行动态服务组合,服务编制专门用来实现企业业务流程的Web服务组合,相当于在企业业务流程服务层之上添加了一个控制层,而且基于WS-BPEL流程定义的运行时引擎,服务的组合可以采用运行时绑定的方式,即将具体的绑定延迟到组合服务执行时动态完成,由此把子业务流程动态组合成父业务流程,实现业务流程柔性、灵活、动态地组合,最终实现企业的动态集成。
以生产技术准备流程为例,该业务流程服务
(Process
Prepare)由创建工艺技术准备任务服务
(ProcessTask)、建立工艺BOM服务(CreateP-BOM)、工艺任务分配服务(ProcessAssignment)及车间工艺设计服务(ProcessPlanning)等业务流程服务组合而成。
图7描述了采用Web服务编制实现生产技术准备流程。
总工艺师通过集成平台用户界面启动生产技术准备流程,或由其他标准Web服务调用该流程服务。
生产技术准备流程服务通过对各子业务流程服务的调用来完成编制中的各个步骤,通过条件判断,实现子业务流程服务的动态组合,并把不同的任务自动提交给承担该任务的相应角色。
其WS-BPEL部分代码如图8所示,该段代码展示了业务流程调用顺序、审核工艺任务单是否符合要求的判断逻辑,以及通过工艺任务单ID号在业务流程间传递工艺任务单等逻辑。
通过对业务流程的调用组合形成生产技术准备流程。
4集成平台结构框架实例
某航天科工集团及其下属企业分别构建了基于Windchill和Teamcenter的两级PDM系统,对企业的产品及相关文档进行全生命周期的管理;
ERP采用BAAN来管理企业的各种资源,属于企业的计划层;
而企业计划层与车间现场控制之间的执行层
流程服务控制层
是企业基于Java2平台企业版(Java
Enterprise
2Platform
Edition,J2EE)架构自主开发的制造执
E