Low-Code ist nicht gleich Low-Code

Low-Code-Lösungen erfreuen sich wachsender Beliebtheit. Doch was genau steckt dahinter, welche unterschiedlichen Ansätze gibt es am Markt und was sind ihre Stärken und Schwächen? Eine Übersicht von Heather Peyton ist Director of Product Marketing bei Progress.

Die Nachfrage nach qualifizierten Entwicklern war noch nie so groß wie heute. Viele Stellen müssen deshalb unbesetzt bleiben. Linderung verspricht das Low Coding. Dieser Begriff bezeichnet Technologien, die es Nutzern ermöglicht, auch ohne Programmierkenntnisse neue Anwendungen zu erstellen. Vor allem drei Arten von Low-Code-Lösungen sind dabei verbreitet. Sie alle verfolgen unterschiedliche Ansätze, haben ihre spezifischen Schwächen und Stärken, und eigenen sich für unterschiedliche Nutzer und Anwendungen.

Low-Code-Plattformen

Low-Code-Plattformen ermöglichen es Domänenexperten aus den einzelnen Fachbereichen für sich selbst Anwendungen zu entwickeln, die genau ihren fachlichen Anforderungen entsprechen. Dazu stehen ihnen visuelle Werkzeuge für das Anwendungsdesign und grafische Modellierungsverfahren zur Verfügung. Low-Code-Plattformen haben sich inzwischen zu einer Standardtechnologie entwickelt und der Markt für solche Lösungen wächst rasant.

Die größten Vorteile der Low-Code-Plattformen liegen in ihrer Benutzerfreundlichkeit. Auch Nicht-Entwickler können mit wenigen Klicks einfache Apps erstellen und die Benutzeroberflächen konfigurieren. Dafür müssen sie in der Regel nur minimal geschult werden. Mit Low-Code-Plattformen können Unternehmen nicht nur den Entwicklermangel abfangen, sondern auch flexibler und schneller auf die Marktdynamik reagieren.

Die Nachteile: Low-Code-Plattformen folgen in der Regel dem Wasserfallmodell. Sobald eine Anwendung für einen bestimmten Zweck erstellt wurde, existiert meist kein wirklicher Plan für die weitere Entwicklung oder Verbesserung. Anpassungsmöglichkeiten, Flexibilität und Integrationsoptionen sind begrenzt und es können Sicherheitsmängel auftreten. Deshalb sind komplexe Anwendungen oder Anwendungen mit hohen Sicherheitsanforderungen keine guten Kandidaten für eine Entwicklung mit Low-Code-Plattformen.

Heather Peyton über die unterschiedlichen Low-Code-Methoden.

RPA-Plattformen

Mit Plattformen für Robotic Process Automation (RPA) lassen sich alltägliche Aufgaben, die über Benutzeroberflächen ausgeführt werden, ohne Programmierkenntnisse automatisieren. Mitarbeiter können ihre Interaktionen mithilfe eines Recorders aufzeichnen, anschließend erstellt das System Aktionsbefehle für Software-Roboter, die diese Tätigkeiten dann künftig automatisiert ausführen. RPA-Lösungen erfreuen sich wachsender Beliebtheit, was nicht zuletzt die Tatsache zeigt, dass der Börsengang eines RPA-Anbieters zu einem der größten Software-IPOs der Geschichte wurde.

Einer der größten Vorteile von RPA-Plattformen ist ihre Reichweite. Die Anwendungsfälle sind praktisch unbegrenzt. Jede sich wiederholende Aufgaben, die über eine Benutzeroberfläche ausgeführt wird, ist ein Kandidat für die Automatisierung per RPA. Durch die Automatisierung können zudem auch Benutzerfehler eliminiert werden. Nicht zuletzt eignet sich RPA auch hervorragend für einmalige Projekte, bei denen es nicht sinnvoll ist, Entwicklerressourcen zu investieren.

Allerdings besteht die Gefahr, dass RPA-Workflows als Heftpflaster wirken, die schlechte Prozesse nur automatisieren aber nicht verbessern, und die Notwendigkeit langfristiger Systemänderungen und Aktualisierungen verdecken. Darüber hinaus kann die Verantwortung für die langfristige Wartung der Automatisierung sowie Sicherheits- und Compliance-Anforderungen unklar sein.

Low-Code-Sprachen

Low-Code-Entwicklungssprachen folgen der Überzeugung, dass ein „kodierter Ansatz“ nicht bedeutet, dass jeder ein „Coder“ sein muss. Genauso wie die Benutzeroberflächen von Software grafische Elemente für die Ausführung verschiedener Befehle zur Verfügung stellen, verfügen diese codebasierten Lösungen über vorgefertigte Befehle, Hilfsmittel und Ressourcen. Den Nutzern steht eine einfach zu erlernende, codebasierte Plattform zur Verfügung, mit der sie komplexe Funktionen ausführen können, ohne viel über Code wissen zu müssen.

Low-Code-Entwicklungssprachen bieten ein Höchstmaß an Flexibilität und Skalierbarkeit. Da sie auf Sprachen wie Ruby, Pythone oder Yaml basieren, können sie leicht angepasst werden, um auch die komplexesten Automatisierungsszenarien zu bewältigen. Zudem sind sie Teil eines großen etablierten Ökosystems und werden von Communities weiterentwickelt, zu dass es zahlreiche vorgefertigte Inhaltsvorlagen und Integrations-Plug-Ins gibt, die die Erstellung von Automatisierungen erleichtern.

Der Nachteil: Low-Code-Entwicklungssprachen sind immer noch skriptbasiert und erfordern deshalb ein grundlegendes Verständnis von Entwicklungspraktiken. Sie müssen ebenso wie die Automatisierung aktualisiert und gewartet werden. Da sie vor allem auf die Lösung spezifischer Herausforderungen des IT-Managements ausgerichtet sind, eigenen sie sich nicht wirklich gut für nicht-technische Business User.

Hyperautomation treibt Low-Code-Entwicklung voran

Nicht zuletzt wegen der Covid-19-Pandmie ist der Bedarf an digitaler Betriebseffizienz heute so groß wie nie. Unternehmen müssen in der Lage sein, ihre Kunden und Mitarbeiter an jedem beliebigen Ort zu unterstützen und mit digitalen Diensten zu versorgen. Die einzige Möglichkeit, diesen Anforderungen gerecht zu werden, ist eine Automatisierung, die nicht nur einfach zu erstellen, sondern auch einfach zu warten und zu skalieren ist. Die Anbieter müssen sich weiter in Richtung Low-Code-Lösungen bewegen, die es Organisationen erlauben, alles zu automatisieren, was sie können.

Weitere Informationen unter:
https://www.progress.com/