ARTICLE

Low Code/No Code: Die Revolution der Softwareentwicklung

Low Code/No Code: Die Revolution der Softwareentwicklung
SHARE ARTICLE

Wenn Unternehmen neue Programme benötigen, haben sie in der Regel zwei Möglichkeiten. Sie können sich die Anwendung von einem Entwickler maßschneidern lassen oder sie kaufen die Anwendung von der Stange. Die erste Alternative ist mit hohen Kosten und einer langen Wartezeit verbunden und die zweite ist zwar billiger und schneller zu implementieren, passt aber oft nicht so gut. Seit einiger Zeit gibt es aber noch eine dritte Möglichkeit: sogenannte Low Code (LC)- /No Code (NC) -Tools. Mit diesen Tools können Unternehmen über Point-and-Click- oder Pull-Down-Menüoberflächen Anwendungen passgenau für ihre Anforderungen selbst entwickeln und Prozesse einfacher und schneller automatisieren.

Low Code/No Code: Eine Erfolgsgeschichte

Alles begann damit, dass einige Programmierer Tools entwickelten, um Anwendungen schneller visuell zu entwickeln und bereitzustellen, ohne viel herkömmliches manuelles Programmieren. 2014 bezeichnete Forester diese Tools erstmals als Low Code-Plattformen. Kurz darauf tauchten auch die ersten No Code-Plattformen auf, die sogenannte Citizen Developer, die über keine Programmierkenntnisse verfügen, in die Lage versetzen sollten, eine Anwendung zu entwickeln. Die No Code-Anbieter antizipieren dabei die Bedürfnisse der Benutzer und haben alle zum Programmieren einer Anwendung notwendigen Funktionen in ihre Tools gepackt. Ihre Popularität verdanken LC-/NC-Systeme letztendlich der Robotic Process Automation (RPA). Im Rahmen der von einigen Jahren ausgebrochenen Automatisierungswelle erleichtern RPA-Tools es Unternehmen, mit Hilfe von Regeln und Bausteinen für eine einfache Entscheidungsfindung Workflows und Prozesse in Eigenregie schnell und bedarfsgerecht zu automatisieren. Verschiedene Tools unterstützen auch das Auffinden von Automatisierungsmöglichkeiten oder Konnektoren zu KI-Tools und ermöglichen so eine intelligente Automatisierung.  

Was ist Low Code und No Code?

Low Code- und No Code-Plattformen wurden entwickelt, um Anwendungen schnell entwerfen, erstellen und starten zu können, ohne sich um die Feinheiten der zugrunde liegenden Betriebssysteme oder Skalierbarkeitsanforderungen kümmern zu müssen. Um Geschäftsprobleme schneller zu lösen, als dies mit herkömmlicher Softwareentwicklung möglich ist, nutzen LC-/NC-Tools visuelle Programmierschnittstellen, vorgefertigte Bausteine und Tools der Künstlichen Intelligenz (KI), um auch halbstrukturierte und unstrukturierte Datenquellen integrieren zu können. Integrierte Vorlagen für verschiedene automatisierte Workflow-Szenarien unterstützen Anwendungsentwickler, um auch komplexe Prozesslogiken zu erstellen.

LC-/NC-Tools ermöglichen es dem Benutzer, Benutzeroberflächen, Workflows und Datenmodelle der Anwendung  visuell zu definieren, und falls erforderlich, auch durch handgeschriebenen Code (LC). Dazu kommen Konnektoren zu verschiedenen Back-Ends oder Diensten sowie ein Application Lifecycle Manager, ein automatisiertes Tool zum Erstellen, Debuggen, Bereitstellen und Verwalten der Anwendung in Test, Staging und Produktion.

Low Code

Durch Low Code-Programmierung entfallen bis zu 90 % des Codierungsprozesses, wodurch Entwickler und Entwicklerinnen sich wiederholende Codeabschnitte oder manuelle Codierung sparen und sich mehr auf die Architektur der Lösung und den strategischen Aspekt der Anwendung konzentrieren können. Mit minimalem Codieraufwand können visuelle Blöcke vorhandenen Codes per Drag-and-Drop in einen Workflow zum Erstellen von Anwendungen genutzt werden. Durch vorkonfigurierte Integrationen und Sicherheitsfunktionen können Entwickler zuverlässige Anwendungen erstellen, ohne auf Sicherheits- oder Integrationsspezialisten angewiesen zu sein. Low Code ist ein intuitiver, visueller Ansatz für die Softwareentwicklung, der auch zur Automatisierung von Aufgaben, End-to-End-Prozessen und komplexen Workflows verwendet werden kann. Da gerade komplexe oder spezifische Automatisierungsprojekte an irgendeiner Stelle immer auch Codierung erfordern, bieten LC-Automatisierungstools auch die Möglichkeit dazu, was wiederum gewisse Programmierkenntnisse erforderlich macht.  

