Sind Lösungen auf Low-Code-Basis die Zukunft?

ERP: The next big thing

Wer den Begriff „Low-Code“ hört oder liest, wird entweder aufhorchen oder fragend blicken. Diejenigen, die aufhorchen, wissen bereits, dass sich hinter „Low-Code“ eine mögliche Revolution in der Softwareentwicklung versteckt. Viele sprechen schon von Low-Code als Enabler der digitalen Transformation oder von der nächsten Evolutionsstufe der Softwareentwicklung.

ERP: The next big thing

Diejenigen, die noch fragend blicken, werden mit dem Begriff nicht viel anfangen können. Low-Code hört sich auch irgendwie seltsam an: Wenig-Code? Ihnen sei gesagt, dass es bei Low-Code nicht um weniger Programm-Code, sondern eher um einen geringeren Codierungsaufwand geht. Mehr dazu später.

In dem folgenden Artikel möchten wir Ihnen den Low-Code-Ansatz näherbringen und zeigen, wie man damit die nächste Evolution anstoßen kann: Die Entwicklung einer flexiblen, maßgeschneiderten und passgenauen ERP-Lösung auf Basis von Low-Code anstelle der veralteten Legacy-Software.

Vom Code zum Low-Code

Jahrzehntelang wurden Softwarelösungen aufwendig von gelernten Programmierern mit Hilfe unterschiedlichster Programmiersprachen entwickelt. Die Entwicklung komplexer Software wie beispielsweise einer ERP-Software dauerte (und dauert) relativ lange und ist in der Regel kostenintensiv, weil ausgebildete und damit gut bezahlte Entwickler notwendig sind, die oftmals Wochen oder Monate an einem Projekt arbeiten. In Zeiten des Fachkräftemangels verschärfte sich die Situation für die Softwareunternehmen zusehends. Ist ein Produkt einmal fertig, wird es viele Jahre durch Updates, Ergänzungen und Erweiterungen gepflegt und damit immer komplexer. Dahinter steckt die Strategie der Hersteller, eine möglichst breite Menge von Kunden bedienen zu können.

Beispielsweise im ERP-Bereich ging man davon aus, dass alle Prozesse größtenteils standardisiert abgebildet werden können. Allenfalls wurden Individualisierungen für unterschiedliche Branchen erstellt. Eine tiefere Individualisierung und Anpassung an spezifische Prozesse war nur über Sonderprogrammierung möglich, bei der das Entwicklerteam des Herstellers anrückte und in vielen Personenstunden den Programmcode anpasste. Solche Projekte wurden langwierig, teuer und führten am Ende doch nicht zu einer 100prozentigen Abdeckung aller Prozesse. Dennoch werden viele von Ihnen als Altlasten immer noch gepflegt und am Leben gehalten.

Um aus diesem Teufelskreis ausbrechen zu können, suchten Experten nach Alternativen zur klassischen Softwareentwicklung, mit denen schneller, effizienter und gegebenenfalls auch ohne – oder zumindest ohne weitreichende – Programmierkenntnisse entwickelt werden könnte. Eine dieser Alternativen ist die sogenannte Low-Code-Entwicklung (zu Deutsch geringer Codierungsaufwand).

Der Begriff Low-Code wurde bereits 2014 vom US-amerikanischen Marktforschungsunternehmen Forrester Research geprägt. Die Low-Code-Entwicklung propagiert das Erzeugen von Anwendungen nahezu ohne handgeschriebenen Programmcode durch einfaches Zusammenklicken vorgefertigter Softwarebausteine. „Konfigurieren statt programmieren“ lautet die zugrunde liegende Idee. Möglich wird dies durch Low-Code-Plattformen.

Anzeige

Die alte Klick-Idee

Dabei bezieht sich das „low“ nicht auf die Qualität des finalen Programmcodes, sondern auf die Code-Erstellung. Im Low-Code-Development werden Applikationen mithilfe einer grafischen Benutzeroberfläche aus fertigen Bausteinen in der Cloud „zusammengesteckt“. Business-Applikationen wie ERP-Systeme werden im Unternehmen nach einer Art Baukastenprinzip vollständig ohne oder mit nur wenig Programmieraufwand zu einer maßgeschneiderten Lösung „konfiguriert“. Der Anteil manueller Code-Entwicklung ist im Vergleich zur konfigurierten Code-Menge gering, also „low“.

Man kann sich die „Konfiguration“ vorstellen wie den Zusammenbau eines Hauses mit den Standard-Bausteinen eines dänischen Spielzeugherstellers aus Billund. Wer eine Softwareanwendung entwickeln will, erhält über Low-CodePlattformen einen Baukasten mit vorgefertigten Formteilen, die man zu den unterschiedlichsten Systemen zusammensetzen kann.

Softwareentwicklung per Drag & Drop. (Quelle: GEBRA-IT GmbH)
Bild 1: Softwareentwicklung per Drag & Drop. (Quelle: GEBRA-IT GmbH)

