原文链接:Evolution of SAP ERP Architecture in 11 Steps
作者: Sap newbie
Ps:翻译时有增删
SAP ERP 架构的演变
SAP ERP 是世界上最受欢迎的企业资源规划(ERP)软件之一。可以帮助企业集成各种业务流程,包括财务、销售、采购、库存和生产。它是一款全面的解决方案,可以帮助企业优化业务流程,提高效率,实现更好的业务结果。在过去的十年中,SAP ERP 架构已经发生了很大的变化。
我们将从 SAP 开始解决什么问题开始,通过 11 个(大)步骤解决他们如何最终使用 SAP S/4 HANA:
业务流程的计算机化
随着计算机技术的出现,公司寻找机会将各种商业或者业务自动化,而不是依赖缓慢且容易出错的手工工作。他们会聘请软件开发人员(或外包)来编写应用程序或者软件,以此来帮助他们实现符合要求的应用程序。
这些应用程序是针对组织的业务需求而设计的,但它们并不那么容易维护(文件不全糟糕,做法不好,知道如何工作的人都离开了,因为担心改变任何东西会出错,因此将他们束缚在相同的旧技术上,每个部门都有自己的应用程序,它们从未整合成一个 ERP 系统等等)。
世界上最强大的 ERP 系统就在 IBM 的眼皮底下诞生
迪特马尔·霍普、汉斯-维尔纳·赫克托、哈索·普拉特纳、克劳斯·特希拉和克劳斯·韦伦罗伊特 - 这五位(前)IBM 员工注意到几家公司正在独立开发和使用类似的业务应用程序。
他们提出了创建一个标准软件的想法,以避免这种重复劳动,并解决内部构建软件的弱点。这种 ERP 解决方案可以被许多组织使用,从而降低开发和维护此类软件解决方案的成本。
IBM 没有接受这个想法。
他们于 1972 年创办了自己的公司,名为 Systemanalyse und Programmentwicklung(系统分析和程序开发),后来更名为 Systeme,Anwendungen und Produkte in der Datenverarbeitung(数据处理中的系统、应用和产品)。
实时系统:Hello World
SAP 于 1972 年开发了他们的第一个会计软件——R/1 系统——在 DOS 上运行,随后于 1979 年开发了基于大型机计算的 SAP R/2 系统。 SAP R/2 包括大多数企业功能,如供应链、制造流程、会计和人力资源。 R/2 还支持多种语言和货币,这有助于它在跨国组织中流行起来。
SAP R/2 是 SAP ERP 架构的第一个版本,于 1979 年发布。这个版本主要是基于主机架构,使用批处理处理业务流程。SAP R/2 的架构非常简单,只包括三个层次:前端、应用服务器和数据库服务器。
三层客户端-服务器架构
1992 年,SAP 重新设计了他们的解决方案,即基于客户-服务器架构的 SAP R/3。这个版本采用了三层架构,包括前端、应用服务器和数据库服务器。应用服务器被分为多个层次,包括事务处理器、应用服务器和消息服务器。这个版本还引入了 SAP GUI,使用户可以通过图形用户界面(GUI)访问 SAP 应用程序。
几台个人电脑可以用来连接一个或多个应用程序实例,这些实例将处理一个或多个数据库实例上的数据。
将解决方案分为三层(展示、应用和数据库)和客户-服务器架构,使组织能够在独立的专门硬件上运行每一层。
- 表示层(SAP GUI)在每个用户的计算机上运行;他们不必担心在服务器上分时共享 GUI。
- 应用层执行业务逻辑,仅在必要时访问数据。
- 数据库层持久化业务交易
表现层是客户端,应用层是服务器;同样应用层是客户端,数据库是服务器。事实证明这是一个非常成功的架构。
SAP 功能模块、行业解决方案和技术层
应用层由物料管理(MM)、销售与分销(SD)、人力资源(HR)、生产计划(PP)、财务与控制(FICO)等核心模块组成。
提供行业特定的解决方案作为附加功能。组织可以通过部署适合自己的行业解决方案附加功能来使用与其行业相关的专业业务流程。行业解决方案附加功能会(稍微)修改标准核心功能模块,使其与该行业相关。
该应用程序建立在被称为 SAP Basis 的技术平台上(它有许多其他名称--Web 应用服务器和 NetWeaver 应用服务器)。SAP Basis 允许 SAP 在不同的操作系统和数据库组合中运行。
SAP R/3 到 4.6c、EnjoySAP 和 "SAP R/3 4.6D "的过程
以 SAP R/3 为参考,让我们看看 SAP ERP 架构是如何演变的。
4.6c 版之前的 SAP R/3 架构包括:
- 技术层(Basis 和 ABAP)
- 核心应用(SAP_APPL 和 SAP_HR - 功能模块)。
- 附加组件(行业特定的附加组件和插件,如 Y2K 检查)
在架构不断发展的同时,SAP 还重塑了用户与 SAP 应用程序交互的方式。
SAP 与 Frog Design 合作推出了 EnjoySAP。左窗格中的树结构、减少屏幕变化、非 Windows 外观等是 EnjoySAP 的功能(使用 SAP 更愉快)。 EnjoySAP 是当前 SAP GUI 使用的标准。
在 Basis 4.6D 之前,SAP Basis 只是 SAP R/3 的一个组成部分。例如,Basis 和 R/3 具有相同的版本号,或者联合支持包反映了这一点。
通过 mySAP.com(1999 年),SAP 开始交付多个应用程序组件,如 SAP R/3 或 SAP New Dimension Products,它们都基于 SAP Basis。
随着 Basis 从 SAP R/3 中分离出来,它的开发依赖于 mySAP.com 的应用程序组件及其技术要求。
mySAP.com 组件(如 Workplace、BW、KW、CRM 和其他 SAP 产品)使用的 SAP Basis Release 4.6D 未被任何 R/3 版本使用。因此,虽然 Basis 4.6D 存在,但“SAP R/3 4.6D”从未存在过,也没有任何使用 Basis 4.6D 的 R/3 版本。
企业扩展和 SAP R/3 企业
在 90 年代后期,由于 JAVA,两项核心技术获得了突出地位:Unicode 和 Web(互联网泡沫)。
SAP 改变了基础层,以适应最新的技术趋势。 SAP 将 Basis 重命名为 Web Application Server,以表明对这些技术的适应。 Basis 这个名字从未消亡,因此这些术语可以互换使用。
随着新功能的引入、企业扩展的引入以及架构的变化,SAP R/3 开始被称为 SAP R/3 企业。
该应用程序的一个非常重要的架构变化是引入了企业扩展。
企业扩展,本质上是核心应用之上的附加 package ,包含新的功能,避免了改变核心应用的需要。如果一个增强功能在一个以上的企业扩展中找到它的位置,它将成为核心应用程序的一部分。这样一来,变化和增强功能就首先作为扩展被引入。
集成组件、MySAP ERP 2003 和 SAP NetWeaver
我们还没有转到 SAP R/3 Enterprise 的后续版本。我们正在研究 SAP 是如何将各种新的维度组件和基础并入一个总称--SAP NetWeaver 的,以及 SAP R/3 Enterprise 是如何通过包括更多的组件来扩展的。
在 Web AS 6.10(以前的 Basis)之前,HTTP 功能是通过 Internet Transaction Server(SAP ITS)提供的,XML 是通过 SAP Business Connector(SAP BC)处理的。ITS 和 BC 接受 HTTP/XML 并将其转换为 DIAG 协议(DIAG 被 SAP GUI 用来与应用层对话)。
网络应用(称为互联网应用组件或 IACs),如雇员自助服务,是专门为 SAP ITS 编写的。ITS 现在继续存在,集成在 SAP 内核中,但它不再是 HTTP 协议的唯一推动者。
在 Web AS 6.10 中,SAP 使用 Internet Communication Manager(ICM)包括对 HTTP 和 XML 的本地支持。业务服务器页面(BSP)被开发出来,它将在浏览器中执行业务逻辑,类似于在 SAP GUI 中执行事务的方式。 像 Basis 4.6D 一样,没有基于 Web AS 6.10 的 SAP R/3 系统。
接着是 Web AS 6.20:通过收购 In-Q-My 和它的 JAVA 应用服务器,SAP J2EE 引擎被添加到 SAP 的产品组合中。
Web AS 中的 Java 编程语言为软件组件铺平了道路,如 SAP CRM 3.1(注意版本)、SAP 企业门户和 SAP 交换基础设施。SAP 将 XI、EP、KM 和 BW 等集成组件进行了分组,并将该组称为 SAP NetWeaver。这个小组的功能是帮助企业使用开放标准整合各种应用。
尽管 IT 环境是异构的,人员整合仍能为员工提供对各种系统和功能的快速访问。公司里的数据无处不在--以结构化和非结构化的形式存在。信息整合有助于整理和分析这些信息。一个业务流程通过组织内部和外部的多个系统运行。流程整合提供了整合这些流程的基础设施。应用平台由 Web AS JAVA、Web AS ABAP 以及对第三方和/或 SAP 的操作系统和数据库的支持组成。
NetWeaver 的组件被安排成类似于冰箱的隔间,NetWeaver 的图/架构通常被称为这样。
应用平台(Web AS ABAP 和 Web AS JAVA)是 SAP NetWeaver 的基础,而 SAP NetWeaver 是 SAP 解决方案的基础,如 MySAP ERP。仅靠基础层无法满足的功能,现在可以通过 NetWeaver 来实现。
MySAP ERP 的架构看起来就像这样的野兽:
- 自助服务使非专家用户(PEBKAC 类型)无需专家用户的帮助即可创建、查看和编辑数据。
- 自助服务申请允许员工直接购买商品/服务,同时遵守政策、批准的供应商和协议。
- 战略企业管理 (SEM) 提供分析(因此需要 BW)以根据企业的全球和战略运营规划后台运营。
- 网络销售允许企业建立具有产品目录、搜索功能、下订单、跟踪等功能的网上商店。
非修改性插件成为 NetWeaver 的一部分(作为 NetWeaver 插件)。
SAP ERP Central Component (ECC)
当您在浏览器中打开一个 HTML 页面时,比方说,要查看一个人的详细联系信息,该页面会显示您可以阅读和理解的信息。在所有可用信息中,如果您要查找传真号码,您可以从页面中辨别该信息。
如果程序必须做同样的事情,您需要编写逻辑来过滤掉所有其他信息,然后取出传真号码部分。 Web 服务使这变得容易。通过遵循良好的标准,Web 服务提供调用者(非人类)可以轻松理解的输出(在本例中为传真号码)。
由于 Web 服务基于开放标准,调用者使用哪种编程语言或在何种硬件上发出请求以及 Web 服务是使用哪种编程语言或在何种硬件上编写以提供回复都无关紧要。
Web 服务在非常精细的级别上运行。什么样的商业交易得到一个传真号码而不用它做任何事情?假设的逻辑步骤是将发票传真给供应商并记录传真已发送(成功或失败)。
想象一下 Web 服务的集合组合起来看起来像一个单一的 Web 服务,它将发票号作为输入,从发票中获取供应商 ID,使用 Web 服务查找供应商的传真号码,使用另一个 Web 服务传真发票,更新记录使用网络服务发送传真的结果。这样的 Web 服务称为企业 Web 服务。
面向企业服务的架构、MySAP ERP 2004 和 NetWeaver 2004
SAP ECC 是 SAP ERP 架构的第三个版本,于 2004 年发布。这个版本采用了与 SAP R/3 相同的三层架构,但是引入了新的技术,例如 Web 应用程序服务器和 Java。这个版本还引入了新的功能,例如供应链管理和客户关系管理。
企业 Web 服务构成了业务流程的业务层面的构件。SAP 的核心应用(SAP R/3 Enterprise)适应了基于企业网络服务的架构(企业服务架构)。因为这个变化,SAP R/3 Enterprise 核心得到了一个新的名字 SAP ERP 中央组件(ECC)核心。企业服务架构这一名称后来被改为面向企业服务架构(ESoA)。
好吧,但这是怎么回事?
想象一下,你有一台 CD 播放器--它是由一个 CD 读盘器、电源适配器、功放装置和扬声器组成的。 如果这是一个 "标准业务流程",你就很好。但是,如果另一个 "业务流程 "是 DVD 播放器,你将需要一个 DVD 播放器,它将由 DVD 读盘器、电源适配器、放大器单元和扬声器组成--部分重复的组件。如果每个组件都是可分离的 "网络服务",你就可以用 CD 机的电源适配器、功放装置和扬声器来连接 DVD 读碟机,从而得到一台 DVD 机;而且它们的连接要感谢 "网络标准"。早期也有可能重用(例如通过 RFC),但它们不是基于开放标准的,而且使整合变得困难。
冰箱也发生了变化。BW 和 ITS 成为 NetWeaver 的默认组件。SEM(依赖于 BW)和基于 ITS 的 Self-services(还记得 IAC 吗?)从附加组件变为 ECC 的一部分。 根据业务需要,开发人员现在可以编写应用程序,与用户互动,或调用 SAP 系统或第三方系统托管的服务。这样的应用被称为复合应用。复合应用可以由 SAP 提供,也可以由第三方供应商开发。SAP 复合应用框架(CAF)包括开发和执行复合应用的方法、工具和运行时间,称为 SAP xApps。
NetWeaver 套件已经启动,ECC 有很多开关
随着 MySAP ERP 2005(后来更名为 SAP ERP 6.0)的推出,人们看待、安装和实施 NetWeaver 的方式正在发生变化。
SAP 认为,NetWeaver 的各个组件并不代表 IT 部门最终的使用方式。例如,商业报告和查询是由 BW、EP 和 KW(NetWeaver 的原始组件)组成的。
为了实现 IT 实践和 IT 场景,SAP 开始将 NetWeaver 按单个组件进行分组,称为使用类型(Usage Types)。
早些时候,当你需要 XI 时,你必须先安装 Web AS ABAP,然后是 Web AS JAVA,最后是 XI 应用组件。现在你安装 SAP NetWeaver Process Integration Usage Type,它会自动选择各个组件进行安装。
各个组件(为了参考,仍然在附近)有相同的版本号(除了 MDM)。这个 NetWeaver 版本是 SAP NetWeaver 2004s;其中 s 代表套件。 后来名称改为 SAP NetWeaver 7.0。
各个组件的名称发生了变化,因为它们现在是一个软件套件的一部分。
- 基础组件 Web 应用服务器(Web AS)现在是 NetWeaver 应用服务器。
- SAP 商业信息仓库现为 SAP NetWeaver 商业智能
- SAP Exchange Infrastructure (XI) 现为 SAP Process Integration。
- SAP 企业门户(EP)现为 SAP NetWeaver 门户
- SAP 移动基础设施现为 SAP NetWeaver Mobile。
我们仍将继续使用冰箱的表示法。毕竟,使用类型仍然是由这些成分组成的。
ECC 的核心现在包括作为行业扩展的行业解决方案。一个组织不需要所有的行业扩展,甚至不需要一个完整的行业扩展。
集成扩展是由(行业)业务功能集和(行业)业务功能组成的,可以根据所需的行业功能激活。不可能同时激活不同行业解决方案的业务功能/集。一旦激活,通常不可能停用这些业务功能/集。
使用 Switch 框架可以激活业务功能/集。存储库对象(应用程序、功能模块、表、企业服务等)以非活动的形式提供,这些对象可以根据需要通过这种外部控制来激活对象。
从 R/3 企业版开始就存在的企业扩展,是由一般业务功能/集组成的。其中一个或多个可以被激活,因为这些是对多个行业的通用。
如果 SAP 能够以这种方式包括行业解决方案,他们就可以很好地利用切换框架来提供新的增强功能。新的增强功能可以被导入到系统中,只有那些业务需要的增强功能可以被激活。增强框架正是这样做的,新的增强功能是作为增强包提供的。
增强包包含用户界面的简化(使其更容易运行交易),功能和行业特定的增强和企业服务。
SAP S/4 HANA
移动设备现在正在扩展个人电脑。商业交易越来越多地通过触摸用户界面运行。随着互联网成本的下降,企业正在与云端的商业网络连接,甚至在云端运行业务。企业拥有丰富的数据,需要强大的分析引擎。
SAP 已经建立了一个数据库和高性能分析设备,称为 SAP HANA。SAP HANA 数据库可以在 RAM 内,并且可以对基于行、基于列和基于对象的表进行操作。
SAP 正在重新设计其 ECC 核心,只支持 SAP HANA,删除所有冗余的表和索引,使用超酷的压缩技术,这又减少了必须存储的数据量。
SAP ERP 被重新命名为 SAP S/4 HANA。S 标志着简化的数据模型。4 标志着第四代(继 SAP R/2、SAP R/3 和 SAP ERP 之后)。与其前身一样,S/4 HANA 是基于 SAP NetWeaver 的,它可以在企业内部、云端和混合部署中使用。
SAP S/4HANA 是 SAP ERP 架构的最新版本,于 2015 年发布。这个版本采用了新的架构,称为 SAP HANA。SAP HANA 是一种内存数据库,可以更快地处理大量数据。SAP S/4HANA 还引入了新的功能,例如物联网、人工智能和机器学习。
总结
在本文中,我们回顾了 SAP ERP 架构的演变过程。
SAP ERP 架构已经经历了多次演变,从 SAP R/2 到 SAP S/4HANA。每个版本都引入了新的技术和功能,以更好地满足企业的需求。SAP S/4HANA 是最新的版本,采用了新的架构和技术,使企业可以更快地处理大量数据,并实现物联网、人工智能和机器学习等新的功能。
SAP ERP 架构已经经历了多次演变,从最初的单一系统架构到现在的分布式账本技术架构。每次演变都提高了系统的性能、可扩展性、可访问性、灵活性、可维护性、可移植性、智能化水平、安全性和可靠性。
免责声明:
所有的插图(结构图)都是原创作品。
钢铁侠和 CD 播放器的照片来自
https://pixabay.com/。免费用于商业用途/不需要署名 IT 实践和 IT 场景图来自 What's New with SAP NetWeaver 2004s_0_.pdf,并已在图片下注明出处。 SAP 的 Next Big Thing 图表来自 openSAP 课程资料: SAP S/4HANA in a Nutshell,并在图片下注明了来源。这个帖子没有得到 SAP 的认可,也不代表/取代他们的文件。