Enterprise Integration – No Code & Low Code vs. Pro Code

Im Rahmen unserer Integrationsprojekte wird von Kundenseite häufig die Frage aufgeworfen, ob und in welchen Szenarien “No Code”- oder “Low Code”-Technologien eine Alternative zur klassischen codebasierten Softwareentwicklung (“Pro Code”) bilden können. In diesem Artikel werden Vor- und Nachteile der jeweiligen Ansätze im Kontext der Integrationsentwicklung dargestellt und Empfehlungen hinsichtlich ihres Einsatzes gegeben.

Obwohl der Begriff “No Code Development” schon seit fast 20 Jahren bekannt ist, wurden die entsprechenden Technologien erst seit 2018 wirklich populär. Ein Treiber für diese Entwicklung war das Interesse der Softwareanbieter, ihre Kunden durch spezielle Software oder mit speziellem Equipment langfristig an die eigenen (Cloud-)Plattformen zu binden. Den Kunden wiederum stellte sich die Herausforderung eines knappen und teuren Angebots professioneller Developer, dem durch die Einbindung von Fachabteilungen in den Entwicklungsprozess begegnet werden sollte. Diese IT-Anwender benötigten einfache Tools, da die Einarbeitung in üblichen Programmiersprachen zu aufwendig wäre – No Code und Low Code sollten hier in die Bresche springen.

Darüber hinaus versprachen sich die Nutzer dieser Plattformen einen Produktivitätsschub in der Entwicklung, da Standardfunktionen nicht mehr selbst programmiert, sondern nur noch per Mausklick eingebunden werden mussten. So sollten auch ausgebildete Programmierer von der (teilweisen) Verwendung von Low Code- und No Code-Technologien profitieren.

Sie haben Fragen oder möchten weitere Informationen rund um unsere Leistungen und Produkte?
Kontaktieren Sie und jetzt über unser Kontaktformular.

Beschreibung der Entwicklungsmodelle

No Code

No Code-Plattformen bieten grafische Entwicklungswerkzeuge, die per Drag-and-Drop Workflows erstellen können, um z. B. Anhänge aus E-Mails in einem SharePoint-Ordner abzulegen. Da die Werkzeuge einfach nutzbar sind, kommen auch IT-affine Fachanwender nach entsprechender Schulung bzw. Einarbeitung mit ihnen zurecht.

Durch den vollständigen Verzicht auf Custom Coding kann Integrationslogik allerdings kaum implementiert werden. Bei sehr einfachen Integrationsprozessen besteht dafür ein beträchtlicher Produktivitätsgewinn gegenüber der codebasierten Entwicklung.

Ein Beispiel für No Code-Technologien ist Microsoft Power Automate. Es ist darin zwar möglich eigenen Code einzubinden, es wird aber üblicherweise für Prozesse verwendet, die ohne diese Anforderung auskommen.

Low Code

Low Code-Technologien unterscheiden sich in Bezug auf GUI und Entwicklungsworkflow kaum von No Code-Tools. Sie ermöglichen es, eigenen Code zu schreiben und in Integrationsprozessen zu verwenden – um Daten zu validieren, zu mappen oder externe Systeme aufzurufen, für die es keinen grafischen Connector gibt. Zur Code-Entwicklung werden häufig technologiespezifische Sprachen verwendet, die mit einer flacheren Lernkurve als traditionelle Programmiersprachen auskommen. Es gibt aber auch Fälle, in denen hierfür z. B. Java oder C# genutzt werden.

Im Vergleich zu No Code-Plattformen bietet der Low Code-Ansatz eine größere Flexibilität bei der Integrationsentwicklung. Je komplexer die in Custom Code implementierte Funktionalität ist, desto größer sind aber auch die Anforderungen an die Entwickler – Fachanwender sind hier schnell überfordert.

Microsofts Angebot im Low Code-Bereich bilden die Logic Apps. Auch wenn es bei der Oberfläche große Überschneidungen mit Power Automate gibt, bieten Logic Apps weitergehende Möglichkeiten. Hier sind besonders Visual Studio (Code) als Entwicklungsumgebung, Workflow-Definitionen als JSON-Dateien und die Trennung vom Benutzerkontext zur unternehmensweiten Verwendung zu nennen.

Pro Code

Bei Pro Code handelt es sich um die klassische, codebasierte Softwareentwicklung. Beispiele für hierbei verwendete Programmiersprachen sind C++, C# oder Java, wobei meist eine professionelle Entwicklungsumgebung wie Visual Studio zum Einsatz kommt. Den grafischen Connector-Elementen der No / Low Code-Plattformen entsprechen bei Pro Code Softwarebibliotheken, deren Funktionalität im eigenen Code genutzt werden kann.

Die große Stärke dieses Ansatzes ist die hohe Flexibilität, die die Implementierung beliebig komplexer Logik ermöglicht, ohne auf ergänzende Technologien zurückgreifen zu müssen. Auch können die Features moderner Entwicklungsplattformen (Unit Testing, statische Codeanalyse, Code Reviews) genutzt werden.

Aufgrund der höheren technischen Anforderungen ist Pro Code nur für ausgebildete Softwareentwickler geeignet, Fachabteilungen und IT-Mitarbeiter ohne Programmierkenntnisse können mit der Komplexität schnell überfordert sein.

Empfehlungen für Integrationsprojekte

No Code

Dieses Verfahren eignet sich gut für sehr einfache Integrationsprozesse. Üblicherweise werden diese nur im Kontext des Anwenders ausgeführt, der den jeweiligen Prozess erstellt hat. Für Lösungen auf Unternehmensebene, also z. B. die Integrations eines neuen SAP-Systems, sind sie aufgrund ihrer mangelnden Flexibilität bei der Logik-Implementierung nicht verwendbar. In den meisten Fällen werden No Code-Anwendungen intern realisiert (also ohne die Unterstützung eines spezialisierten Dienstleisters), um den Einkauf teurer externer Ressourcen zu vermeiden.

