Christoph Lordieck
 - 25. September 2019

Clean ABAP

Clean ABAP beschreibt die Anwendung von Clean-Code-Prinzipien in der ABAP-Entwicklung. Die Prinzipien zielen auf die Entstehung von intuitiv verständlichem Code, leicht wartbaren sowie effizient zu erweiternden und zu optimierenden Programmen.

Entstehungsgeschichte von Clean ABAP

Schlechte Codequalität kostet Unternehmen jedes Jahr viele tausend Euro. Dass Programme fehlerfrei funktionieren, bedeutet nicht zwingend, dass der Quellcode gut geschrieben ist. Auch schwer verständlicher, redundanter und unnötig komplizierter Code kann zum gewünschten Ergebnis führen. Doch über die Lebensdauer der Software entstehen hohe Folgekosten. Die Anwendung stellt sich als schlecht wartbar heraus, Fehlerbehebungen sind aufwändig und Anpassungen sowie Erweiterungen nehmen viel Zeit in Anspruch, die bei effizienterer Programmierung in neue Entwicklungen hätte fließen können.

E-Book: ABAP Entwicklungsrichtlinien

Richtlinien zur Programmierung und Praxistipps zum Thema APAP-Entwicklung.

Unser E-Book zu den ABAP Entwicklungsrichtlinien

Vor diesem Hintergrund ist das Paradigma „Clean Code“ entstanden. Robert C. Martin hat 2008 in seinem Buch „Clean Code: A Handbook of Agile Software Craftsmanship“ einen Standard für Clean Programming beschrieben, der von vielen Unternehmen und Entwicklern übernommen und individualisiert wurde. Im Laufe der Jahre ist daraus eine Bewegung innerhalb der Entwickler-Community entstanden, die sich für die Verbreitung und Weiterentwicklung von Clean Code einsetzt.

Definition: Clean ABAP

Clean ABAP bezeichnet die Anwendung der Clean-Code-Prinzipien in der ABAP-Entwicklung. Unternehmen orientieren sich dabei am Standardwerk „Clean Code“ von Robert C. Martin und passen die verschiedenen Richtlinien so an, dass sie ihrer Unternehmenssituation bestmöglich gerecht werden.

Zur Inspiration, wie Unternehmen Clean ABAP umsetzen können, haben Entwickler auf GitHub einen Styleguide veröffentlicht, in dem ABAP Best Practices festgehalten sind. Das Dokument ist ein Open-Source-Projekt und wird von der Entwickler-Community kontinuierlich verbessert und überarbeitet.

Die Best Practices beziehen sich unter anderem auf:

  • Methoden
  • Sprachen
  • Konstanten
  • Variablen
  • Fehlerbehandlung
  • Kommentierung

Es geht bei den empfohlenen Standards meist nicht um große, sondern vielmehr um kleine, aber wirkungsvolle Änderungen.

Beispiele für Clean ABAP Best Practices

Ein zentrales Prinzip von Clean Code ist: Don’t Repeat Yourself (DRY). Häufig wird eine Information an mehreren Stellen im Code abgebildet. Das mag bequem sein, führt aber dazu, dass Änderungen, an vielen unterschiedlichen Stellen durchgeführt werden müssen, was Zeit kostet.

Die sprechende Benennung von Variablen zum Beispiel erleichtert das Lesen von Code enorm und verkürzt die Zeit für Einarbeitung. Es empfiehlt sich, Substantive für Klassen und Verben für Methoden zu verwenden.

Funktionen sollten ausschließlich das tun, was man nach Lesen der Bezeichnung erwartet oder von Funktionen und Methoden des gleichen Musters gewohnt ist (Prinzip der geringsten Überraschung). In einer Funktion sollte auch immer nur eine Abstraktionsebene behandelt werden. Auch die konsequente Anwendung von objektorientierten Prinzipien gehört zu den Empfehlungen von Clean Code. Den vollständigen Styleguide können Sie auf GitHub ansehen.

Anwendungsgebiete von Clean ABAP

Clean ABAP lässt sich in jedem Unternehmen anwenden, in dem Entwickler in ABAP programmieren oder Wartungen vornehmen. Da es sich um eine Sammlung von individuell anpassbaren Praxisempfehlungen handelt, sind keine besonderen Systemanforderungen Voraussetzung für den Einsatz.

Jedes Unternehmen profitiert von einer besseren Lesbarkeit des Codes. Je größer die Rolle der ABAP-Anwendungen im Unternehmen, desto größer die positiven Auswirkungen. Grundsätzlich ist die Umsetzung der Prinzipien jedoch in jeder Organisation erstrebenswert.

Vorteile

Clean ABAP ist nicht nur eine Strategie, um Entwicklern das Arbeiten angenehmer zu gestalten, sondern führt zu klar bezifferbaren monetären Einsparungen für Unternehmen.

