Extensibilité side-by-side
L'extensibilité side-by-side est l'approche d'extension de SAP dans laquelle les applications spécifiques s'exécutent en dehors de SAP S/4HANA, généralement sur SAP BTP, et se connectent à l'ERP au moyen d'API distantes libérées et d'événements au lieu de modifier son code. Les extensions side-by-side sont faiblement couplées : elles ont leur propre runtime, leur propre cycle de vie et leur propre pile technologique, comme ABAP, Java ou Node.js.
L'essentiel
- Type
- Option d'extensibilité (faiblement couplée, off-stack)
- Couche
- SAP BTP (couloir latéral), à côté de la pile SAP S/4HANA
- S'exécute sur
- SAP BTP : environnement Cloud Foundry, Kyma ou ABAP
- Se connecte via
- API distantes libérées et business events
- Outils typiques
- SAP Build Code (CAP, SAPUI5, SAP Fiori elements), SAP Build Apps, environnement SAP BTP ABAP
- Qui l'utilise
- Développeurs, architectes d'extensibilité, équipes d'intégration
- S'applique à
- SAP BTP avec SAP S/4HANA dans toutes les options de déploiement
Couche : SAP BTPOù se situe-t-il ? ▾
Couche : SAP BTP
Ouvrir la carte d'architecture →Comment fonctionne l'extensibilité side-by-side ?
Une extension side-by-side est une application distincte qui traite SAP S/4HANA comme un système avec lequel elle communique, et non comme du code qu'elle modifie :
- L'extension est construite et déployée sur SAP BTP, dans le runtime et le langage adaptés au cas d'usage : ABAP dans l'environnement SAP BTP ABAP, ou Java et Node.js, par exemple avec CAP.
- Elle lit et modifie les données SAP S/4HANA uniquement au travers d'API distantes libérées, que SAP documente sur le SAP Business Accelerator Hub.
- Elle peut réagir aux business events publiés par SAP S/4HANA, ce qui lui évite d'interroger le système à intervalles réguliers pour détecter les changements.
- La connectivité et la confiance sont configurées entre SAP BTP et l'ERP : destinations, plus SAP Cloud Connector pour les systèmes on-premise.
- L'extension a son propre cycle de vie. Elle est déployée, dimensionnée et mise à jour indépendamment des releases de SAP S/4HANA.
L'extensibilité side-by-side transforme donc une extension en un problème d'intégration doté de sa propre application, plutôt qu'en une modification à l'intérieur de l'ERP.
Quels types d'extensions side-by-side sont courants ?
Les recommandations de SAP en matière d'extension distinguent plusieurs archétypes d'applications side-by-side :
- Applications proxy et de confort, qui simplifient ou remodèlent l'accès à SAP S/4HANA pour un public précis.
- Applications de substitution, qui remplacent une étape standard par une étape spécifique.
- Applications de prétraitement et de post-traitement, qui préparent les données avant qu'elles n'atteignent l'ERP ou agissent sur ce que l'ERP a produit.
- Applications analytiques, qui combinent les données SAP S/4HANA avec d'autres sources.
Les modèles typiques comprennent les applications full-stack pour un seul client, les applications SaaS multitenant construites par des partenaires, les scénarios hub qui relient plusieurs systèmes ERP ou services cloud, les applications mobiles et l'automatisation entre systèmes. Chez Alder Manufacturing, un portail de suivi des livraisons pour les chauffeurs de Bright Freight, qui n'ont pas d'utilisateur SAP S/4HANA, est un cas side-by-side naturel. L'extensibilité side-by-side convient le mieux lorsque l'extension sert de nouveaux utilisateurs, de nouveaux canaux ou plusieurs systèmes.
Quels sont les atouts de l'extensibilité side-by-side ?
- Clean core par construction. L'ERP n'est pas modifié, et l'extension ne dépend que d'API et d'événements libérés.
- Cycle de vie indépendant. L'extension peut être livrée chaque semaine tandis que SAP S/4HANA suit son propre calendrier de releases, et les mises à niveau de SAP S/4HANA ne touchent pas à son code.
- Libre choix de la pile. Les équipes peuvent utiliser ABAP, Java ou JavaScript et les services SAP BTP adaptés, de SAP Build Apps à CAP.
- Une portée au-delà des utilisateurs SAP. Partenaires externes, fournisseurs et clients peuvent utiliser l'extension sans compte SAP S/4HANA.
- Périmètre multisystème. Une même application peut combiner SAP S/4HANA avec d'autres systèmes SAP et non-SAP.
Pour les extensions qui ont leur propre public, leurs propres besoins de montée en charge ou leur propre rythme de releases, l'extensibilité side-by-side est l'option que SAP positionne sur SAP BTP.
Où s'arrête l'extensibilité side-by-side ?
- Pas de transaction partagée. Un appel distant ne peut pas modifier les données SAP et les données spécifiques dans une même unité de travail : la cohérence doit donc être conçue avec des compensations ou des relances.
- Limitée par les API distantes. Si aucune API ou aucun événement libéré ne couvre l'opération nécessaire, l'extension ne peut pas y accéder proprement ; il faudra peut-être d'abord construire une API ABAP Cloud on-stack.
- Davantage de pièces mobiles. Connectivité, propagation d'identité, supervision et exploitation s'ajoutent pour chaque extension.
- Volume de données et latence. Lire de grandes quantités de données SAP, ou multiplier les appels de faible granularité, est plus lent et plus coûteux qu'un accès on-stack.
- Un second cycle de vie à assumer. Chaque extension a besoin d'un responsable, d'un budget et d'un modèle de support après la mise en production.
L'extensibilité side-by-side garde le cœur propre en déplaçant la complexité dans le paysage qui l'entoure, où elle doit toujours être gérée.
Quand une extension doit-elle être side-by-side plutôt qu'on-stack ?
Les recommandations d'architecture d'extension de SAP proposent un test pratique. Caractéristiques qui orientent vers chaque option :
| Oriente vers le side-by-side sur SAP BTP | Oriente vers l'on-stack (key user ou ABAP Cloud) |
|---|---|
| Utilisateurs sans compte SAP S/4HANA | Modifie les données SAP et les données spécifiques dans une même transaction |
| Cycle de vie, montée en charge et releases fréquentes propres | Lit de gros volumes de données avec des jointures complexes |
| Application autonome ou étape de processus découplée | Nombreux allers-retours vers les données SAP |
| Données spécifiques indépendantes des tables SAP | Étend les champs, la logique ou l'interface d'une application SAP |
De nombreux besoins nécessitent les deux : un service ABAP Cloud on-stack qui expose une API distante spécifique, et une application side-by-side qui la consomme. La décision se prend besoin par besoin, et le couplage aux données SAP S/4HANA est le critère déterminant.
Qu'est-ce qui change entre SAP S/4HANA Cloud et l'on-premise ?
- SAP S/4HANA Cloud Public Edition : le service SAP S/4HANA Cloud Extensibility sur SAP BTP relie un système enregistré à un subaccount, avec le service plan api-access pour les API et le plan messaging pour les événements ; pour les connexions entrantes, une destination HTTP est générée lors de la création de l'instance de service.
- Private Edition et on-premise : SAP Cloud Connector et les destinations relient SAP BTP au système, et les API OData libérées sont activées sur SAP Gateway ; les événements quittent le système via le composant Enterprise Event Enablement.
- Toutes les éditions : pour les appels exécutés sous l'identité de l'utilisateur connecté, la principal propagation est configurée, avec une authentification unique (single sign-on) via SAP Cloud Identity Services pour la Public Edition et via le Cloud Connector pour la Private Edition et l'on-premise.
Le modèle d'extension est identique d'une édition à l'autre ; seules la connectivité, la configuration des événements et celle de la confiance diffèrent.
Extensibilité side-by-side ou extensibilité key user : quelle différence ?
| Extensibilité side-by-side | Extensibilité key user | |
|---|---|---|
| Où elle s'exécute | En dehors de SAP S/4HANA, généralement sur SAP BTP | Dans SAP S/4HANA |
| Qui la construit | Développeurs ou business technologists | Key users et consultants fonctionnels |
| Couplage | Faible : API distantes libérées et événements | Fort : même système, même transaction |
| Usage typique | Nouvelles applications, utilisateurs externes, logique multisystème | Champs, contrôles, valeurs par défaut, modifications d'écran |
| Cycle de vie | Déploiement et cycle de releases propres | Transportée avec le système SAP S/4HANA |
L'extensibilité key user adapte ce que SAP S/4HANA fait déjà ; l'extensibilité side-by-side construit quelque chose de nouveau à côté.
Questions fréquentes
L'extensibilité side-by-side est-elle la même chose que SAP BTP ?
Non. SAP BTP est la plateforme ; l'extensibilité side-by-side est une manière de l'utiliser, pour des extensions qui s'exécutent en dehors de SAP S/4HANA et se connectent via des API et des événements libérés. SAP BTP héberge aussi des services d'intégration, des sites launchpad, des services de données et d'IA qui ne sont pas des extensions side-by-side.
L'extensibilité side-by-side fonctionne-t-elle avec SAP S/4HANA on-premise ?
Oui. Les extensions sur SAP BTP atteignent les systèmes on-premise et Private Edition via SAP Cloud Connector et des destinations, en utilisant les API OData et SOAP libérées actives dans ce système. Les systèmes Public Edition se connectent, eux, via le service SAP S/4HANA Cloud Extensibility.
Une extension side-by-side peut-elle écrire des données dans SAP S/4HANA ?
Oui, via des API distantes libérées qui prennent en charge la création, la mise à jour ou des actions. L'écriture a lieu dans un appel distinct : l'extension ne peut donc pas la combiner avec ses propres modifications de base de données dans une même transaction et doit gérer elle-même les échecs, les relances et les mises à jour partielles.
Le side-by-side est-il toujours plus propre que l'extensibilité on-stack ?
Pas automatiquement. Une extension side-by-side n'est propre pour l'ERP que si elle utilise des API libérées. Si elle a besoin de cohérence transactionnelle ou d'un accès intensif aux données, une extension ABAP Cloud on-stack est souvent plus simple, et les deux approches respectent le clean core lorsqu'elles reposent sur des objets libérés.
Sources
- SAP Help Portal: Side-by-side extensibility (ABAP platform)
- SAP Help Portal: Extension use case patterns — on-stack vs. side-by-side (Extension Architecture Guide)
- SAP Help Portal: Extending SAP S/4HANA Cloud in the Cloud Foundry and Kyma environment (SAP BTP)
- SAP Help Portal: ABAP Cloud and the extensibility options compared
- SAP Help Portal: Create a Service Instance to Consume the SAP S/4HANA Cloud APIs (api-access plan)
- S'applique à
- SAP BTP · SAP S/4HANA on-premise · SAP S/4HANA Cloud Private Edition · SAP S/4HANA Cloud Public Edition
- Dernière relecture