2.6 面向服务架构
走进SAP(第2版)
网络服务
面向服务架构(SOA)是一种封装各种服务或软件模块的系统架构,使用这种架构,业务流程能够灵活地组合与再利用。这些服务所映射的业务流程可以进行组合,然后映射到更复杂的业务流程。这种方法使软件开发更加经济与快捷。每项服务都可以通过互联网作为网络服务(Web service)进行使用。这样用户就不会觉察到应用程序的复杂性。SOA是建立在将网络服务作为模块的基础上的,这种软件开发方式能够整合各种应用程序并且能够共享功能和信息。
可重用性
2.6.1 什么是服务
服务(Service)是指可以完成特定业务功能的代码模块。它通常与其他服务和功能相关联,从而成为业务流程的一部分。下面是一个有关服务的简单实例:在销售订单中计算增值税的金额。服务创建以后,可以在一系列的流程中进行应用。
网络服务可以进行预订和重复使用,就像从衣柜中取走某种款式或颜色的衣服,而其他衣服仍然保留在衣柜中。SOA解决方案在为企业计算提供更高的灵活性的同时,还可以节约时间和金钱。因此SOA现在已经成为SAP战略的关键组成部分。
2.6.2 SAP的企业服务解决方案
SOA是IT实践设计的通用解决方案,而且网络服务的应用并不局限在SAP环境中。但是,SAP为业务流程的模块化提供了专用的功能,这些模块可以根据企业的需求和SAP软件的应用进行订制。
例如,对于一项用于生产采购订单的服务,用户不需要编写一个扩展应用程序,只要简单地调用一项网络服务就可以了。同时用户还可以修改这项网络服务,使之适合SAP系统中的当前业务流程,并且可以被其他业务部门的所调用。SAP所提供的服务是指企业级服务。企业级服务包括了一系列可以完成专项工作的功能。
注意:名称变化
SAP的SOA解决方案起初被称为企业服务架构(Enterprise Services Architecture, ESA)。2006年,这一术语被企业SOA所替代。现在我们把SAP的解决方案仅称为SOA──面向服务架构(Service-Oriented Architecture)。
SAP进一步使用服务创建了整个场景(Scenario)。一个场景包括几项服务,这些服务可以用来完成一项业务流程,例如采购付款。从图2.3中可以看到采购付款是从覆盖率分析开始的,其中包括了询价申请的创建、采购订单的生成、收货和付款。这一流程涉及了采购、仓储管理、应付款(发票校验)和财务控制等几个部门。这一流程的每一步(从小图标1到小图标7)可以在一个场景中进行体现,这样更易于编程或服务外包。
https://yqfile.alicdn.com/6b7515596e547fb034e9e7ae65ae6188e48df19f.png" >
SAP已经在服务的基础上创建了一系列的场景,以下将进行介绍。第17章会介绍如何基于服务开发和测试自己的流程。