On September 26th, Björn Goerke, Chief Technology Officer of SAP, announced another milestone of SAP’s Platform as a Service offering – the planned availability of ABAP as an additional development and runtime environment in SAP Cloud Platform.
SAP Cloud Platform is SAP’s strategic Platform as a Service (PaaS) offering for SAP customers and partners to build, integrate and extend SAP’s business solutions and services. Today, SAP Cloud Platform applications and extensions can be built with different development environments like Java or Node.js, but SAP’s own environment for business applications, ABAP, has not yet been available so far.
ABAP in SAP Cloud Platform is SAP's new Platform as a Service (PaaS) offering for ABAP. Since many years, ABAP has been the foundation for SAP’s on-premise solutions. With ABAP in SAP Cloud Platform, ABAP developers can make use of their existing ABAP know-how to develop and run ABAP applications in the Cloud.
ABAP in SAP Cloud Platform enables the ABAP developer community to step into the Cloud. Customers and partners can build extensions for ABAP-based products like SAP S/4HANA Cloud as well as develop new cloud applications. ABAP in SAP Cloud Platform is also an option to transform existing ABAP-based custom code or extensions to the Cloud. Finally, ABAP in SAP Cloud Platform provides access to SAP Cloud Platform services like integration, document management, machine learning and IoT.
ABAP in SAP Cloud Platform is based on the latest ABAP Platform Cloud release which is also used for SAP S/4HANA Cloud. It leverages the multitenant database container technology of SAP HANA. The software stack contains standard technology components familiar from the standalone ABAP application server. It supports the new RESTful programming model including SAP Fiori and Core Data Services (CDS). SAP Services and APIs are offered according to a new whitelisting approach.
ABAP in SAP Cloud Platform supports the standard Eclipse-based environment with ABAP Development Tools (ADT). The traditional ABAP Workbench (SE80) is not supported. An integration option to Git is available to import and manage development artifacts offering direct access to open source projects and state-of-the-art version management control.
ABAP in SAP Cloud Platform introduces a subset of the ABAP language optimized for the cloud. This subset excludes statements which are not compliant with secure cloud operations such as direct access to the file system. In addition, ABAP statement variants which have already been deprecated have been removed from the language scope.
In order to ensure secure and stable upgrades of the underlying software stack only whitelisted SAP APIs can be used. Usage of other SAP objects of the underlying software stack will lead to a syntax error.
SAP has a huge customer and partner base running their mission-critical businesses, their digital core, with ABAP-based solutions like SAP S/4HANA and SAP Business Suite. Consequently, a tremendous ABAP code base has emerged over the last decades.
Most of the existing solutions are operated on-premise. At the same time, SAP sees a growing adoption of Cloud-based solutions like SAP S/4HANA Cloud which require tailored extensibility options for customers and partners.
This is why helping our customers to transition their digital core to the Cloud has become a central part of SAP's Cloud-focused strategy. One crucial factor in making this transition a success is how well extensions to SAP code, implemented by customers or partners, are supported. To get a clearer picture of which extensibility options are currently available, let us do a quick recap of the basic concepts:
Available Extensibility Options
The Cloud implies standardization and automation of processes and operations. Consequently, cloud vendors update software regularly in an automated event for all tenants. As a result, all cloud customers run on the same vendor software version, and the vendor software must be strictly decoupled from any custom extensions. Extensions can only use well-defined and stable interfaces provided by the cloud vendor. Modification concepts of vendor software, familiar from SAP on-premise solutions, are not feasible in the Cloud. Taking these preconditions into consideration, the following two extensibility options are available (please also refer to figure 1):
in-App Extensibility: allowing small and controlled extensions in the runtime environment of the original application. Typical examples are adding a new field to a business context, adding a validation to an event or process extensions
Side-by-Side Extensibility: allowing development of new loosely-coupled applications or services on a decoupled PaaS using remote communication.
For side-by-side extensions SAP offers SAP Cloud Platform with the Java and Node.js runtimes. SAP Cloud Platform can be used today to build new cloud applications or to transform existing extensions to the cloud.
Figure 1: Available extensibility options in the cloud
(example SAP S/4HANA Cloud)
ABAP goes Platform as a Service (PaaS)
ABAP in SAP Cloud Platform provides an additional option for the cloud transformation of SAP’s customer base. ABAP in SAP Cloud Platform focuses on SAP customers who want to make use of their ABAP know-how and customers who are looking for ways to utilize their previous investments in on-premise ABAP custom or partner extensions.
But there will be no 1:1 reuse of existing on-premise ABAP custom code packages in SAP Cloud Platform!
ABAP in SAP Cloud Platform accesses the business system via remote APIs, allows only access to whitelisted ABAP platform objects and restricts the available technology components, for example no SAP GUI access and a restricted ABAP Language scope.
Consequently, the extent of code reuse heavily depends on the quality and nature of the custom or partner code. Loosely-coupled add-ons with a clear interface to SAP objects will have a significant code reuse. Custom code interwoven with the extended product might entail significant refactoring.
Figure 2: Side-by-side extensibility with ABAP in SAP Cloud Platform (example SAP S/4HANA Cloud)
ABAP in SAP Cloud Platform Roadmap
Planned availability for ABAP in SAP Cloud Platform is 2018. A customer engagement initiative will be launched in late 2017 to collect feedback from early adopters. The current roadmap starts with the extension scenario for SAP S/4HANA Cloud. Further use cases will be added moving forward.
ABAP in SAP Cloud Platform adds ABAP as an additional development and runtime environment along with the existing ones like Java or Node.js. While this offering adds value for a number of different use cases, the first target group are SAP customers who are moving their business processes to the Cloud using SAP S/4HANA Cloud.