SAP S/4HANA Cloud Extensibility Model for Cloud-Readiness
Below are the three major extensibility options for SAP S/4HANA Cloud that guarantee Cloud readiness and upgrade stability:
- Key user extensibility for code-free extensions created by key users such as adapting the user interface and adding custom fields living in the S/4HANA Cloud stack.
- On-stack developer extensibility (SAP S/4HANA Cloud ABAP Environment or also known as 'Embedded Steampunk') for developer extensions that are implemented in ABAP directly on the SAP S/4HANA Cloud technology stack.
- Side-by-side extensibility for developer extensions using the development and runtime environment offered by Steampunk (SAP BTP ABAP Environment).
In the illustration, you will see the three extensibility options. Key user extensibility (1) and developer extensibility with SAP S/4HANA Cloud ABAP Environment (2) are integral parts of the S/4HANA Cloud system. The third option is side-by-side extensibility powered by SAP BTP ABAP Environment (3). All three extensibility options are based on the usage of public interfaces and extension points. Both key-user extensions and developer extensions have access to locally published interfaces offered by the underlying ABAP Platform Cloud (horizontal green box) and by the SAP S/4HANA business objects (vertical yellow box). The public interfaces are released by SAP for key-user extensibility, for on-stack developer extensibility or for both extensibility options, see the rounded intersected rectangles.
Side-by-side extensions can access the SAP S/4HANA business objects through remote APIs that have been published in SAP's API Business Hub. In addition, these side-by-side extensions have access to the exposed local public interfaces and extension points (horizontal green box on the right) of the underlying ABAP Platform Cloud stack. Since both SAP BTP ABAP Environment and SAP S/4HANA Cloud are based on the same ABAP Platform Cloud stack the public interfaces of the underlying ABAP Platform Cloud stack are the same.
It is important to note that the three extensibility options are not isolated from each other. In many situations, the three options may be combined, for example developing a side-by-side application in conjunction with a thin on-stack extensibility layer that offers better suited APIs designed by customers and partners for their own purpose. Likewise, core data services might be released in on-stack developer extensibility that serve as value help for key user extensibility etc. Both these extensions live in the S/4HANA Cloud stack.
S/4HANA Public Cloud now provides a new upgrade-stable Cloud extensibility model, offering different extensibility use cases:
- Low-/No code key user tools.
- Java, node.js and ABAP Environment in SAP BTP for side-by-side extensions.
- ABAP Environment in SAP S/4HANA Cloud for tightly coupled extensions running in the SAP S/4HANA Cloud stack.
All these extensibility options build on released stable SAP APIs and SAP extension points. With the new cloud-ready and upgrade-stable custom ABAP development model, you have two ways to develop in the ABAP Environment in SAP BTP ("Steampunk) and in the ABAP Environment in S/4HANA Cloud ("Embedded Steampunk").
In the Development box, we have the Development Tenant where we can create the extensions via Developer Extensibility. Here the custom extensions are assigned to Workbench Requests and transported via Transport Organizer.
SAP S/4HANA Cloud ABAP Environment enables custom ABAP development directly on the SAP S/4HANA Cloud stack. This is a much more modern ABAP development model, whereby customers and partners use the same development model to increase developer productivity. Use of ABAP RESTful application programming (RAP) model allows the development of SAP HANA-optimized apps and services using Eclipse-based ABAP development tools.
For User Experience development, developers have access to SAP Fiori tools and Business Application Studio and Microsoft Visual Studio Code Proven Lifecycle Management.
Rules of the Game:
The Rules of the game include a clear separation between SAP solutions and extensions and only stable and reliable public interfaces and released objects from both ABAP platform and SAP S/4HANA Cloud applications can be used, and finally no modifications.
SAP S/4HANA Cloud ABAP Environment is only available in a 3-system landscape (3SL) coupled with a Central Business Configuration (CBC) tenant. SAP plans to make this available for existing customers, and the prerequisite is that the customer must first migrate to the 3SL. SAP plans to migrate all existing 2SL customers over the next few years to 3SL.
This table shows the different SAP S/4HANA customer environments and why a customer should adopt the new Cloud extensibility model. We will explore the key components of the Cloud extensibility model mandatory in SAP S/4HANA Cloud (public) in this course. This includes a detailed description of the new Cloud-ready custom ABAP development model. Although the model extends to SAP S/4HANA Cloud, private edition and SAP S/4HANA on-premise, we will focus only on SAP S/4HANA Cloud (public) use cases. With SAP S/4HANA On-premise and SAP S/4HANA Cloud, private edition, we differentiate between greenfield SAP S/4HANA systems and converted SAP S/4HANA systems containing legacy custom ABAP code. Again, the SAP S/4HANA Cloud, private edition and SAP S/4HANA on-premise use cases will not be discussed in this course, as this capability is not yet available at the time this course is available, but will be introduced to the developer community at a later time.