
ABAP Cloud - Fähigkeiten für den Start
Wann kannst du eigentlich mit moderner ABAP Entwicklung starten und welche Fähigkeiten brauchst du dafür mindestens? Lass uns diese Frage gemeinsam klären.
Inhaltsverzeichnis
In diesem Artikel schauen wir noch einmal im Detail auf die Frage, welche Fertigkeiten werden eigentlich benötigt, um mit der modernen ABAP Entwicklung zu starten? Dabei schauen wir uns verschiedene Szenarien an.
Einleitung
Auf der ABAPConf 2025 wurde die Frage gestellt, welche Fähigkeiten benötigt ein Entwickler, um mit moderner ABAP Entwicklung zu beginnen und möglichst Clean Core und/oder Cloud Ready zu starten. Die Frage war für uns etwas überraschend, da wir meist das komplette Bild der Software Entwicklung vor Augen haben und uns nicht auf das Minimum beschränken, was vielleicht sogar Abstriche in der Qualität bedeutet.
Wie das Titelbild oben zeigt, sollten unsere Stifte immer gespitzt sein, damit wir sie effizient nutzen können. Dazu sollten wir unsere Fähigkeiten ebenfalls regelmäßig verbessern, sodass Qualität und Knowhow stetig besser wird und wir weitere Farbakzente im Portfolio haben.
Einen etwas ähnlichen Artikel hatten wir zu den verschiedenen Rollen auf dem Weg zu ABAP Cloud beschrieben. In diesem Artikel soll es noch einmal um die Frage gehen, wie wir minimal an das Thema herangehen können und uns dann stetig weiterentwickeln.
Stufe 1 - Minimum
Beantworten wir daher erst einmal die Frage, was brauchen wir minimal, um eine Cloudfähige Anwendung zu bauen? In diesem Kapitel schauen wir uns verschiedene Punkt an.
Fertigkeiten
Grundsätzlich müssen wir davon ausgehen, dass wir nicht bei null starten, sondern einen ABAP Entwickler haben, der bereits die klassische Entwicklung beherrscht. Ist dies nicht der Fall, dann sollten die beiden Fähigkeiten vor dem Startpunkt beachtet werden. Grundsätzlich benötigen wir dazu Wissen zum ABAP Dictionary, wie wir Tabellen, Datenelemente und Domänen anlegen. Diese sind Grundlage für das Datenmodell auf dem unsere Anwendungen aufbauen. ABAP OO wird ebenfalls benötigt, da wir für die Implementierung von Verhalten mit Klassen arbeiten.
Als Grundlage benötigen wir dann die ABAP Development Tools, da Core Data Services und die RAP Entwicklung nur in der neuen Umgebung funktioniert. Grundsätzlich würden wir in der aktuellen Zeit auch von einer Einarbeitung in die SE80 abraten, da diese keine Zukunft mehr hat und die Zeit lieber in die neuen Themen gesteckt werden sollte.
Um dann in die Entwicklung einzusteigen, benötigst du Core Data Services um dein Datenmodell zu erstellen und für das UI zu modellieren. Zum Abschluss erstellst du das Verhalten mit dem ABAP RESTful Application Programming Model (RAP) un kannst weiter Funktionen, wie Validierungen, Ermittlungen oder Aktionen anlegen.
Über die Preview Funktion kannst du deine Anwendung dann relativ weit fertigstellen, allerdings musst du für den letzten Schritt dann die IDE wechseln. Das Generieren der Anwendung findet im Business Application Studio (BAS) statt. Hier solltest du ein bisschen Erfahrung mit Fiori Elements haben, um die eigentliche Anwendung und das Deployment zu verstehen.
Grundlagen
Mit dem Minimum kannst du nun die ersten kleinen Fiori Anwendungen auf RAP Basis erstellen. Dabei haben wir aktuell aber einen großen Teil an Knowhow für ABAP Cloud weggelassen. Daher benötigst du eine weitere Person im Unternehmen, welche den Überblick über die Themen hat und den Entwickler weiterführen kann. Diese Person sollte die Konzepte von ABAP Cloud verstanden, das 3-TIER Modell eingeführt und ein Auge auf die verwendeten APIs haben. Ohne diese Grundlagen können immer noch TIER-3 Anwendungen im System entstehen, obwohl du diese vielleicht gar nicht haben möchtest.
Stufe 2 - Qualität
Nachdem wir das Minimum beherrschen, sollten wir das Thema Code Qualität verbessern. Aktuell können wir RAP Anwendungen zur Verfügung stellen, allerdings sind diese nicht gut getestet und wir setzen vielleicht noch auf alte Statements aus der ABAP Entwicklung. Vielleicht sogar hältst du noch keine Best Practice bei der Erstellung deiner Objekte ein.
Es gibt mittlerweile viele Statements in ABAP, die einen Nachfolger erhalten haben. Modern ABAP gibt es schon eine lange Zeit, es lohnt sich aber zu schauen, welche Statements noch aktuell sind und was du vielleicht lassen solltest. Grundsätzlich gibt es jede Menge Neuerungen die es zu Lernen gibt, um noch besser in der Entwicklung zu werden. In dieser Phase solltest du auf das Thema Clean ABAP und ABAP Unit schauen. Clean ABAP wendet viele Best Practices der modernen ABAP Entwicklung an. Mit ABAP Unit schreibst du testbare Anwendungen, die später auch automatisch getestet werden können und so Zeit in der Wartung sparen. Mit ABAP Unit lernst du auch, was wichtig ist, um testbaren Code zu schreiben. Damit kannst du auch später Unit Test ergänzen, auch wenn du im ersten Moment nicht daran gedacht hast.
Im Umgang mit ABAP Cloud sind die freigegebenen SAP Standard APIs sehr wichtig. Wo kannst du die passenden APIs finden? Welche Möglichkeiten hast du zur Implementierung? Wie findest du am besten die Nachfolger zu den klassischen APIs? Diese Fragen sind wichtig, um Clean Core Anwendungen zu erstellen und sauber in TIER-1 zu betreiben. Bist du On-Premise oder in der Private Cloud unterwegs, sollte auch das Thema Wrapper mitbedacht werden.
Reicht dir einmal nicht der Standard Floorplan in Fiori Elements, solltest du nicht gleich mit einer Freestyle Anwendung starten, sondern schauen, dass du deine bestehende Anwendung mit dem Flexible Programming Model erweiterst. Für OData v4 Anwendungen ist das ein einfacher Standard zur Erweiterung deiner Anwendung um zusätzliche Funktionen.
Stufe 3 - Finalisierung
In der letzten Phase geht es dann um die Abrundung der erlangten Fertigkeiten und die Vertiefung verschiedener Fertigkeiten die wir im Alltag als Clean Core Entwickler benötigen.
Dazu solltest du die Theorie von Clean Core beherrschen, die passenden APIs finden und saubere Anwendungen aufbauen können. Das Konzept der Software Komponenten hilft dir dabei eine Struktur in die verschiedenen Erweiterungen im System zu bekommen und die Entwicklungen sauber voneinander zu trennen. Die XCO Bibliotheken sind dann die Meisterklasse der verwendbaren APIs. Sie sind nicht unbedingt einfach zu erlernen, bieten aber eine große Zahl von Möglichkeiten bei der Nutzung.
Ein wichtiger Bestandteil bei der Erweiterung des Systems sind auch die Key User Apps, die normalerweise auch als erstes geprüft werden sollten, bevor du eine Erweiterung im System erstellst. Zur Erweiterung des Standards um neue Felder sind sie die erste Wahl, da sie von der Datenbank über die API bis zur UI die Erweiterung durchführen.
Hast du bisher deine Anwendungen nur On-Premise gebaut, könnte eine weitere Anforderung vielleicht eine Anwendung Side-by-Side sein. In diesem Fall solltest du die BTP und die verschiedenen Möglichkeiten kennen, um solche Anwendungen mit RAP oder vielleicht auch CAP umsetzen zu können. Würden wir uns dabei auf das Minimum beschränken, würden wir zum Einstieg auch RAP mit dem SAP BTP ABAP Environment empfehlen, einfach weil sonst noch einmal eine große Menge an Themen gelernt werden müsste.
Führung
Wir empfehlen dir trotzdem ein Blick auf das Ganze zu halten. Mit einem Minimum kannst du zwar in der Entwicklung starten, allerdings fehlen dann Punkte wie Software Qualität und Governance über das Thema Clean Core. Daher können wir dir noch die folgenden Themen zum Weiterlernen empfehlen:
- Learning Roadmap - Enthält den kompletten Überblick und den Weg Richtung ABAP Cloud und Clean Core.
- ABAP Cloud Konzepte - Verstehen der Konzepte die möglich sind und was du besser nicht mehr verwenden solltest. Gibt dir einen Überblick über die zahlreichen Nachfolger zu den verschiedenen Bereichen.
- Rollen - Ein Artikel, der die Learning Roadmap noch einmal in die verschiedenen Rollen unterteilt und dir Hilfe bei den zu lernenden Themen geben soll.
- Neue Themen - Du möchtest die neuen Themen lernen und suchst nach verschiedenen Quellen? In diesem Artikel gehen wir auf verschiedene Facetten ein.
- Persönliche Entwicklung - Zum Abschluss macht jeder auch eine persönliche Entwicklung durch. Dabei gibt es verschiedene Phasen der Verantwortung und von Wissen, dazu ein kleiner Guide.
Fazit
Für den Einstieg in die moderne Entwicklung benötigst du nicht viele verschiedene Fähigkeiten, die Themen haben aber auch bereits eine steile Lernkurve. Hast du die ersten Themen gemeistert, solltest du allerdings weiter in Code Qualität und Effizienz investieren.