No Code

No Code-Software eignet sich für die Verwendung durch sogenannte „Citizen Developer“. Das sind Mitarbeiter ohne jegliche Programmierkenntnisse, die eine Anwendung für einen bestimmten Anwendungsfall entwickeln oder Aufgaben und Prozesse schnell digitalisieren und automatisieren möchten. NC-Lösungen ermöglichen dem Benutzer über eine intuitive Oberfläche eine Anwendungsentwicklung per Drag-and-Drop, indem sie vorgefertigte, bereits codierte Bausteine entsprechende der Anwendungsanforderungen anordnen. Benutzerfreundliche visuelle Elemente vereinfachen und rationalisieren den Designprozess. Denn alle Elemente, die der Benutzer zum Erstellen einer App benötigt, sind bereits in das Tool integriert.  Durch die Nutzung von NC-Plattformen können auch Citizen Developer schnell auf sich ändernde Geschäftsanforderungen reagieren, da der Funktionsumfang und das hohe Maß an Integrationen der NC-Tools es dem Benutzer ermöglichen, jeden Prozess entsprechend  der jeweiligen Geschäftsanforderungen zu automatisieren - allerdings mit weniger Option zur Anpassung und Skalierbarkeit wie bei Low Code-RPA-Tools.

Was unterscheidet Low Code von No Code?

Sowohl LC- als auch NC-Plattformen wurden mit dem gleichen Ziel entwickelt: Erhöhung der Geschwindigkeit in der Softwareentwicklung . Das hat dazu geführt, dass LC und NC oft synonym verwendet werden. Aber es gibt einen kleinen Unterschied zwischen den beiden Kategorien.  LC-Lösungen richten sich in der Regel an Benutzer mit ausgeprägter Entwicklungserfahrung oder an Entwickler, die schnell Apps erstellen müssen, indem sie visuelle Entwicklungsumgebungen und automatisierte Verknüpfungen zu Back-End-Systemen, Datenbanken, Webdiensten oder APIs verwenden.  LC eignet sich auch gut für die Entwicklung eigenständiger Mobile- und Web-Apps und von Portalen, die mehrere Datenquellen nutzen und eine Integration in andere Systeme erfordern. Tatsächlich kann LC für fast alles verwendet werden, außer für hochentwickelte, geschäftskritische Systeme, die in mehrere Back-Ends und externe Datenquellen integriert werden müssen.

No Code-Lösungen gehen bei dieser Abstraktion noch einen Schritt weiter und führen visuelle Drag-and-Drop-Schnittstellen ein, die überhaupt keine Codierung erfordern. No Code-Plattformen ermöglichen es dem Endbenutzer, das Automatisierungsprozessdesign durch einfache Drag-and-Drop-Manipulation zu diktieren. Auch wenn Low Code-Plattformen ein ähnliches Bereitstellungsmodell verwenden, besteht der Unterschied zu NC letztendlich darin, dass LC-Tools dem Entwickler auch  die Option des Hardcodings bieten.

Wie wird LC/NC die Arbeitswelt verändern?

LC- und NC-Tools werden in den nächsten Jahren eine entscheidende Rolle bei der Beschleunigung der Bereitstellung von Anwendungen spielen und damit zum Treibstoff für die Digitalisierung . Einer Umfrage von KPMG zufolge hat sich seit Beginn der COVID-19-Krise bereits die Zahl der Führungskräfte, die Low Code- und No Code-Entwicklungstools als wichtigste Automatisierungsinvestition ansehen, fast verdreifacht. Bis 2024 erwartet Gartner, dass 65 % aller Apps mit LC-/NC-Tools entwickelt werden. Da die Nachfrage nach Geschäftsanwendungen durch die Zahl der professionellen Programmierer nicht mehr bewältigt werden kann, werden immer mehr Mitarbeiter die Programmierung in die eigene Hand nehmen und sich Anwendungen selbst zusammenklicken, die ihren speziellen Bedürfnissen Rechnung tragen.