Voraussetzung ist allerdings, dass in der Organisation klare Regeln auf Basis der Clean-Code-Prinzipien definiert werden und das daraus erstellte Regelwerk unternehmenswert und konsequent von allen Entwicklern verwendet wird.

Ist das der Fall, verkürzt sich der Wartungsaufwand für bestehende Anwendungen, kann Code auch von neuen Entwicklern problemlos verstanden und können interne Ressourcen effizient eingesetzt werden.

Vorteile auf einen Blick:

Um die Vorteile von Clean ABAP in der Entwicklung nachhaltig spürbar zu machen, sollten Unternehmen zu Beginn regelmäßig Zeit für Refaktorisierung einplanen – damit nicht nur neuer Code, sondern vor allem der bestehende Code den neuen Standards angepasst werden kann.

Einführung

Umfangreiche Schulungen sind in der Regel nicht erforderlich, um Clean ABAP zum Arbeitsstandard zu machen. Es genügt, wenn sich ein Mitarbeiter oder eine Steuerungsgruppe in die Materie einarbeitet, ein Regelwerk entwickelt und dieses den internen Entwicklern als Leitlinie für ihre Arbeit zur Verfügung stellt.

Da die Prinzipien einfach verständlich sind, sollte jeder Entwickler in der Lage sein, sie ohne Weiteres umzusetzen. Zunächst ist mit einer geringfügigen Beeinträchtigung der Arbeitsgeschwindigkeit zu rechnen, doch schnell werden die neuen Konventionen in den Workflow der einzelnen Entwickler übergehen, sodass sich die investierte Zeit auszahlt. Wer Unterstützung bei der Entwicklung eines Regelwerks bzw. der Einführung von Clean ABAP benötigt, kann sich an das Team von Erlebe Software wenden.

Fazit

Seit der Veröffentlichung der Clean-Code-Prinzipien wächst das Interesse von Unternehmen und ihre Verbreitung in Organisationen kontinuierlich. Das ist wenig überraschend, da Clean Code eine Lösung für ein immer drängenderes Problem bietet: Riesige Mengen Quellcode handhabbar zu machen.

Die Menge an produziertem Code ist in den vergangenen Jahren exponentiell gestiegen und wird auch in Zukunft weiter zunehmen. Dabei hat die gesellschaftliche und wirtschaftliche Bedeutung von Software zugenommen. Die Konsequenzen von fehlerhafter Software sind aufgrund der Einsatzzwecke heute gravierender als noch vor dreißig Jahren.

Vor diesem Hintergrund ist es eine Notwendigkeit, Strategien anzuwenden, um Code effizient und personenunabhängig zu warten und Fehler schnell zu lösen.

Christoph Lordieck

Christoph Lordieck

Mein Name ist Christoph Lordieck. Einige Jahre Projekt- und Umsetzungserfahrung hat meinen Wissenshunger noch nicht gestillt und ich suche ständig nach neuen Themen und technischen Entwicklungen im ABAP Umfeld. Ich freue mich auf Ihre Frage oder Anregung!

Sie haben Fragen? Kontaktieren Sie mich!


Das könnte Sie auch interessieren

Für eine komplette Migration auf SAP S/4HANA Finance müssen Sie alle bestehenden Komponenten durch ihr "Gegenstück" in der neuen Welt von SAP S/4HANA Finance ablösen, beziehungsweise sich das folgend beschriebene Upgrade zu Nutze machen.

weiterlesen

Die Digitalisierung schreitet weltweit voran. Mit ihr ergeben sich neue Herausforderungen und Anforderungen an die Finanzwelt. Mit dem S/4HANA Cash Management bietet die SAP umfassende Tools, die Ihr Cash Management in der heutigen Welt und für die Zukunft verbessern und […]

weiterlesen

SAP S/4HANA ist die vierte und damit neueste Generation des SAP Kernprodukts zur ERP. Nach den vorherigen Produktgenerationen R/2, R/3 und SAP ERP wurde S/4HANA vor seiner Veröffentlichung überschwänglich als „das nächste große Ding“ angekündigt. Tatsächlich soll S/4HANA eine sehr […]

weiterlesen

Mehr von unseren Partnern


Unsere Produkte zu Clean ABAP

Was müssen ABAP Entwickler wissen, wenn sie Applikationen für die SAP HANA Datenbank vorbereiten, entwickeln und optimieren wollen?

Mehr Informationen

Sie wollen die ABAP-Entwicklung effizienter gestalten? In einem unverbindlichen Gespräch zeigen wir Ihnen gerne die Möglichkeiten auf, die das neue SAP BOPF Framework bietet.

Mehr Informationen

Haben Sie ein gutes Gefühl was die Code-Qualität Ihrer Kundenentwicklungen im SAP angeht? Wenn bei Lesbarkeit, Dokumentation, Modularisierung oder systematischer Transport- & Releasestrategie noch Luft nach oben ist, dann sollten wir uns unterhalten.

Mehr Informationen

Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Angebot anfordern
Preisliste herunterladen
Expert Session
Support