张迎春
[摘 要]BPM是企业级的协调的商务流程活动,而SOA可支持企业创建更灵活的信息基础架构。SOA使用户轻松地将商务流程连接到基础系统,从而节省时间和IT资源。将BPM向SOA迁移,可最大程度地降低企业商务流程本身的复杂性,提升企业信息的集成化水平。
[关键词]SOA;BPM;信息集成;商务流程
[中图分类号]F270.7
[文献标识码]A
[文章编号]1673-0194(2009)05-0069-02
1 SOA的思想根源
传统信息运作方式虽然大大推进了企业生产力,但又反作用于信息技术,促使企业内外部商务信息的大规模集成。从面向过程到面向服务的4个关键阶段可以看出,程序语言发展的过程实质为逐步降低耦合性的过程,也是接口与接口实现逐渐分离的过程(见表1)。
在Web Service的基础上发展起来的面向服务架构(Service-Oriented Architecture,SOA)的思想将企业应用看作一些可跨越企业边界、自我描述、实现某一特殊功能的服务集合。通过标准化的机制,能够将这些服务注册于公共数据库中,并能被感兴趣的请求者发现;服务者和请求者之间能够进行动态绑定和直接交互,实现一定的企业功能逻辑(SOA模型如图1所示)。而作为SOA的一种实现手段,Web服务以其完好的封装性、松散的耦合性、协议规范的标准性以及高度的可集成性等特点,能够良好地满足SOA应用模式的需求。
2 从BPM到SOA的跃迁
商务流程管理(Business Process Management,BPM)在SOA之前出现并已成功实施。早期企业通常会建立各业务部门相对独立且相互之间缺乏协同的流程系统。随着部门分工理论的没落,各方面的困难使BPM产品一度丧失了竞争优势。而如今,缺乏灵活性、高昂的变革成本、以IT为中心的传统应用等因素又促使BPM市场急剧增长。同时,IDC提出流程企业应进化到2.0阶段,使用SOA的思想方法和技术架构组装企业的BPM,而BPM的重新崛起在很大程度上又推动着SOA的发展。
在商务流程自动化(BPA)、异构系统的无缝整合(EAI)、企业流程建模分析(BPM的核心)和监控企业活动以实现流程持续改进(BAM)等每个BPM的应用场合中,SOA都扮演着至关重要的角色。要从BPM迁移到SOA,跨越信息技术与业务之间的鸿沟,需引入一个服务层,该层包含支持特定业务域的服务线、可跨多个业务域共享的可复用技术服务以及Web Services平台,允许以各种独立于底层服务和技术平台的方式定义和利用服务。从技术层面看,SOA和BPM结合的方法主要有以下两种:
(1)BPEL+WSDL。先定义好一个BPEL流程,然后将其纳入到SCA容器。在定义构件时,可使用子元素的process属性指明这个可执行的BPEL流程的目标名称。
(2)BPEL应用SCA的某个构件。例如,一个BPEL的变量声明可以包含一个SCA的扩展,表明这个变量代表了一个SCA构件的属性。
3 基于SOA的商务系统信息集成应用建模
某国内知名IT企业ABC公司内部先后实施了由不同厂家提供或自主开发的办公自动化、企业资源计划、决策支持、电子分销、供应链管理等相对独立的商务子系统。随着业务的不断进展,以及与其他企业的海量信息流通,需要部署一个基于SOA的商务系统门户集成方案。
考虑到业务需求,通过集成中间件平台对各商务系统的流程与ERP核心子系统进行实时无缝的链接,使企业内部整体的商务流程更加完整和流畅。此外,通过集成中间件平台集成ABC公司与其供应商Z公司之间的异构ERP系统,使整个供应链的商务流程更加完整和流畅。
集成后的SOA架构应用模式为:OA系统首先根据内部登录人员的配置信息确定用户身份并给予相应权限,根据此权限范围内的工作流程和列表提供流程表单。用户需在表单上填写与流程控制、ERP系统相关的参数及其他字段信息。工作流引擎根据流程定义文档控制流程执行,当流程流转到某个需要调用Web Ser瞯ice的活动时,发送SOAP请求信息给服务提供者。Web Service利用数据访问逻辑组件操作数据库表。以采购申请为例(图2为采购流程定义),用户调用ERP的采购管理Web Service的“采购信息保存”方法,将采购的物料编号、采购数量、价格范围、供应商等信息存储到ERP的数据库。服务提供者实现服务之后,将包括单据编号和状态等信息的SOAP返回信息传回OA系统。工作流引擎根据WSDL文档解析该SOAP返回信息,将它自动存入流程表单并将表单传送给服务器,然后根据工作流控制数据和组织/角色模型将流程表单传递给下一个执行者,并同时发送E-mail通知。
4 结 语
基于SOA架构的BPM可使企业机构快速部署和改变流程,有助于满足跨越系统、地域和组织界限的端到端商务流程需求,使企业具备敏捷的商务竞争优势。下一步面临的问题是:如何持续改进BPM流程,识别出最有价值的商务流程模型去实施企业级SOA;在此基础上,如何逐步积累经验,更深入广泛地推广BPM应用。实践表明,在影响项目成功实施的各种因素中,除了在战术层面需要能正确实施BPM和SOA的混合分步部署的系统架构师以外,管理理念与组织协调等人为方面的难题远大于技术难题。因此,要成功部署SOA,企业不能仅关注技术,更应把持续改进流程作为先进的管理理念和必不可少的长期商务战略。
主要参考文献
[1]罗鸿,王忠民.ERP原理、设计、实施[M].北京:电子工业出版社,2003:45-60.
[2]刘艳,吴健.基于SOA的OA与ERP的整合应用[J].计算机应用,2008,28(3):816-818.