Vom Consumer zum Prosumer

Wie Escriba Gründer Dr. Jürgen Erbeldinger so treffend formuliert, werden sich die Mitarbeiter vom Consumer zum Prosumer wandeln. Nicht mehr die geleisteten Arbeitsstunden stehen dann für Produktivität, sondern die mitgebrachten, selbst entwickelten Anwendungen als Ausdruck des verdinglichten Know-hows und der Produktivität. Das so abgebildete Wissen lässt sich dann leicht im Unternehmen skalieren. Der Einsatz von LC- und NC-Tools durch die Mitarbeiter und Mitarbeiterinnen eröffnet vor allem kleineren Unternehmen damit eine Möglichkeit, Wettbewerbsnachteile aufgrund des War of Tech Talents, den die großen und reichen Unternehmen für sich entscheiden werden, auszugleichen, indem sie mehr aus den vorhandenen Ressourcen herausholen können. Zumal sich mit LC/NC auch (Software-) Projekte umsetzen lassen, deren Umsetzung sich bis dato nur Großunternehmen leisten konnten. Software denken zu können, wird zum Skillset von morgen.  

Geschwindigkeit wird essentiel für den Erfolg

Low Code/No Code-Plattformen revolutionieren die Softwarebranche, indem sie die Lernkurve verkürzen und die Softwareentwicklung schneller, einfacher und für jeden zugänglich machen. Sie bieten bessere Problemlösungsfunktionen und ermöglichen die einfache und schnelle Erstellung von Geschäftsanwendungen sowohl im Web als auch auf Mobilgeräten. Mitarbeiter und Mitarbeiterinnen ohne Programmiererfahrung können in wenigen Minuten einfach gut funktionierende digitale Produkte mit einem optisch ansprechenden Design erstellen. Die LC-/NC-Plattform automatisiert Vorgänge, die für das Kundenerlebnis entscheidend sind. Dabei helfen die Agilität in der App-Entwicklung und starke Geschäftsprozessfunktionen bei der Entwicklung von Apps, die das Gesamtkundenerlebnis verbessern. In einer sich schnell entwickelnden Welt, in der digitale Innovationen eine entscheidende Rolle für das Unternehmenswachstum spielen, sind die Geschwindigkeit der Entwicklung und Bereitstellung von Anwendungen, um Kundenanforderungen zu erfüllen, und die Innovation für den Unternehmenserfolg essentiell.

Die Qual der Wahl

Low Code

Mittlerweile gibt es eine Vielzahl von Anbietern, die eine Low Code-Plattform anbieten:

Die Liste der Anbieter ließe sich noch beliebig fortsetzen. Wichtige Aspekte bei der Auswahl einer Low Code-Entwicklungsplattform sind Preisstruktur, Funktionsumfang und Anwendungsfälle. Um die Auswahl des passenden Tools einzugrenzen, sollte der Anwendungsfall klar definiert sein, da die Tools unterschiedliche Schwerpunkte setzen beispielsweise hinsichtlich der Entwicklung mobiler Apps, der Anpassung an das persönliche Branding, der Integration mit anderen Systemen oder der Sicherheitsanforderungen.

No Code

Ob es um das Erstellen einer Website oder die Entwicklung eines Zahlungsdienstes geht, auch im No Code-Segment gibt es eine Vielzahl von Anbietern, die bei der Entwicklung von Apps und der Automatisierung von Workflows und Prozessen ihre Dienste in Form von NC-Plattformen anbieten.

Dazu zählen Anbieter wie

No Code Automation Tools gibt es schon einige Jahre und wie auch bei den Low Code-Tools hat jede NC-Plattform seine Vorzüge und Features, die es notwendig machen, sich intensiv mit den verschiedenen Tools auseinanderzusetzen.

Wie geht man bei der Entwicklung einer solchen App vor?

NC-Plattformen bieten die Möglichkeit, Anwendungen per Drag-and-Drop oder durch Importieren/Exportieren mit Hilfe von Dialogfeldern oder anderen UI-Eingabeaufforderungen zu erstellen. Das System zeigt sofort das Ergebnis an, so dass man mit der nächsten Funktion fortfahren kann. Im Falle von Googles AppSheet umfasst die Entwicklung einer automatisierte E-Mail-Begrüßung im Onboarding neuer Mitarbeiter oder Mitarbeiterinnen drei einfache Schritte. Im ersten Schritt wird der Bot erstellt, im zweiten Schritt das Ereignis und der Prozess konfiguriert und last but not least wird der Bot getestet.

