Extensibility refers to the broad spectrum of options and scenarios that allows customers and their partners to adapt standard business software, as per their business needs. To understand better, extensibility can be categorized into:
- In-App Extensibility in the SAP S/4HANA Cloud Core
- Side by Side Extensibility on the SAP Cloud Platform
These classifications are even valid while studying the extensibility of SAP S/4HANA Cloud, SAP S/4HANA Single-Tenant, and SAP S/4HANA. The basic building blocks of the extensibility concept are:
- In-App Extensibility
- Key user extensibility
- Classic ABAP development
- Side by Side Extensibility
- SAP extension SDK powering Java or Node.js
- ABAP environment
How to Use Extensibility in the First Place?
While the client is free to develop its own application under the SAP extensibility, the platform still needs to be integrated into a modular SAP application (such as SAP Concur, SAP Ariba, or SAP App Center) to extend business processes.
The primary advantage of using extensibility is decoupling. This feature allows extensions in the SAP S/4HANA core, without affecting the upgrades. This decoupling is the main advantage of both in-app and side-by-side extensibility concepts of the SAP S/4HANA Cloud as the stable APIs integrate through different stocks throughout the system.
Besides decoupling, here are some other benefits of using SAP Extensibility:
- Helps to stand out from the usual crowd
- Provides a competitive edge that is very hard to beat
- Helps to simplify processes and reduces the need for manual labor
How to Use In-App Extensibility Without Any Problems?
The in-app extensibility allows customers to build their extensions on SAP Cloud Platform based on the released APIs. However, such system integrations are prone to problems as the software is always patched and constantly updated on a fixed schedule, and innovations are introduced all the time.
This can be solved by ensuring decoupling and lifecycle stability. This is because these extensibilities are acceptable and do not hinder with the SAP software updates without the requirement of any manual steps. Also, custom extensions are loosely coupled so that they can be decoupled when there are requirements for any updates without harming the extensions.
In-App Extensibility of SAP S/4HANA Cloud
This feature allows the users to adopt new application extensions without the requirement of any external tools. A large variety of tasks can be performed using SAP S/4HANA Cloud tools, ranging from elementary tasks like hiding some fields for a specific user group, to critical tasks like developing some high-end business logics.
Certain important features of In-App Extensibility tools are:
- Change and vary the context and UI layouts
- Develop a completely new user interface
- Create forms and email templates
- Create new and specific CDS views
- Improve the efficiency of the current business process by creating a new business logic
- Develop custom fields and custom business models
All the In-App Extensibility Tools under the SAP S/4HANA Cloud are entirely web-based. These tools are highly beneficial for individuals who have an excellent understanding of the system but lack technical knowledge of the same. The provided In-App Extensibility Tools help in creating life cycle stable artifacts which do not depend on adoptions by customers but are upgrade proof.
Side by Side Extensibility of SAP S/4HANA Cloud
Side by Side concept is also present alongside the In-App extensibilities. In this platform, the users are allowed to make customized applications or use pre-existing apps. But the primary aim is to develop solutions that can be seamlessly integrated.
One can extend previous processes or make entirely new processes that can be combined with SAP S/4HANA Cloud data. Proxy applications, convenience applications, analytical applications are some of the few extensions that customers are currently implementing.
Different Integration Patterns for Side by Side Extensibility
Irrespective of what kind of application the user develops, it has to be adequately integrated with the SAP S/4HANA Cloud system. Integration consists of multiple levels, namely:
- UI Integration
- User Integration
- Rules and Workflow Integration
- Process Integration
- Events Integration
- Data Integration
The programming model of Side by Side extensibility follows the approach of a crucial microservice that consumes content from SAP S/4HANA Cloud. The various layers of a custom app consist of the user interface layer, the application layer, and the database layer. The application layer connects to the Cloud and uses the different content offered by SAP S/4HANA Cloud.
Use Cases for Side by Side Extensibility
The most important use case of Side by Side extensibility is building the UIs depending on the SAP Fiori user experience platform or combining it with other SAP applications. The user can develop an entirely new app that can run on SAP S/4HANA Cloud, and the application is loosely coupled to SAP S/4HANA via the ABAP Platform. Essential users are provided with the most prominent extensibility patterns to support the line of business-driven adaptation projects.
How Do the On-premise and the Cloud Services Vary in Terms of Available Extensibility?
The SAP Cloud Platform has access to all the prominent patterns of extensibilities and the entire set of developmental tools that provide the highest degree of flexibility. And in the on-premise version, both side-by-side and in-app extensibility approaches are available. But in addition to that, the platform provides security and reliability to the extensions created with ABAP code and the Eclipse IDE.
Extensibilities are fully supported by the SAP S/4HANA Cloud and on-premise version. The main benefit of extensibilities is that they allow the user to either develop their own applications based on the SAP Cloud Platform or use existing tools. A significant problem that might occur while developing applications is to ensure if they will be adequately unified with the system and get decoupled when any updates or changes in the original software are made to reduce any manual interference. The extensibilities are available as In-App or Side by Side features, which have their own use cases.