Wie passen agile Methoden zur klassischen SAP-Entwicklung?

Die SAP-Welt war lange Zeit ein Bollwerk der klassischen Wasserfall-Methodik. Projekte wurden detailliert geplant, Spezifikationen monatelang erstellt und Entwicklungen erst nach umfangreichen Testphasen produktiv gesetzt. Doch die Realität sieht heute anders aus: Business-Anforderungen ändern sich rasant, Innovationen müssen schneller umgesetzt werden, und Nutzer erwarten eine kontinuierliche Verbesserung ihrer Anwendungen. Hier kommt Agilität ins Spiel.

Agile Methoden wie Scrum oder Kanban haben in vielen Bereichen der Softwareentwicklung längst Einzug gehalten. Doch wie lassen sie sich in die SAP-Entwicklung integrieren, wo monolithische ERP-Systeme und strikte Governance-Vorgaben dominieren? Die Antwort liegt in einer geschickten Kombination aus bewährten SAP-Technologien und modernen agilen Prinzipien.

CloudDNA Bücher

Agiles Arbeiten mit SAP-Technologien: Von ABAP über CDS Views bis zur BTP

ABAP-Entwicklung: Vom Monolithen zur agilen Codebasis

Traditionelle ABAP-Entwicklung ist oft von starren Transportwegen und komplexen Freigabeprozessen geprägt. Doch auch hier kann Agilität Fuß fassen:

  • Modulare Entwicklung mit ABAP OO: Statt riesige Codeblöcke zu bauen, setzt man auf kleine, wartbare Klassen und Methoden.
  • Testgetriebene Entwicklung (TDD): Automatisierte Unit-Tests mit ABAP Unit helfen, Fehler frühzeitig zu erkennen.
  • Feature-Toggles und iterative Releases: Neue Funktionen werden über Parameter steuerbar gemacht und schrittweise ausgerollt.

Agile CDS Views: Datenmodellierung mit schnellem Feedback

Core Data Services (CDS) sind das Rückgrat moderner SAP-Architekturen. Hier lassen sich agile Prinzipien besonders gut anwenden:

  • Iterative Entwicklung von Datenmodellen: Statt alles auf einmal zu designen, werden CDS Views inkrementell erweitert.
  • Direkte Nutzung für Fiori-Apps: Entwickler können ihre Modelle direkt für analytische oder transaktionale Anwendungen verwenden.
  • Testbarkeit mit ABAP SQL Tests: Automatisierte Tests validieren die Konsistenz der Datenmodelle.

SAP UI5: Agile Entwicklung für moderne User Interfaces

Bei SAP UI5 und Fiori liegt der Fokus ohnehin auf agiler Entwicklung, da sich UI-Anforderungen oft kurzfristig ändern. Hier sind die wichtigsten agilen Prinzipien:

  • Komponentenbasierte Entwicklung: Wiederverwendbare UI5-Controls ermöglichen schnelle Anpassungen.
  • Continuous Deployment von UI-Änderungen: Dank der Trennung von Backend und Frontend können UI-Updates unabhängig erfolgen.
  • Nutzerzentrierte Entwicklung mit Design Thinking: Iterative Feedbackschleifen verbessern die Benutzerfreundlichkeit.

SAP BTP: Der Enabler für agile Entwicklungen

Die SAP Business Technology Platform (BTP) spielt eine zentrale Rolle bei der Umsetzung agiler Methoden:

  • Entwicklung in der Cloud: Entwickler können unabhängig von On-Premise-Systemen arbeiten und schneller iterieren.
  • Containerisierung mit Kyma und Kubernetes: Microservices-Architekturen erleichtern agile Deployments.
  • Low-Code/No-Code-Ansätze: Tools wie SAP Build ermöglichen es, Anwendungen schnell zu prototypisieren und live zu testen.

CI/CD, Testing und iterative Entwicklung im SAP-Kontext

Continuous Integration & Deployment (CI/CD) für SAP

CI/CD ist ein Kernprinzip agiler Entwicklung und mittlerweile auch in der SAP-Welt angekommen:

  • ABAP Git-Integration: Mit abapGit können Entwicklungen versioniert und in Git-Repositories verwaltet werden.

  • CI/CD-Pipelines mit SAP BTP und Jenkins: Automatisierte Builds und Tests ermöglichen eine schnelle Bereitstellung neuer Features.

  • Transportautomatisierung mit CTS+ und gCTS: Manuelle Transporte gehören der Vergangenheit an.

Automatisiertes Testing als Agilitäts-Booster

Tests sind der Schlüssel zu einer stabilen agilen Entwicklung. In der SAP-Welt gibt es verschiedene Möglichkeiten:

  • ABAP Unit und ATC: Statische Code-Analysen und Unit-Tests stellen Code-Qualität sicher.

  • OPA5 und QUnit für UI5-Apps: Frontend-Tests helfen, UI-Probleme frühzeitig zu identifizieren.

  • Integrationstests mit SAP Cloud ALM: End-to-End-Tests für komplexe Prozesse.

Iterative Entwicklung und Feedback-Zyklen

Agilität bedeutet kontinuierliches Feedback und schnelle Iterationen. SAP bietet hier verschiedene Ansätze:

  • Feature-Toggles für kontrollierte Auslieferung: Neue Funktionen lassen sich selektiv aktivieren.

  • SAP Fiori Elements für flexible Anpassungen: Änderungen an der UI können über Metadaten erfolgen, ohne Code zu ändern.

  • SAP Build Apps für schnelle Prototypen: Low-Code-Ansätze beschleunigen Entwicklungszyklen.

Zusammenfassung: Agilität in der SAP-Entwicklung

Die klassische SAP-Entwicklung war lange von schwerfälligen Prozessen geprägt. Doch mit modernen Methoden, von modularer ABAP-Entwicklung über agile UI5-Prozesse bis hin zu cloudbasierten CI/CD-Pipelines, kann Agilität auch in der SAP-Welt erfolgreich etabliert werden. Unternehmen, die SAP-Systeme modernisieren wollen, sollten sich mit agilen Prinzipien auseinandersetzen – denn die Anforderungen an Geschwindigkeit, Flexibilität und Qualität werden weiter steigen.