ABAP Development Days der DSAG – Tag #2: Steampunk
Tag 2 der ABAP Development Days der DSAG in 2020 – der Fokus des Tages: Das SAP Cloud Platform ABAP Environment, oder auch Steampunk oder ABAP Platform-as-a-Service (ABAP PaaS) genannt. Der Start des virtuellen Thementages begann direkt mit dem allseits bekannten Übersichtsbild zur Architektur SAP Cloud Platform (SCP) rund um On-Premises-S/4HANA-Systeme, abapGit, Cloud-Systeme – und wie hier Steampunk für die Connectivity sorgt.
Auch in diesem Beitrag gehe ich, wie schon bei meinem Blogbeitrag zu Tag 1, die Agenda durch:
Steampunk Teil I – Use Cases
Im ersten Vortrag wurden die unterschiedlichen Use Cases vorgestellt, für die Steampunk bisher eingesetzt wurde. Dabei gab es stets eine von SAP präsentierte Referenz eines Kunden oder Partners, die dieses Projekt gemeinsam umgesetzt haben. Eine wichtige, fast schon ketzerische Frage, die erstmal beantwortet werden muss: Welche Existenzberechtigung hat Steampunk in der Praxis?
S/4HANA Cloud erweitern
Hier stellte uns die DSAG eine Kundenreferenz aus dem asiatischen Raum vor. Der Kunde hat durch einen Partner eine Erweiterung der S/4HANA Cloud mittels SCP ABAP Environment im Bereich Finance realisiert. Die an die S/4HANA Cloud angebundene koreanische Cloud-Lösung im Bereich Finance stellt OData-Schnittstellen bereit. So stellte die Integration mit der SCP keine Herausforderung mehr dar.
Der Partner für das Projekt hatte hiermit ebenfalls sein erstes Projekt im Bereich SAP Cloud Platform ABAP Environment. Während des Projekts hat er sich das Know-how komplett eigenständig erarbeitet, indem er Cloud-Architekten und ABAP-On-Premises-Entwickler in Teams organisiert hat. Scheinbar also gar keine so große Magie.
Steampunk als innovative Plattform (PaaS)
Dieses Mal kam das Projektbeispiel aus der Chemiebranche. Dieser Kunde hat seine On-Premises-Prozesse in die SCP verlagert und durch einen Partner in eine komplette Fiori Suite umsetzen lassen. Diese Suite, die der Kunde hier vom Partner bereitgestellt bekommen hat, hat eine Vielzahl an Fiori-Applikationen und ein eigenes Launchpad. Die Auslieferung der Software folgte in den Subaccount des Kunden (Cloud Foundry), sodass die Lösung in der eigenen SCP betrieben wird. Damit ist Steampunk eine gute Möglichkeit, um unabhängig von der eigenen SAP On-Premises-Landschaft und den Releases innovative Applikationen zu bieten, die ebenfalls exzellent von Partnern implementiert und ausgeliefert werden können.
Verwendung als Hub
Das Szenario kennzeichnet sich dadurch, dass die jeweiligen Applikationen eigenständig auf der SCP betrieben und mehrere Systeme (Cloud/On-Premises) integriert werden und externe Benutzer direkt mit der SCP agieren. Ein SAP-Partner, der schon lange mit seinem Add-on im On-Premises-Bereich etabliert ist, hat sich dafür entschieden, seine Suite in die Cloud zu bringen und die Custom Migration zur SAP Cloud Platform zu verfolgen. Die Lösung, die migriert werden soll, ist mit ca. 30.000 Dictionary Objekten und 900 Klassen riesig. Hier stehen für die Cloud aber mit der HANA-Plattform, Fiori als UI, neuer ABAP-Syntax und Integrationsthemen die gleichen Themen auf dem Plan wie auch für die S/4HANA Transition. Das Fazit bzw. die Empfehlung des Partners ist, so früh wie möglich die Entwicklungen „ready“ zu entwickeln und nicht zu viel Respekt davor zu haben: Viele Anpassungen sind schnell gemacht und es ist kosteneffizienter, zu migrieren, statt neu zu entwickeln.
Steampunk Teil II – Steampunk als Produkt
Frank Jentsch, Chief Development Architect von SAP, hat uns das Themengebiet rund um Steampunk mit Herausforderungen und dem technologischen Ausblick vorgestellt. Die Highlights:
- Wer noch nichts von Steampunk gehört hat: Der Begriff steht für die Nutzung der SAP Cloud Platform ABAP Environment als Platform as a Service, also im Prinzip ABAP in der Cloud. Mehr ist es nicht.
- Custom Code Challenge #1 – Steampunk enthält nur die Komponenten SAP_BASIS und SAP_ABA, also müssen die Anwendungen von der Anwendungsschicht entkoppelt werden.
- Custom Code Challenge #2 – Fiori only on Steampunk.
- Custom Code Challenge #3 – Es gibt eine „Whitelist“ von verwendbaren SAP Objekten, auf die geachtet werden muss.
- Custom Code Challenge #4 – ABAP als Sprache kann nur im limitierten Sprachumfang genutzt werden.
Im Anschluss wurde „nur“ die Roadmap für Steampunk vorgestellt und mit mehr Details erläutert. Die finden Sie auch unter: https://blogs.sap.com/2019/06/19/the-abap-platform-strategy/.
Steampunk Teil III – Custom Code Adaptation
Im dritten Vortrag ging es um die Möglichkeiten zur Custom Code Migration zur SAP Cloud Platform für die ABAP Environment im Rahmen der S/4HANA-Transition. Die ersten inhaltlichen Blöcke überspringe ich an dieser Stelle, da wir hier die üblichen Schritte einer S/4HANA-Transition bzw. des Custom Code Managements durchgegangen sind.
Spannender wurde es beim ersten Hinweis: Seit S/4HANA 1809 gibt es eine umfangreiche Fiori App, die die Custom Migration aufbereitet und im Hintergrund das ATC-System aufruft. Das mag für die meisten noch nicht neu sein, was aber noch folgt, sicher schon:
Die Fiori-Applikation bietet eine Custom-Code-Complexity-Analyse. Diese analysiert den kompletten Custom Code hinsichtlich der Komplexität, um einen Überblick zu bekommen, wie viel Aufwand für die Migration bei welchem Custom Code entsteht. Hier wird ein bestehender ATC-Check (Halstead Metrik) genutzt. Leider kommt hier kein konkreter Aufwand raus, sondern nur ein Indikator dessen. Die grafischen Darstellungen sind allerdings beeindruckend ansprechend.
Die Applikation bietet hier sogar die Erstellung von Löschtransporten für Custom Code, wenn dieser nicht übernommen werden soll. Sind alle Findings verarbeitet, kann die Conversion auf das neue S/4HANA-System genutzt werden. Im Anschluss empfiehlt die DSAG, mittels ABAP Development Tools via Quick Fixes mit wenig Aufwand (sogar als Massenoperation) die nötigen Anpassungen am eigenen Code vorzunehmen.
Zum Schluss haben wir noch die Custom Code Migration zur SAP Cloud Platform ABAP Environment mittels Fiori-App beleuchtet. Um den verarbeiteten Code final auf die SCP zu bringen, kann dann abapGIT für den Transport genutzt werden. Auch hier bietet die SAP Möglichkeiten, diesen Weg unterstützt durch Software zu gehen.
Steampunk Teil IV – Hands On!
Im letzten Teil des Tages haben wir uns auf einer Trial Version von Steampunk in einer durch SAP Enable Now geführten Übung durch die Technologien Core Data Services, OData und Fiori Elements mit einem Beispiel gearbeitet. Das Ergebnis war eine simple Inventur-App, die mit CDS-Views, einer Datenbanktabelle, einem angebundenen Webservice und einer Suchhilfe ausgestattet ist. Dabei haben ein Framework von SAP (eine entwickelte Klasse), viele Anlagen von Objekten (bspw. CDS Views) und viele Code-Snippets sehr stark geholfen. Mein Fazit und Feedback: Ein gutes Ergebnis, aber leider habe ich mir davon wenig mitgenommen.
Waren Sie auch dabei? Was interessiert Sie zum Thema Steampunk? Hinterlassen Sie gerne einen Kommentar.