Statt also selbst Quellcode zu schreiben und auf Basis aktueller Programmiersprachen zu codieren, bieten diese Plattformen bereits eine grafische Oberfläche (GUI), über die viele Bausteine über PullDown-Menüs und per „Drag-and-drop“ aus dem Baukasten herausgefischt und zu individuellen Anwendungen grafisch sichtbar zusammengesetzt werden können.

Low-Code ist die logische Weiterentwicklung der Applikationsentwicklung, sozusagen die nächste Evolutionsstufe, um Business-Prozesse schneller, einfacher, flexibler und günstiger mit Software zu unterlegen. Solche Entwicklungsschritte gab es in der Softwareentwicklung regelmäßig. Denken wir an den Schritt von den Lochkarten zum Assembler zu Cobol zu C zu objektorientierten Sprachen wie Java und Python. Immer ging es um eine höhere Flexibilität, Effizienz und Einfachheit.

Low-Code-Plattformen

Wer Low-Code entwickeln möchte, nutzt dazu eine Low-Code-Plattform. Die Zahl der Anbieter und Lösungen ist derzeit überschaubar, der Markt ist noch recht jung, wenn auch stark wachsend. Gartner prognostiziert beispielsweise, dass bis 2024 mehr als 65 Prozent aller Software-Programme mit Low-Code realisiert werden. Auch wenn die verschiedenen Plattformen unterschiedlichen Konzepten folgen, sind einige Punkte allen gemeinsam: Sie bieten eine Cockpit-ähnliche Entwicklungsplattform, mit der Browseranwendungen oder Apps interaktiv zusammengeklickt werden. Darunter liegt eine Geschäftslogikschicht für den Entwurf von Prozessen sowie eine Datenschicht zur Erzeugung von Geschäftsentitäten.

Die meisten Low-Code-Plattformen werden in der Cloud betrieben und sind als „Application-Platform-as-a-Service“ (SaaS) konzipiert. Dies sind dann Weboder Cloud-Dienste, die sämtliche Schritte des Low-Code-Development abwickeln können: Präsentation, Logik, Business-Integration, Datenverarbeitung und Authentifizierung oder Autorisierung. Es gibt jedoch auch Low-Code-Plattformen, die On-Premises installiert werden können.

Der wohl wesentlichste Unterschied liegt in der Art und Weise, wie der ProgrammCode, der am Ende auch bei Low-CodePlattformen vorhanden sein muss, erzeugt wird, wenn der Nutzer auf der Oberfläche seine Anwendung baut.

Die Vorteile von Low-Code-Entwicklung gegenüber klassischer ERP-Entwicklung wiegen schwer, die Nachteile sind gut beherrschbar.

Frank Bärmann, freier Journalist und PR-Berater bei conpublica
Anzeige

Fertiger Code „wie von Geisterhand“

Bei einigen Systemen wird im Hintergrund beim Zusammenklicken der Elemente von einem Algorithmus „wie von Geisterhand“ ein Code geschrieben, der kompiliert wird und dann ausführbar ist.

Rendering on the fly

Viel spannender ist jedoch die Variante, bei der zunächst kein ausführbarer Code generiert wird. Vielmehr werden alle erforderlichen Informationen in Textdateien (zum Beispiel JSON) und einer SQL-Datenbank abgelegt. Wenn der Endnutzer die Webseite aufruft, interpretiert der Webserver die Informationen und generiert den Code für den Browser „on the fly“, der die finale Seite rendert. Diese State-of-the-Art-Webtechnologien kennen wir beispielsweise vom Content-ManagementSystem WordPress.

Die Entwicklung von ERP-Lösungen mit Low-Code

Low-Code-Plattformen können für die Entwicklung verschiedenster Anwendungen eingesetzt werden. Ein Bereich, wo Low-Code bislang kaum genutzt wird, ist die Entwicklung von ERP-Lösungen. Das mag daran liegen, dass der Markt für ERP-Systeme sehr breit und vielfältig ist und einige Hersteller schon sehr viele Jahre am Markt sind und mit ihnen die eingesetzten Softwaresysteme.

Wie eingangs beschrieben, existieren ihre Lösungen zum Teil schon viele Jahre und wurden kontinuierlich weiterentwickelt, angepasst, erweitert, modernisiert und dadurch immer komplexer und schwerfälliger. Gängige ERP-Systeme decken heute nahezu alle Standard-Prozesse im Unternehmen ab, können aber nur schwer „customized“ werden. Sie schleppen durch den jahrelangen Aufbau einen Ballast an Code und Funktionen mit, von dem im Einzelfall nur 20 Prozent im Kundenprojekt benötigt wird. Oft hören die Kunden den Satz “Sie müssen Ihre Prozesse leider ein wenig anpassen. Sonst wird der Aufwand für eine individuelle Anpassung der Software sehr aufwendig und teuer“.

