Die erhöhten Ansprüche an die Entwicklungsgeschwindigkeit innovativer Anwendungen erfordern neue Entwicklungstechniken. Mit RPA werden Medienbrüche innerhalb bestehender Anwendungen durch Software-Bots, die von Fachabteilungsmitarbeitern entwickelt werden können, überbrückt. Dieses kann zur Beschleunigung der Anwendungen und Rationalisierungseffekten führen. Innovationen durch neue Geschäftsprozesse werden dadurch aber kaum erzielt. Dazu müssen vielmehr Anwendungen für neue Ideen und Prozesse entwickelt werden. Die benötigten Entwicklungsressourcen treffen aber auf das Problem des bekannten IT-Fachkräftemangels. Zudem stehen auch die häufig schwierigen und langwierigen Abstimmungszyklen zwischen den Anforderungen der Fachabteilungen und der technischen Umsetzung durch IT-Spezialisten einer schnellen Anwendungsentwicklung entgegen. Beiden Effekten wird durch das Low-Code-Konzept entgegengewirkt. Low-Code Systeme werden allgemein als LCDP Plattformen (LCDP= Low-Code Development Platform) bezeichnet.
Hintergrund des Low-Code Ansatzes
Prof. August-Wilhelm Scheer ist einer der prägendsten Wissenschaftler und Unternehmer der deutschen Wirtschaftsinformatik und Softwareindustrie. Seine Bücher gehören zu den Standardwerken des Geschäftsprozessmanagements; die von ihm entwickelte Managementmethode ARIS für Prozesse und IT wird in vielen Groß- und mittelständischen Unternehmen international eingesetzt. Er ist Gründer erfolgreicher Software- und Beratungsunternehmen. Zu den Unternehmen zählen das Beratungshaus Scheer GmbH, das Softwareunternehmen Scheer PAS GmbH und die imc AG für digitale Lerntechnologien.
Zur Förderung des anwendungsorientierten Forschungstransfers hat er im Jahr 2014 das August-Wilhelm Scheer Institut für digitale Produkte und Prozesse gGmbH gegründet. Als Unternehmer und Protagonist der Zukunftsprojekte „Industrie 4.0“ und „Smart Service World“ arbeitet er aktiv an der Gestaltung der Digital Economy. 2017 wurde Scheer in die Hall of Fame der Deutschen Forschung aufgenommen.
Dem Low-Code Ansatz wird eine
10-fache Entwicklungsgeschwindigkeit
zugeschrieben.
Der grundsätzliche Ansatz besteht darin, IT-affine Mitarbeiter in den Fachabteilungen, sogenannten Citizen Developer oder auch Power-User, in die Lage zu versetzen, kleine Anwendungen selbst zu entwickeln, ohne dass dazu tiefe technische Kenntnisse erforderlich sind. Dies sagt aber nichts über eine geringere Wichtigkeit der Anwendungsfälle aus. Die „tiefen“ digitalen Anwendungen mit komplexen Bearbeitungsregeln, langen Entwicklungszeiten und hohem Integrationsbedarf wie Logistik, Personalabrechnung und Produktion werden weiterhin von IT-Spezialisten mit ERP-Systemen unterstützt, da diese eine geringe Änderungsgeschwindigkeit besitzen (built to last). Daneben gibt es aber viele wichtige „flache“ Anwendungen, die für schnelle Kundenaktionen, zur Ablösung umständlicher Papiervorgänge (Formulare) oder Zusätze zu den tiefen Anwendungen das turbulente Tagesgeschäft unterstützen und damit auch eine größere Änderungsgeschwindigkeit besitzen (built to change).
Dem Low-Code Ansatz wird eine 10-fache Entwicklungsgeschwindigkeit zugeschrieben. Die Bezeichnung Low-Code bezieht sich darauf, dass die Anwendungen durch eine grafische Modellierungssprache entwickelt werden, die dann durch automatische Umsetzung in eine Programmiersprache oder durch die direkte Interpretation zur Ausführung gebracht werden. Bei der Modellierung kommt es mehr darauf an, „was“ beschrieben werden soll, also deklarativ, als das „wie“ der prozeduralen Ausführung, wie es beim klassischen Programmieren der Fall ist. Eine komfortable Benutzeroberfläche unterstützt den Entwickler bei der Erstellung durch „drag and drop“ oder „point and drop“ -Funktionen. Bei komplexen Problemen kann dieses Vorgehen auch seine Grenzen finden und algorithmische Teile müssen durch professionellen Code (Procode) entwickelt werden. Da das Fachwissen aber weiterhin im Vordergrund steht, ist dann eine kooperative Zusammenarbeit zwischen Citizen Developer und IT-Mitarbeitern erforderlich. Generell sollten auch örtlich verteilte Mitarbeiter an der gemeinsamen Modellerstellung arbeiten können. Dies ist für die zunehmende Homeoffice-Tätigkeit und interdisziplinäre Teams von besonderer Bedeutung.
Eine Low-Code-Plattform kann durch drei Ebenen charakterisiert werden.
Funktionen von Low-Code Plattformen
Die Ebene 1 der Anwendungsebene steht aus Sicht des Entwicklers im Vordergrund. Hier sind alle Funktionen verfügbar, mit dem der Entwickler seine Anwendung modellieren kann. Auf der linken Seite (vgl. Abb. 2) sind die Modellierungsobjekte und Widgets angegeben, die durch drag and drop oder point and drop auf den Arbeitsbereich übertragen werden können. Als Modellierungssprache wird häufig eine Teilmenge einer Standard-Prozessmodellierungssprache wie BPMN eingesetzt, mit der Datenmodelle, Ablaufstrukturen (workflows), Geschäftsregeln und Sicherheitsregeln wie Authentifizierung definiert werden. Auch werden benötigte Funktionen und Daten aus externen Systemen definiert.
Abb. 1 Generischer Aufbau von Low-Code Development Plattformen (=LCDP)
(In Anlehnung an Sahay, Apurvanand, et al. „Supporting the understanding and comparison of low-code development platforms.“ 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA). IEEE, 2020,S.2, Abb. 2.)
Auf Ebene 2 wird die modellierte Anwendung dem Low Code Plattform Server übergeben, der die Anwendung auf Richtigkeit überprüft und optimiert. Anschließend wird das Modell automatisch in eine Programmiersprache übersetzt (vgl. Abb. 3). Dazu besteht eine 1:1 Beziehung zwischen den Modellobjekten des Low-Code Ansatzes und den ausgewählten Konstrukten der Programmiersprache. Als Programmiersprache sollte eine Standardsprache wie Java zur Verfügung stehen, da bei einer proprietären Sprache des Anbieters die Gefahr eines vendor lock-in besteht, da der Quellcode nur auf der Plattform des Low-Code Anbieters ablaufen kann. Vor allem wird durch eine Standardsprache bei Einsatz von Procode das Zielprogramm in einer einheitlichen Programmiersprache erstellt und der Quellcode kann auch außerhalb der Low-Code-Plattform verwendet werden.
Datenaufrufe und Funktionsaufrufe aus anderen Systemen werden über APIs angebunden. Das Programm wird dann vom Compiler in den ausführbaren Code übersetzt. Anschließend wird das Programm der Hardware- und Betriebssystemebene in der geeigneten Form (z. B. als Container) zur Verfügung gestellt (deployed). Bei LCDP, bei denen das Modell ohne Übersetzung in eine Programmiersprache direkt interpretiert und ausgeführt wird, können Modelle selbst bei der Ausführung (run-time) geändert werden. Hier ist also eine sehr hohe Flexibilität in Bezug auf kurzfristige Änderungen gegeben. Dieses System besitzt aber die Nachteile, dass mit der Interpretation der Metadaten jeder Ausführung ein Performance-Nachteil gegenüber der vorherigen Kompilierung besteht und die Flexibilität zur Fehleranfälligkeit und Unkontrollierbarkeit führt.
Abb. 3 Automatische Code Generierung aus grafischen Prozessdaten mit Scheer PAS
Auf Ebene 3 können Modelle und Code für eine Weiterverwendung in einem Repository abgelegt werden.
Über eine Kollaborationsplattform können bei der Modellerstellung örtlich verteilte Teams gemeinsam an der Modell- und Programmerstellung arbeiten. In der Regel werden LCDP als Cloudlösungen angeboten, um deren Komfort der vereinfachten Administration zu nutzen. Aber auch die Ausführung auf lokaler Hardware ist möglich.
Insgesamt unterstützen LCDP den gesamten Software-Lifecycle von der Modellierung, Entwicklung, Deployment, Ausführung bis zum Monitoring.
Typische Low-Code-Anwendungen und Erweiterungen
Typische Anwendungen sind die Ablösung von Papier-Dokumenten durch digitale Workflows. In einer Behördenorganisation konnten dadurch Hunderte von Formulare wie Urlaubsanträge, Krankmeldungen und Beschaffungsanträge ersetzt werden. Aber auch weitergehende Anwendungen mit komplexeren Geschäftsregeln sollten durch Citizen-Developer entwickelt werden, wenn sich die Anwendungen häufig ändern und das Fachwissen im Vordergrund steht. So kann zum Beispiel für die Auswahl von Lieferanten für eine spezielle Verkaufsaktion von der Fachabteilung eine Lieferantenplattform entwickelt werden. Typische Anwendungen ergeben sich auch im Marketing, indem spezifische Werbeaktionen geplant, durchgeführt und kontrolliert werden. Zur Akquisition neuer Mitarbeiter können darüber hinaus Aktionen wie Wettbewerbe, Preisausschreiben oder Informationsveranstaltungen organisiert und durchgeführt werden.
Insgesamt bekommt das Gebiet Low-Code Entwicklung eine so große Bedeutung, dass es bereits als neues Berufsbild diskutiert wird.
Des Weiteren können Zusätze zu bestehenden „tiefen“ Anwendungssystemen wie ERP, SCM oder CRM von Citizen Developern erstellt werden. Da die Benutzeroberflächen von Standardsoftware, insbesondere Dashboards, besonders häufig an neue Anforderungen angepasst werden müssen und dies auf den Engpass von professionellen Entwicklern stößt, besteht eine Tendenz für sogenannte Headless Software. Hier wird die Anwendungssoftware ohne GUI ausgeliefert und der Anwender kann das User-Interface mit Low Code selbst entwickeln und ständig anpassen. Im extremen kann die gesamte Benutzeroberfläche zu den tiefen Systemen durch eigene Low-Code Anwendungen entwickelt werden. Die tiefen Systeme werden dann quasi hinter ihnen versteckt und sind für den Anwender unsichtbar.
Low-Code Anbieter stellen im Zuge der Weiterentwicklung der Systeme immer mehr vorgefertigte Lösungen zur Verfügung, die von Kunden als Ausgangslösung für ihre Anwendung genutzt werden können. Diese können wiederum in die eigene Bibliothek zur Weiterverwendung eingestellt werden. Das Gleiche gilt für vorgefertigte APIs. Bekannte Hersteller von Standardsoftware für ERP, CRM, Office- Anwendungen usw. bieten ebenfalls Low-Code Zusätze zu ihren Systemen an, um vom Anwender individuelle Erweiterungen entwickeln zu lassen. Diese sind aber vor allem auf die jeweiligen Hauptsysteme bezogen und stellen damit keine unabhängigen Low- Code-Ansätze dar. Insgesamt bekommt das Gebiet Low-Code Entwicklung eine so große Bedeutung, dass es bereits als neues Berufsbild diskutiert wird.
Timing - zum effektiven Umgang mit der Zeit
Wissenschaftler, Unternehmensgründer, Politikberater und Musiker – dies alles vereint unser Gründer und Geschäftsführer Prof. Dr. Dr. h.c. mult. August-Wilhelm Scheer in einer Person. Sein neues Buch Timing – zum effektiven Umgang mit der Zeit handelt von seinen Erfahrungen und Empfehlungen aus den vergangenen Jahren, kombiniert mit einem klaren Blick auf die Zukunft.
Scheer PAS treibt Ihre digitale Transformation in allen Unternehmensbereichen voran: Bestehende monolithische Geschäftsanwendungen erfüllen nicht die Anforderungen, mit denen Unternehmen sich im Zuge der Digitalisierung konfrontiert sehen. Neue, differenzierte und innovative Geschäftsapplikationen sind erforderlich, um den Erwartungen der Kunden im digitalen Zeitalter gerecht zu werden.
Scheer PAS ist eine integrierte Technologieplattform, die Funktionen für Applikationsentwicklung, Integration und Prozessautomatisierung in einer einzigen Plattform vereint. Das Design, die Entwicklung, der Einsatz, die Überwachung und die Verwaltung innovativer, differenzierter, modularer und prozesszentrischer Anwendungen wird so bestmöglich unterstützt.
Das könnte Sie auch interessieren
Noch Fragen? Schreiben Sie uns!
Mehr Infos? Mit unserem monatlichen Newsletter immer up-to-date.
Sie möchten über die aktuellen Trends der Digitalisierung auf dem Laufenden bleiben? Dann melden Sie sich jetzt zu unserem monatlichen Newsletter an – kostenlos und jederzeit abbestellbar.
Der Newsletter bietet Ihnen ein breites Spektrum an Informationen rund um das Thema der Digitalen Transformation und informiert Sie über die neuesten Artikel der Fachzeitschrift IM+io.
Bleiben Sie so stets up-to date und erfahren Sie, wie wir Forschung auf die Straße bringen.