使用SOA范式集成ERP系统
立即解锁
发布时间: 2025-08-22 02:10:19 阅读量: 2 订阅数: 6 


网络社会的新方法与实践:信息系统开发进展
### 使用SOA范式集成ERP系统
#### 1. 引言
随着业务的发展,应用程序必须不断演进以提供支持,这就需要易于构建的企业资源规划(ERP)系统和其他为非核心流程及不同用户提供支持的应用程序。业务流程的灵活变更对于实现这种演进至关重要,而这又依赖于现有应用程序的灵活集成。
面向服务的架构(SOA)和复合应用平台为这一问题提供了解决方案。它们允许与业务逻辑组件进行交互,并且可以部署在各种用户定义的环境中,通过组装策略实现更快的部署。然而,ERP系统通常不采用SOA环境,部分原因是需要传输大量数据,但主要是因为ERP所有者公司倾向于提供自己的解决方案和模块来进行集成。例如,SAP可能需要定制代码,其实现时间可能高达总时间的60%,而客户平均仅使用所购买标准SAP代码的50%。
本文提出利用SOA范式将现有ERP与复合应用平台(CAP)集成。通过这种方式,新应用程序可以快速开发和更改,并轻松与现有ERP集成,从而降低ERP集成和扩展的总体成本和项目风险。我们使用SAP R/3为OutSystems HubEdition(一种CAP)实现了这一方案,开发的连接器使ERP和CAP能够轻松集成,使OutSystems HubEdition的面向服务架构能够访问SAP。此外,我们通过一个实际案例研究(采购申请管理应用程序)对实现进行了评估,得出ERP可以在SOA范式中有效使用的结论。
#### 2. 面向服务的架构(SOA)
为了解决互操作性问题,人们开始努力创建标准,使不同系统能够以一种通用的方式进行通信,而不依赖于任何专有技术。如今,Web服务是执行此任务最常用的标准。
OASIS(结构化信息标准促进组织)提出了SOA参考模型,并将这种架构定义为一组提供服务的组件系统,这些服务可以由其他组件根据服务合同进行调用。根据OASIS的定义,面向服务的架构(SOA)是一种组织和使用分布式功能的范式,这些功能可能由不同的所有权域控制。在分布式计算领域,一个计算机代理的需求可以由另一个所有者的计算机代理来满足。
##### 2.1 面向服务的应用开发(SODA)
Gartner一直在定义一种能够克服使用SOA创建、更改和操作企业应用程序障碍的方法,称为SODA。SODA是向SOA过渡的关键活动,该方法包括以下七个主要方面:
1. **设计**:确定如何满足需求,即定义应用程序架构。SOA依赖于松耦合和粗粒度的组件、多渠道服务访问、面向流程的设计元素和早期集成。
2. **建模**:使用某种建模语言定义应用程序的结构,包括业务建模、应用程序建模和技术建模三个不同阶段。
3. **制造**:创建应用程序的核心服务组件和必要的集成,即编写代码。
4. **组装**:聚合服务组件,连接其输入和输出,并定义必要的转换。这可以通过可视化编辑器完成。
5. **编排**:定义服务之间的流程以及信息和逻辑在给定流程中的流动方式。这可以通过简单的工作流管理器完成。
6. **自动化**:通过自动生成代码将模型映射到可执行组件(如.NET或企业JavaBean(EJB)),隐藏复杂性并消除编写代码的需要,使技术不太熟练的开发人员能够快速工作。
7. **可变性和快速变更维护**:允许对组件进行更改而不破坏系统的其他部分。应鼓励服务的可变性,进行持续的小更改,而不是偶尔进行大更改。系统的可变性可能与其自动化程度成反比。
Web服务和面向服务的架构的出现推动了一种新的开发风格和工具的形式化。SODA促进了这些概念,这些概念是在面向服务的世界中构建应用程序所固有的。组件成为服务,开发人员需要新的集成服务环境(ISE)来构建下一代软件产品。
##### 2.2 集成服务环境(ISE)
基于支持应用程序整个生命周期的这七个方面,出现了ISE的概念。ISE不仅是支持面向服务和复合应用程序的技术栈,也是一套支持其开发的工具。它对SODA的七个方面支持得越多,就越完整。
ISE通过组合和重用提供快速开发工具,使应用程序易于更改。此外,ISE自动化部署过程,在开发和维护周期中都能带来收益。因此,开发可以以业务为驱动,而不是以技术为驱动,即专注于业务流程本身,而不是技术细节。
这种范式还允许敏捷开发在更短的周期内实现,使来自真实用户的反馈能够在每次新迭代中得到体现并立即得到验证。因此,应用程序将迅速收敛到满足用户需求的解决方案,提高项目的成功率。
##### 2.3 复合应用程序
复合应用程序是面向服务架构的最终产品,代表了公司从其SOA中获得的业务
0
0
复制全文
相关推荐