Die fortschreitende Digitalisierung zwingt Unternehmen aller Größen und Branchen aber dazu, immer flexibler auf Kundenwünsche einerseits und auf Marktveränderungen andererseits reagieren zu können. Die Anforderungen an die Unternehmen werden immer vielfältiger und komplexer. Ein modernes, schlankes, flexibles und schnell anpassbares ERP-System ist erforderlich. Hier stoßen viele der etablierten, jedoch oft veralteten Systeme an ihre Grenzen.

Mit Low-Code den Entwicklungsprozess neu denken

Diesen Mangel erkannten die Gründer der Aachener GEBRA-IT GmbH und schafften eine eigene cloudbasierte Entwicklungsplattform auf Basis von Low-Code (GEBRA Suite). Diese bietet wie alle Low-Code-Plattformen die typische intuitive grafische Benutzeroberfläche und arbeiten interpretativ mit modernen Technologien wie JSON, SQL und JavaScript. Auf dieser Grundlage wurde dann der gesamte Entwicklungsprozess einer ERP-Lösung umgekrempelt und neu gedacht.

Selbstverständlich haben die Gründer das „ERP-Rad“ nicht komplett neu erfunden. Vielmehr flossen über 30 Jahre Erfahrung mit ERP-Projekten in die neue Lösung ein. Der Ansatz ist, auf Basis von Erfahrung und Best-Practice mit Hilfe der Low-Code-Plattform viele Grundmodule für einen Baukasten zu entwickeln, die grundsätzlich in jeder ERP-Lösung wiederkehren. „Wir beginnen nicht mit einem weißen Blatt, sondern starten bei der ERP-Lösung für Kunden mit unserem Basis-Baukasten“, erklärt Geschäftsführer Udo Hensen. „Im Unterschied zur herkömmlichen ERP-Entwicklung übernehmen unsere ERP-Berater die Konfiguration der endgültigen Kundenlösung. Dies geschieht auf Basis des Baukastensystems“.

Solche „Laien-Programmierer“ werden in der Branche als Citizen Developer bezeichnet. Sie stehen in engem Kontakt mit dem Kunden, den Abteilungen und Mitarbeitern. Die vorhandenen Prozesse und die Wünsche des Kunden werden im Grunde „Stein für Stein“ zu der ERP-Lösung zusammengebaut. Dabei sind Anpassungen, Veränderungen, Ergänzungen durch den Low-Code-Ansatz in Windeseile umgesetzt. Am Ende steht eine dem Kunden auf den Leib geschneiderte ERP-Lösung zur Verfügung.

Nachteile von ERP auf Low-Code

Selbstverständlich ist Low-Code nicht der Stein der Weisheit, wenn auch die Technologie einige Vorteile gegenüber der klassischen Softwareentwicklung mitbringt. Die neue „Freiheit“ bei der Entwicklung von Applikationen bedeutet auch Verantwortung. Wer völlig flexibel eine Lösung konstruieren kann, dem kommen immer neue Wünsche und Anforderungen in den Sinn. Es besteht die Gefahr, dem Kunden jeden „goldenen Henkel“ zu bauen, obwohl es nicht der optimale Weg wäre. Das Beraterteam braucht Führungsstärke sowie ein großes Prozess- und IT-Wissen. Werden zu Beginn eines Projekts die Anforderungen, Ziele und Meilensteine nicht genau in einem Lastenheft definiert, besteht das Risiko, immer wieder neue Anforderungen nachzulegen und sich beim Aufbau von neuen Prozessen zu verzetteln. Daher sollte ein Lastenheft unabhängig vom Low-Code bei einem jeden ERP-Projekt vorhanden sein.

Citizen Developer klicken eine maßgeschneiderte ERP-Lösung zusammen. (Quelle: GEBRA-IT GmbH)
Bild 2: Citizen Developer klicken eine maßgeschneiderte ERP-Lösung zusammen. (Quelle: GEBRA-IT GmbH)

Fazit

Sicher ist Low-Code ein spannender und vielversprechender Ansatz, um zukünftig zentrale Unternehmensanwendungen schneller und flexibler zu entwickeln als bisher. Low-Code wird aber den klassischen Entwicklungsweg vorerst nicht komplett ersetzen, allein weil es viel zu viele Unternehmensanwendungen gibt, die immer noch zuverlässig ihren Dienst verrichten und vorerst nicht gelöst werden (können). Die Gartner-Prognose, dass bis 2024 mehr als 65 Prozent aller SoftwareProgramme mit Low-Code realisiert werden, erscheint realistisch.

Für Unternehmen, die in neue Unternehmensanwendungen wie ERP-Software investieren wollen/müssen, stellt der Low-Code-Ansatz jedoch eine ernstzunehmende Alternative zu den klassischen Lösungen dar. Die Vorteile von Low-Code-Entwicklung gegenüber klassischer ERP-Entwicklung wiegen schwer, die Nachteile sind gut beherrschbar. Warten wir ab, ob Gartner recht behält.

Anzeige