Low Code

Per Low Code-Plattform ist auch die Realisierung umfangreicherer Integrationsprozesse möglich, da über Custom Coding entsprechende Funktionalität ergänzt werden kann. Ihre Stärken können diese Technologien insbesondere in kleineren Projekten (unter ca. 50 Personentage) ausspielen, bei denen die vorgefertigten Elemente schneller produktiv genutzt werden können, als eigener Code zu entwickeln wäre. Ein Beispiel hierfür ist die Verwendung von AS2-Komponenten für das Senden und Empfangen von EDI(FACT)-Nachrichten.

Bei großen Enterprise-Integrationen, wie sie durch die Einführung eines neuen ERP- oder CRM-Systems erforderlich werden, stößt der Low Code-Ansatz dagegen an seine Grenzen: Aufgrund der komplexeren Prozesse steigt der Anteil des Custom Codes, wogegen die Nutzung der mitgelieferten Funktionen sinkt. Gleichzeitig wird die Verwaltung der hohen Anzahl an Integrationsprozessen schnell unübersichtlich, und die fehlenden Möglichkeiten der klassischen Softwareentwicklung (Unit Tests, Qualitätssicherung, professionelle Build- und Releaseprozesse) machen sich schmerzhaft bemerkbar.

Pro Code

Der Pro Code-Ansatz ist der empfehlenswerteste Weg für die Realisierung unternehmensweiter Integrationslösungen (ab ca. 50 Personentage). Die höheren Anforderungen an das Skillset der Developer (und damit verbundene Personalkosten) werden durch die gesteigerte Entwicklungsproduktivität mehr als ausgeglichen. Durch die Nutzung sämtlicher Werkzeuge der professionellen Softwareentwicklung kann auch die für geschäftskritische Prozesse notwendige Qualität gesichert werden.

Plattformabhängigkeit & Investitionssicherheit

Bei No Code und Low Code-Technologien entsteht in den meisten Fällen eine hohe Abhängigkeit, da die erstellten Prozesse nur auf diesen Plattformen lauffähig sind. Falls diese vom Hersteller eingestellt oder nicht mehr weiterentwickelt werden, muss beim Wechsel auf eine andere Technologie ein großer Teil der Funktionalität neu implementiert werden. Auch bei einer bewussten Entscheidung für eine etablierte Integrationsplattform kann dies aufgrund geänderter Anforderungen bereits nach wenigen Jahren der Fall sein, womit ein deutlicher Wertverlust der ursprünglichen Investition einhergeht.

Die Pro Code-Variante ermöglicht dagegen einen deutlich stärkeren Werterhalt, wie ein Beispiel mit Microsoft-Technologien zeigt. In dem verbreiteten Integrationswerkzeug BizTalk Server wird sowohl die Nutzung plattformspezifischer Komponenten als auch die Verwendung von C#/.NET-Code zur Workflow-Implementierung angeboten.
Je mehr Integrationsfunktionalität in C# realisiert wird, desto leichter fällt die Migration z. B. zu Logic Apps, die quasi den BizTalk-Nachfolger in Azure darstellen. Diese können ebenfalls C#-Code aufrufen, wogegen eine direkte Migration BizTalk-spezifischer Artefakte (wie Orchestrations) nicht möglich ist.

In den Logic Apps zeigt sich dann dasselbe Bild: Auch dort kann viel Prozesslogik mit vorgefertigten Komponenten abgebildet werden, die sich dann allerdings nicht auf andere Integrationstechnologien wie beispielsweise den .NET-basierten NServiceBus migrieren lassen. Kämen statt Logic Apps die Azure Functions als Pro Code-Plattform zum Einsatz, so ließe sich die darin implementierte Funktionalität mit deutlich geringerem Aufwand in NServiceBus nutzen.

Langlebige Pro Code-Technologien wie C#/.NET oder Java weisen also eine höhere Investitionssicherheit und Portierbarkeit als proprietäre No Code / Low Code-Plattformen auf. Darüber hinaus ist das Angebot an qualifizierten Arbeitskräften in diesem Bereich deutlich größer.

Zusammenfassung

Trotz der zunehmenden Marktpräsenz und Popularität sollten No Code / Low Code-Plattformen nur in bestimmten Integrationsszenarien verwendet werden: Entweder für nutzerindividuelle Prozesse oder Unternehmensintegrationen geringer Komplexität. Als grober Grenz-Richtwert lässt sich ein erwarteter Projektaufwand von 50 Personentagen veranschlagen. Bei darüber hinausgehendem Umfang spielt die klassische codebasierte Entwicklung (Pro Code) ihre Stärken aus und bietet ein höheres Maß an Entwicklungsproduktivität, Qualitätssicherung und Investitionssicherheit.

Sie haben Fragen oder möchten weitere Informationen rund um unsere Leistungen und Produkte?
Kontaktieren Sie und jetzt über unser Kontaktformular.

Data Passion Milen & Carsten
Data Passion Milen & Carsten
HABEN WIR
IHR INTERESSE
GEWECKT?
Schreiben Sie uns eine kurze E-Mail oder rufen Sie uns einfach an! Wir kümmern uns um Ihr Anliegen innerhalb der nächsten 24 Stunden.

Tel.: +49 (40) 6963816–0
Tel.: +49 (151) 1176898-0
E-Mail: [email protected]

Kontaktanfrage

Kontaktanfrage