5 Tipps für erfolgreiche ABAP Code-Reviews
Peer-Code-Reviews sind ein fester Bestandteil der meisten Entwicklungsabläufe, und da immer mehr ABAP-Teams die agile Methodik übernehmen, ist dies auch in vielen SAP-Entwicklungsteams zum Standard geworden.
Bei einer Codeüberprüfung prüft ein anderes Teammitglied Ihre Änderungen auf Fehler und mögliche Verbesserungen, bevor die Entwicklungsarbeit zur Freigabe eingereicht wird. Dies ist zwar von Natur aus eine zeitaufwändige Tätigkeit, aber die Investition lohnt sich, denn sie hat viele Vorteile. Es hilft, Fehler früher zu erkennen, stellt sicher, dass schlechte Praktiken nicht in die Codebasis eindringen und fördert auch den Wissensaustausch im Team.
Im Folgenden finden Sie einige einfache Tipps, um den (ABAP-)Code-Review-Prozess weniger aufwendig und effektiver zu gestalten.
1. Halten Sie es kurz und nehmen Sie sich Zeit
Die Durchführung eines Code-Reviews ist eine geistig anstrengende Aufgabe für den Reviewer, und wie bei den meisten ähnlichen Aktivitäten nimmt die Effektivität des Prozesses mit der Zeit drastisch ab. Die meisten Studien sind sich einig, dass Peer-Review-Sitzungen nicht länger als eine Stunde dauern und nicht mehr als 200-500 Codezeilen (LOC) in einer Sitzung überprüft werden sollten.
Untersuchungen haben außerdem ergeben, dass die Wahrscheinlichkeit, Fehler im zu prüfenden Code zu entdecken, wesentlich höher ist, wenn die Prüfgeschwindigkeit unter 500 LOC/Stunde gehalten wird.
2. Automatisieren, automatisieren, automatisieren
Die Zeit der Entwickler:innen ist teuer, daher sollten sich Peer Reviews auf die Bewertung von Aspekten des Codes konzentrieren, die menschliches Verständnis erfordern, wie Klarheit, Lesbarkeit, Architektur und Logik.
Es ist sehr empfehlenswert, einen Entwicklungs- und Genehmigungsprozess einzurichten, bei dem Stilkonventionen (z.B. ungarische Notation) und häufige Fehler durch automatisierte ABAP Code-Werkzeuge wie ABAP Test Cockpit, Code Inspector oder ABAPLint überprüft werden. Ein Änderungsmanagement-Tool wie ActiveControl könnte diese verschiedenen Tools ebenfalls integrieren und ihre Verwendung im Entwicklungs-Workflow erzwingen.
3. Verwenden Sie eine Checkliste
Es ist eine gute Idee, eine gemeinsame Aufgabenliste für die Codeüberprüfung für das gesamte Team zu erstellen, um wiederkehrende Probleme zu vermeiden. Diese Liste könnte Best Practices für Sicherheit, Leistung und Geschäftslogik im Allgemeinen enthalten. Die Checkliste könnte auch die Elemente aus Ihrem internen Styleguide enthalten, die nicht mit automatisierten Methoden überprüft werden können.
Es ist besonders wichtig, Punkte auf der Liste zu haben, die sich auf Versäumnisse beziehen, da Fehler, bei denen etwas komplett vergessen wurde, schwer zu erkennen sein können (z. B. fehlendes Sperren mit SAP-Enqueue-Objekten, fehlende AUTHORITY-CHECK-Anweisungen usw.).
4. Definieren Sie Ziele und interne Messgrößen
Bei der agilen Denkweise geht es um kontinuierliche Verbesserung, und der Code-Review-Prozess sollte da keine Ausnahme bilden. Um den Prozess jedoch im Laufe der Zeit nützlicher zu machen, muss das Team entscheiden, woran es die Effektivität der Peer Reviews messen will. Einige beliebte Messgrößen sind die durchschnittliche Anzahl der gefundenen Fehler pro Stunde oder Codezeilen oder die Inspektionsrate (im Wesentlichen die Geschwindigkeit, mit der Reviews durchgeführt werden).
Auch die Ziele für den Überprüfungsprozess sollten klar und quantifizierbar sein. Dies ist sehr organisationsabhängig, aber ein sinnvolles Ziel wäre es, die Gesamtzahl der Fehler als Ergebnis des Peer-Review-Prozesses um einen vorher festgelegten Prozentsatz zu reduzieren.
5. Seien Sie positiv und machen Sie Code Reviews zu einem Teil der Kultur
Wenn man es schlecht macht, kann das Aufzeigen von Problemen im Code eines anderen zu persönlichen Konflikten innerhalb des Teams führen. Sie sollten immer positives und konstruktives Feedback geben, aber auch Kritik annehmen und offen für Vorschläge sein. Das Auffinden von Fehlern in dieser Phase des Entwicklungsprozesses sollte nicht als negativ angesehen werden, sondern als Lernmöglichkeit für das gesamte Team.
Der Code-Review-Prozess sollte von der gesamten Entwicklungsorganisation, einschließlich der Geschäftsführung, unterstützt werden. Es sollte betont werden, dass die bei der Peer Review gefundenen Fehler nicht dazu dienen, die Qualität der Arbeit der Mitarbeiter zu bewerten, sondern eine gemeinsame Anstrengung zur Verbesserung der allgemeinen Codequalität darstellen.
Schlussfolgerung
Peer-Reviews sind nicht exklusiv für einen agilen Ansatz - jedes SAP-Team, das sie einsetzt, wird wahrscheinlich die Qualität seines Codes verbessern -, aber sie sind aus verschiedenen guten Gründen so gut wie Standardpraxis in erfolgreichen agilen Teams.
Es ist relativ einfach, diese Art der Code-Überprüfung in Ihren Arbeitsablauf einzubauen, und wenn Sie ein Tool wie ActiveControl zur Abwicklung Ihrer SAP-Änderungen verwenden, können Sie sie sogar zu einem obligatorischen Bestandteil des Genehmigungsprozesses machen, bevor die Änderungen die Entwicklungsumgebung verlassen.
Wenn Sie mehr darüber erfahren möchten, wie ein agiler Ansatz in Kombination mit Automatisierung Ihren SAP-Entwicklungs-Workflow verändern kann, nehmen Sie an unserem nächsten englischsprachigen Webinar teil oder setzen Sie sich mit unserem Basis Technologies Teams in Verbindung.