Christoph Lordieck
 - 10. Dezember 2020

SAP-Entwicklungsprozesse digitalisieren: Konzeption

coding code program compute coder develop developer development

In agilen Projekten sowie auch in Wasserfall-Projekten geht einer guten Umsetzung immer insbesondere eines voran: eine gute Konzeption. Sie legt den Grundstein für Stabilität, Erweiterbarkeit und stolperfreie Integration in bestehende Applikationen. In diesem Beitrag zeige ich Ihnen, welche Fragestellungen Sie in dieser Phase dringend klären sollten und wie sinnvoll ein DV-Konzept dabei wirklich sein kann.

Sind die Anforderungen klar abgestimmt und gesammelt, geht es an die Konzeption. Um Entwicklungen nachhaltig wartbar und stabil zu entwickeln, ist eine gute Konzeption unumgänglich. Bei kleineren Anpassungen kann diese sehr schmal ausfallen. Nichtsdestotrotz ist es hilfreich, wenn Sie sich vor der Umsetzung Gedanken zum Aufbau und auch etwaigen Abhängigkeiten der anstehenden Entwicklung machen.

Zentrale Fragestellungen der Konzeptionsphase

Gerade wenn Sie in Entwicklerteams arbeiten oder eigenständig größere Entwicklungen vornehmen wollen, müssen Sie einige zentrale Fragen vor Beginn der Implementierung klären:

  • Welche Funktionalitäten wollen Sie umsetzen?
  • Welche dieser Funktionalitäten wurden schon woanders benötigt, sodass Sie diese wiederverwenden können?
  • Wie soll Ihre Anwendung aufgebaut sein?
    • Nach welchen Entwurfsmustern (Design Patterns) richten Sie sich bei der Entwicklung?
    • Was muss customizbar sein, was können Sie fest im Code verdrahten?
    • Wo können Sie eventuell clever Erweiterungspunkte wie BAdIs einbauen, um später einfachere Anpassungsmöglichkeiten zu haben?
  • Wen müssen Sie bei diesen Überlegungen mit einbeziehen, um zum Beispiel Auswirkungen auf andere Anwendungen oder Berechtigungen einschätzen zu können?

Diese Fragen gelten nicht nur für ein Wasserfall-Vorgehen im klassischen Sinne, sondern finden auch im agilen Umfeld Anwendung. Auch dort gibt es nach jedem Sprint Planning ein Abstimmungsmeeting aller beteiligten Entwickler zur Definition der Architekturen.

Anwendungskonzeptionen schriftlich festhalten

Optimalerweise halten Sie die Überlegungen zur Anwendungskonzeption schriftlich fest – nennen Sie es technisches Konzept, Entwicklungskonzept, DV-Konzept. Das Ziel ist in allen Fällen gleich: getroffene Überlegungen dokumentieren, um in der Entwicklung immer wieder nachschauen zu können und später anderen Entwicklern ein einfaches Verständnis der Anwendung zu ermöglichen. Nicht selten wird aus einem Entwicklungskonzept später auch die technische Dokumentation der Anwendung abgeleitet.

Das DV-Konzept: sinnvoll oder totes Papier?

Schon bei kleinen Anwendungen kann es sich lohnen, die eine Stunde mehr zu investieren, um unter anderem das geplante Datenbankmodell und die geplanten Klassenbeziehungen darzustellen. Das geschieht in der Regel mittels UML-Klassendiagrammen und Entity-Relationship-Modellen (ER-Modell). Bei vielen Entwicklungskollegen fällt das in die Kategorie „Fleißarbeit“ – erst notiere ich alles auf einem weißen Blatt und dann entwickle ich später das Notierte ebenfalls auf einem weißen Blatt. Das ist aber etwas zu kurz gedacht.

Vorteile der Konzeptionsverschriftlichung