In wenigen Schritten zur eigenen App

Über die AppSheet-Benutzeroberfläche und den Menü-Punkt Automation kann über die Registerkarte Bots ein neuer Bot erstellt werden. Nach Eingabe "employee send email" zeigt ein Dialogfeld verschiedene Vorschläge für Bots an. Nach Auswahl des Vorschlags „Wenn ein neuer Datensatz für neue Mitarbeiter erstellt wird, senden Sie eine E-Mail“ steht ein vollständig implementierter Bot bereit, um an die Arbeit zu gehen. Um die Einstellungen zu optimieren, damit die E-Mail auch an die richtige E-Mail-Adresse gesendet wird, müssen Ereignis und Prozess konfiguriert werden. Ein Bot beinhaltet immer ein Ereignis (wenn etwas passiert) und einen Prozess (eine Abfolge von Aufgaben ausführen). Nach einem Klick auf das Ereignis wird die Definition des Ereignisses im Einstellungsbereich angezeigt und kann bearbeitet werden. Mit einem Klick auf den Reiter Process und anschließend auf den Schritt „E-Mail senden“ wird die Definition im Einstellungsbereich angezeigt. Mit einem Klick auf den Link „Gehe zu: Aufgabe“ im Einstellungsbereich gelangt man zur Aufgabendefinition. Der E-Mail-Inhalt kann nun unter Verwendung von Vorlagen angepasst und formatiert werden. Über den Bereitstellungsassistenten kann die App dann bereitgestellt werden. Die Konfiguration des Bots ist abgeschlossen. Wenn nun ein Mitarbeiterdatensatz erstellt wird, wird der neue Datensatz automatisch synchronisiert und eine Willkommens-E-Mail an die entsprechende E-Mail-Adresse verschickt.

Benutzerdefinierte Erweiterungen

Über den AppSheet-Editor können benutzerdefinierte Schaltflächen und Aktionen hinzugefügt werden, z B. der Typ der auszuführenden Aktion und ob die Aktion über eine Schaltfläche ausgelöst werden soll.  Aussehen und Verhalten der Schaltfläche können festlegen werden. Über Workflows und Berichten werden die Automatisierungen eingerichtet, z. B. das Senden von E-Mails oder Texten, das Hinzufügen oder Aktualisieren von Daten oder das Hinzufügen neuer Kalenderereignisse. Dabei sind Workflows Automatisierungen, die ausgelöst werden, wenn bestimmte Aktionen ausgeführt werden. Berichte sind Automatisierungen, die basierend auf regelmäßigen Zeitplänen ausgelöst werden.

LC/NC im Automatisierungskontext

Das Engagement von Hyper-Scale-Anbietern wie Microsoft mit seiner Power Plattform oder Google mit AppSheet zeigt, welche Bedeutung Low Code/No Code als wichtiges Zentrum der Unternehmensinnovation für die Zukunft hat. Workflow-Technologie und iPaaS-Lösungen werden immer beliebter, da sie in der Lage sind, End-to-End-Geschäftsprozesse und personalisierte Workflows zur Kundenbindung auf LC-/NC-Art zu erstellen, zu orchestrieren und zu automatisieren. Während sich Workflow-Automatisierung und iPaaS-Lösungen auf die Verbesserung der Interoperabilität bestehender Apps konzentrieren, konzentriert sich eine zweite Kategorie von LC-/NC-Innovationen darauf, Mitarbeiter beim Erstellen eigener benutzerdefinierter Anwendungen zu unterstützen.

App-Builder erhöhen die Geschwindigkeit der Operationalisierung von Anwendungen. Robotic Process Automation (RPA) auf Basis von Low-Code/No-Code-Plattformen bietet die Möglichkeit, alltägliche Aufgaben zu automatisieren, die die Produktivität steigern ohne die zugrunde liegenden Geschäftsprozesse zu stören. Intelligent Process Automation (IPA) übernimmt dabei die Kernprämisse der robotergesteuerten Prozessautomatisierung und fügt noch einen Schuss Künstlicher Intelligenz hinzu. LC-/NC-Automatisierungsplattformen für IPA unterliegen nicht mehr den Einschränkungen von RPA und können sowohl mit halbstrukturierten als auch mit strukturierten Daten arbeiten. Fest steht, dass Low Code/No Code- Automatisierungsplattformen sukzessive immer mehr Automatisierungstechnologien erschließen werden und damit die praktische Anwendung Künstlicher Intelligenz einem immer größeren Kreis von Mitarbeitenden zugänglich machen.

