Identifying the need for Side-By-Side Extensibility

Objectives

After completing this lesson, you will be able to:

  • Identify the need for Side-By-Side Extensibility

Introduction

You are a developer at a company that is using SAP S/4HANA Cloud. Your company has a requirement to extend the standard SAP S/4HANA Cloud solution with custom business logic and UIs.

You want to explore the options for side-by-side extensibility with SAP BTP and SAP S/4HANA Cloud. When you are building extensions in an SAP system, especially in a cloud environment like SAP S/4HANA Cloud, the traditional approach to develop and run custom business logic directly on the application server is no longer possible.

Historically, SAP ERP solutions were extended on-premises directly by adding custom code to the ABAP application server. The capabilities and paradigms of extending SAP solutions have changed through the shift into a cloud environment. Nevertheless, the standard SAP S/4HANA Cloud system can be adapted to custom business needs.

Various possibilities exist to customize the standard system, like leveraging key-user extensibility - for example, to add custom fields to a SAP Fiori User Interface (UI). However, this only meets the requirements for simple customizations. For more complex requirements, like adding custom business logic, a side-by-side extensibility approach is required. Let's explore this in more detail.

Exploring Side-by-Side Extensibility

As introduced previously, the SAP BTP is a cloud-based development platform that focuses on business-centricity. The SAP BTP provides a future-proof cloud(-native) development environment, harmonizing the development experience across SAP products and providing a seamless experience in the cloud.

Three application runtimes, namely the SAP BTP, ABAP Runtime, SAP BTP, Cloud Foundry Runtime, and the SAP BTP, Kyma runtime, provide a variety of options for both ABAP and non-ABAP developers on the SAP BTP to develop and run applications in a pro-code way. Similarly, for citizen developers, the SAP BTP offers a low-code/no-code (LCNC) suite of products to build enterprise-grade extensions in a fully low-code way.

SAP Build consists of three deeply integrated products, SAP Build Apps, SAP Build Process Automation, and SAP Build Work Zone. It is worth mentioning here is that both sides of the spectrum, pro-code and low-code, can be combined to build extensions in a hybrid approach, where pro-code developers and citizen developers collaborate in so-called "Fusion Teams" to build extensions.

Side-by-Side Extensibility and Clean Core Paradigm

While it is still possible to develop the core solution, it's a proven best practice to "keep the core clean", and rather consume Application Programming Interfaces (APIs) from these systems, and integrate them into your extension applications. This is exactly where the SAP BTP comes into place.

As the cloud-based development platform, the SAP BTP offers a wide range of business-centric capabilities to extend business processes in SAP landscapes and beyond. The foundational plane of the SAP BTP provides developers with various development tools, services, and infrastructure components to build and operate secure, scalable, and reliable cloud-native applications.

Developers have access to development tools, services, and infrastructure components such as the SAP Business Application Studio or the SAP BTP, Kyma runtime.

Learn more in the following video:

Differentiating the Extensibility Options on SAP BTP

With the three runtimes on the SAP BTP, different extensibility options are available. For ABAP-based extensions, the SAP BTP, ABAP Environment is the only choice to develop and run the applications. On the other side, building non-ABAP-based extensions allows you to leverage various technology stacks and pure cloud-native development and deployment scenarios.

Programming languages such as (but not limited to) JavaScript (Node.js), Java, TypeScript, Go, Python and many more can be leveraged to build custom enterprise-grade extension on the SAP BTP. These applications can be developed either locally in your IDE of your choice, or in the SAP Business Application Studio on the SAP BTP. The deployment can either take part to the SAP BTP, Cloud Foundry Runtime or the SAP BTP, Kyma runtime.

ABAP and non-ABAP-based extensions on SAP BTP

In the context of this learning journey, you will only learn about non-ABAP-based extensions. More precisely, with the SAP Cloud Application Programming Model (CAP) with Node.js (JavaScript) and Cloud Foundry.

Log in to track your progress & complete quizzes