Verschiedene Vorteile der Konzeption wiegen meiner Meinung nach den reinen Zeitaspekt auf:

  • Planung ist die halbe Miete – schon in der Planung einer Anwendung fällt Ihnen auf, wo Sie noch Wissens- oder Funktionslücken schließen müssen. „Wie bekomme ich denn eigentlich die beiden Anwendungen synchronisiert, wenn sie gleichzeitig aufgerufen werden?“ – „Wie halte ich es so flexibel, dass später hinzukommende Datenmodell-Ergänzungen ebenfalls eingebunden werden können?“. Wenn Sie als Entwickler solche Fragen nicht vorher schon beantwortet haben, entsteht häufig über die Zeit ein Flickenteppich in Ihrem Code, in den alles nachträglich reingebastelt werden muss.
  • Einfache Teamaufteilung – ein gutes Konzept ermöglicht die Verteilung einzelner Entwicklungspakete an verschiedene Entwickler. Dafür ist ein gemeinsames Verständnis der Zielarchitektur und der benötigten Schnittstellen zwischen einzelnen Komponenten notwendig. Und mal ehrlich: Wie wollen Sie das schaffen, wenn Sie vorher keinen Plan gemacht haben?
  • Dokumentation für die „Nachwelt“ – selbst, wenn Sie nur einen Entwickler im Team haben oder vielleicht sogar der eine sind, kommt der Punkt, an dem jemand anderes in Ihre Entwicklungen schaut. Sei es, weil Sie im Team personell aufstocken, eine längere Abwesenheit ansteht oder Sie das Unternehmen verlassen. Für diesen Fall kann eine Übergabe und Einarbeitung deutlich einfacher, schneller und effizienter von Statten gehen, wenn es zumindest ein Mindestmaß an Dokumentation der Konzeptionsüberlegungen gibt. Vor allem, wenn Sie sich aufgrund von Zeitdruck externe Unterstützung dazu holen, ist ein Entwicklungskonzept bares Geld wert.
  • Das Konzept kann zum Leben erweckt werden – in vielen Programmiersprachen ist es üblich, aus UML-Klassendiagrammen auch automatisch die benötigten Klassen erzeugen zu können. Das geht in ABAP theoretisch auch! Wir haben dafür ein kleines Hilfsmittel geschrieben, was Ihnen diese Aufgabe abnimmt. Damit holen Sie Zeit wieder rein, die Sie bei der Konzeption „verloren“ haben.
Klassendiagramme in SAP importieren leicht gemacht: Ausgangssituation: Ihr einfaches Klassendiagramm aus Papyrus (Eclipse-Plugin)...

Klassendiagramme in SAP importieren – UML-Importer

Im SAP-Standard gibt es bisher keine Funktion, mit der Sie Klassendiagramme in SAP importieren können. Unser UML-Importer nimmt Ihnen diese üblicherweise manuelle Arbeit ab und importiert automatisiert Ihre Klassendiagramme in Ihr SAP-System. Ein ähnliches Vorgehen ist auch bei ER-Modellen möglich. So vermeiden Sie nicht nur Übertragungsfehler, sondern sparen auch eine Menge Zeit. Für mehr Informationen lesen Sie gerne unser Angebot.

Software-Architekten als zentrale Instanz der Konzeption

In größeren Teams liegt ein Teil der genannten Konzeptionsaufgaben bei einem Software-Architekten. Er oder sie ist in der Regel dafür zuständig, Grundlagenentscheidungen über den Aufbau von Applikationen zu treffen. In konkreten Projekten unterstützt er nicht nur bei der technischen Planung, sondern unterstützt auch bei der Koordination der betroffenen Parteien verschiedener Teams. Dabei ist eine zentrale Aufgabe, die geplante Architektur für alle verständlich zu dokumentieren und zu kommunizieren.

In der mindsquare sind zum Beispiel viele Consultants nach iSAQB, dem „International Software Architecture Qualification Board“ zertifiziert. Im Rahmen der Zertifizierung werden viele Aufgaben eines Software-Architekten beleuchtet – auch ein starker Fokus auf Kommunikation neben den selbstverständlichen Punkten wie Software Design Patterns ist vorhanden. Gerne tauschen wir uns mit Ihnen aus, sobald Sie in diesem Bereich Herausforderungen haben oder einen Mehrwert sehen. Kontaktieren Sie mich gerne, wenn Sie Fragen haben.

Überblick über die Artikel der Blogserie  „SAP-Entwicklungsprozesse digitalisieren“

  1. Einführung und Motivation
  2. Anforderungsmanagement
  3. Konzeption
  4. Realisierung (Teil 1)
  5. Realisierung (Teil 2)

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

Trotz intensiver IT- und Fachbereichstests wird viel Quellcode produktiv gesetzt, der sofort im ersten Live Szenario in die Brüche geht. Schlimmstenfalls werden noch andere abhängige Anwendungen mit in die Versenkung gezogen und zwanzig Minuten nach Go-Live liegt die Prio-Störung auf […]

weiterlesen

SAP Entwicklung ist in vielen Unternehmen ein Mittel zum Zweck. Logisch, denn sie dient in der Regel der Optimierung von Kernprozessen. Die SAP-Entwicklungsprozesse werden daher oft eher rudimentär betrachtet. Häufig lassen Sie dadurch aber Potenziale liegen, die auch direkten oder […]

weiterlesen

In meinem ersten Beitrag zur Reihe „SAP-Entwicklungsprozesse digitalisieren“ habe ich liegengelassene Potenziale im Entwicklungsprozess bemängelt. In diesem Beitrag möchte ich nun zuerst mit Ihnen einen Blick auf das Anforderungsmanagement werfen, das den Startpunkt eines SAP-Entwicklungsprozesses markiert.

weiterlesen

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