LC/NC Managementherausforderung

Die LC/NC-Softwareentwicklung bietet aber nicht nur Produktivitätsvorteile. Neben den Chancen, die LC/NC bietet, sehen sich Unternehmen auch einigen Herausforderungen gegenüber, die sich ohne entsprechende Governance-Regeln und eine LC-/NC-Strategie schwer meistern lassen. Die Frage, die sich Unternehmen als erstes stellen müssen, ist: Wer darf im Unternehmen Anwendungen entwickeln und veröffentlichen?  Wie muss der ganze Prozess strukturiert sein, damit nicht Software entwickelt wird, die kontraproduktiv ist und keine Schatten-IT entsteht. Viele der von Citizen Developern entwickelten Anwendungen weisen funktionale Mängel auf und sind nicht gut skalierbar. Vor allem NC-Tools verleiten den Citizen Developer mitunter zu Fehlern, die ein Entwickler nicht machen würde. Aus technischer Sicht kann das zu Schwachstellen oder Ineffizienzen führen, die sich später zu echten Schwierigkeiten ausweiten, wie beispielsweise langsame oder ineffektive Apps oder zu einer Codierung voller unnötiger oder irrelevanter Füllstoffe. Systeme und Anwendungen, die ohne Aufsicht implementiert wurden, sind zudem nicht Teil der Backup- und Restore-Strategie der IT-Abteilung. Ein Vorfall kann zum Verlust wichtiger Daten führen. Entwicklungen von Citizen Developern können zudem zu Ineffizienzen führen, wenn eine Lösung zur Verbesserung eines einzelnen Prozesses sich negativ auf verwandte Prozesse auswirkt. Verlässt der Citizen Developer zudem das Unternehmen, besteht die Gefahr, dass niemand weiß, wie das vom Citizen Developer entwickelte System geändert oder unterstützt werden kann. Das wirft auch die Frage auf, wem gehört die von einem Citizen Developer gebaute Anwendung?

Governance-Leitlinien sind unerlässlich

Unternehmen sind daher gut beraten, eine gewisse Kontrolle über die Systementwicklung zu behalten, einschließlich der Auswahl der LC/NC-Tools, indem sie Governance-Leitlinien implementieren, die  eine gewisse IT-Aufsicht gewährleisten. Das kann beispielsweise durch ein hybrides Entwicklungsmodell realisiert werden, bei dem Citizen Developer und IT-Organisation zusammenarbeiten. Nachdem der Citizen Developer 80 % des Modells entwickelt hat, reicht er die Anwendung an die IT-Organisation weiter, die den Feinschliff übernimmt. Oder der Citizen Developer entwickelt die Anwendung unter Verwendung eines grafischen Schnittstellentools und ein Entwickler setzt sie in einer skalierbaren Sprache um. In beiden Fällen ist sichergestellt, dass die Anwendung aufgezeichnet ist und korrekt funktioniert.

Fazit

LC-/NC-Plattformen werden die Geschäftswelt grundlegend verändern. Es wird zu einem Paradigmenwechsel kommen, für den die Unternehmen eine Strategie benötigen. Denn mit LC/NC eröffnen sich ganz neue Perspektiven. Unternehmen werden auf einmal zum Software-Produzenten, die in der Lage sind, sich eigene digitale Geschäftsmodelle zu bauen und umzusetzen. Da das ohne die Teilhabe der Mitarbeitenden nicht funktioniert, müssen Citizen Developer Verständnis für Softwarestrukturen entwickeln, damit sich ihre selbstgebauten Anwendungen nicht kontraproduktiv auf das Geschäft auswirken. Eine entsprechende Unternehmens-Governance bildet dabei die Leitplanken für die Citizen Developer.

Erfahre mehr über RPA mit unserem RPA 1x1

Jetzt downloaden!Low Code/No Code: Die Revolution der Softwareentwicklung
More articles like this