Über unsMediaKontaktImpressum
Jakob Schillinger 04. Mai 2021

Wie Low-Code die Softwareentwicklung auf die nächste Stufe hebt

Wenn's mal wieder länger dauert... Dass Softwareprojekte häufig den anvisierten Zeitrahmen sprengen, ist vielen IT-Profis und Entwickler:innen nur zu gut bekannt. Doch oft ist das Problem sogar hausgemacht: 70 Prozent der digitalen Projekte bleiben laut McKinsey-Analysen hinter den Erwartungen zurück oder scheitern [1]. Eine andere Studie der Carnegie Mellon University bestätigt, dass drei Viertel des Rework-Aufwands im Entwicklungsprozess aufgrund von Kommunikationshindernissen zwischen Business und IT entstehen [2]. Die große Herausforderung liegt mehr denn je im Faktor Zeit. Heute geht es in der Softwareentwicklung um Geschwindigkeit und die Art und Weise, wie Applikationen erstellt werden.

Fast jede:r Softwareentwickler:in kennt die Herausforderung, möglichst schnell Anwendungen für die Unternehmens-IT oder bestimmte Fachabteilungen zu bauen und dabei gleichzeitig mit fehlenden Ressourcen und intransparenten Feedbackschleifen kämpfen zu müssen. Silodenken und mangelnde Kommunikation zwischen Fachabteilungen und IT verspielen das große Potenzial kollaborativer Softwareentwicklung. Low-Code-Plattformen können hier helfen, indem Citizen Developer in den Entwicklungsprozess einbezogen werden. Dies ist ein wichtiger Erfolgsfaktor von Low-Code, denn die Einbeziehung von Expert:innen ohne Programmierwissen überwindet zwei grundlegende Herausforderungen, denen die IT-Abteilungen in Unternehmen täglich gegenüberstehen: den Fachkräftemangel im Bereich Softwareentwicklung sowie Kommunikations- und Verständnisbarrieren in Bezug auf die zu digitalisierenden Prozesse. Nicht ohne Grund gehen Analysten von Forrester davon aus, dass 75 Prozent der gesamten Unternehmenssoftware 2021 mit Low-Code entwickelt wird [3]. Derartige Prognosen zeigen, dass Low-Code-Anwendungsplattformen ein immer wichtigerer Teil des Technologie-Stacks von Unternehmen werden.

In der Schnelligkeit liegt die Würze

Möchte man Low-Code auf sein Grundprinzip reduzieren, lässt sich sagen, dass es sich um einen modellgetriebenen, visuellen Entwicklungsansatz handelt, der im Vergleich zur traditionellen Softwareentwicklung Applikationen bis zu 10 Mal schneller bereitstellen kann, indem der Programmierbedarf erheblich reduziert wird. Die verkürzte Time to Market hilft Organisationen jeglicher Größe dabei, die Digitalisierung ihrer Geschäftsprozesse schnell voranzutreiben und sich an tiefgreifende Marktveränderungen rasch anzupassen und dabei noch Kosten einzusparen.

Das folgende Beispiel der Siemens Global Business Services (Siemens GBS) veranschaulicht, wie schnell auch große Konzerne mit einer komplexen und oft starren IT-Infrastruktur mit Low-Code eine stärkere User Experience für ihre Mitarbeiter:innen schaffen, indem sie Prozesse verschlanken und vereinfachen. Siemens Global Business Services ist ein internes IT-Wertschöpfungszentrum der Siemens AG, das sich vor allem auf Innovation, Automation und Prozessvereinfachung spezialisiert hat und zahlreiche Geschäftseinheiten von Siemens und externe Kunden mit digitalen Lösungen unterstützt.

In der Vergangenheit wurden viele Aufgaben und Prozesse gebündelt, um Synergien zu schaffen, und offshore ausgelagert. So bearbeitet etwa der Standort in Bangalore einen Großteil der Buchhaltungsanfragen und musste hierzu bisher auf eine Vielzahl verschiedener Systeme zurückgreifen. Diese Struktur erzeugte einen starken Wunsch nach Veränderung: Das oberste Ziel lag in der Verbesserung der User Experience der Kund:innen und Mitarbeiter:innen. Es mussten also benutzerzentrierte Applikationen her, die zum Beispiel nahtlose und effizientere Workflows garantierten und ein häufiges Wechseln zwischen Anwendungen für das Erledigen verschiedener Aufgaben reduzierten, manuelle sowie redundante Prozesse eliminierten und mehr Transparenz schufen.

Im Februar 2020 entschloss sich Siemens GBS, diese Herausforderungen mit Low-Code anzugehen und startete ein Pilotprojekt im Logistikbereich. Ein kleines, extra zusammengestelltes Team bestehend aus zwei Entwicklern, einem Scrum Master und einem Product Owner, begann mit der Erstellung der ersten mit Low-Code entwickelten Anwendung: Ein neues Tool, das Reklamationen zu Frachtbewegungen auf ihrer Reise von Siemensfabriken bis zum Standort des Kunden managt.

Verkauft Siemens ein Produkt, wird eine Rechnung geliefert, die Details zum Verkaufszeitpunkt, Preis und Lieferdatum enthält. Wird das Produkt verspätet geliefert oder entspricht es nicht den Einkaufsstandards, kann der Kunde eine Reklamation einreichen. Die Aufgabe von Siemens GBS ist es, herauszufinden, was bei der Lieferung schiefgelaufen ist, etwa um wie viele Stunden sich die Lieferung verspätet hat. Anschließend wird das Reklamationspotenzial analysiert und der Preis neu berechnet.

Reklamationsmanager:innen kalkulieren mit Hilfe der mit Low-Code erstellten Anwendung die Differenz und berechnen den geschuldeten Betrag neu. Im Bestandssystem war es sehr kompliziert, über die verschiedenen involvierten Systeme hinweg auf die Daten zuzugreifen und Daten zwischen den Systemen von Siemens und seinen Partnern auszutauschen.

Dank Low-Code war GBS in der Lage, innerhalb von nur sechs Wochen eine Anwendung auszurollen, die alle Reklamationsfälle zentralisiert. Die Claim Manager:innen in den Fachabteilungen von Siemens können nun Reklamationsinformationen einsehen, filtern und mit den Spediteur:innen teilen. Die Auswirkungen dieses ersten Projekts waren enorm: Die Zeit, die Reklamationsmanager:innen zur Datenanalyse und Kommunikation mit den Spediteur:innen benötigten, wurde um 67 Prozent reduziert. Zudem wurde die Lösung viermal schneller als ursprünglich erwartet erstellt, was Kosteneinsparungen von mehreren Millionen Dollar ermöglichte und zu einem ROI von 2.400 Prozent führte. Direkte Erlöse, die sich aus dem Angebot dieses Services an die Spediteur:innen ergaben, eine gesteigerte Betriebseffizienz und einmalige Einsparungen aufgrund der verkürzten Entwicklungszeit trugen zu diesem Ergebnis bei.

Ein Trend mit Vorgeschichte

Aber woher kommt Low-Code eigentlich? Der Begriff "Low-Code" wurde 2014 vom damaligen Vice President des US-Analystenhauses Forrester Research, John Rymer, eingeführt und umfasste damit verschiedene Entwicklungslinien, welche die manuelle Programmierung beim Software-Developement auf das Nötigste minimieren. Möchte man ganz am Anfang ansetzen, sind hier bereits die Programmiersprachen der vierten Generation, die sogenannten 4GLs aus den 80er und 90er Jahren zu nennen [4]. Bereits hier wurde schon das Ziel verfolgt, mit möglichst wenig Codezeilen Funktionen oder ganze Anwendungen zu schreiben. Später wurde der Begriff Rapid Application Development (RAD) für ein ähnliches Vorgehen etabliert [5]. Mit RAD konnten Entwickler:innen bereits in den 90er Jahren ihre Desktopanwendungen in Entwicklungsumgebungen wie Delphi visuell zusammensetzen. Dies vereinfachte die Softwareentwicklung jedoch noch nicht ausschlaggebend, da auch hier noch mit Java-Code gearbeitet wurde. Dies bedeutete, dass Expert:innen aus Fachbereichen wie zum Beispiel Marketing oder Sales noch von der Entwicklung ausgeschlossen waren.

Anwendungsspezifische Skriptsprachen stellen nur den Input für eine 4GL-Sprache bereit. Die eigentliche 4GL-Sprache wird dazu verwendet, ein System zu spezifizieren, das wiederum eine spezifische Skriptsprache interpretiert. Über Parsergeneratoren ist es möglich, für jeden Zweck eine eigene Skriptsprache zu definieren. Die hiermit erstellten Skripte können in den Quelltext einer Hochsprache der dritten Generation transformiert werden. Eine anwendungsspezifische Skriptsprache erleichtert die Festlegung eines spezifischen Modells einer bestimmten Thematik und stellt somit die Basis der modellzentrierten beziehungsweise der modellgetriebenen Softwareentwicklung dar.

Low-Code, high value

Als direkter Nachfolger der Programmiersprachen der vierten Generation und des Rapid Application Development vereinfachen Low-Code-Plattformen das Programmieren auf einer weiteren Ebene. Bei Softwareentwicklung in einer Low-Code-Umgebung geschieht die Erstellung von Applikationen schließlich über grafische Oberflächen, die eine komponentenhafte Programmierung ohne Coding-Kenntnisse ermöglichen. Vereinfacht gesagt kann man sich das Ganze als ein Baukastenprinzip oder wie Applikations-Lego vorstellen: Die Komponenten stellen wiederverwendbare Funktionen dar, aus denen letztlich Anwendungen modelliert werden. Dabei können die "digitalen Bauklötze" in beliebiger Reihenfolge zusammengesetzt werden, während wie etwa bei Mendix Low-Code eine künstliche Intelligenz Tipps zur logischen Anordnung gibt. Innerhalb der visuellen Oberfläche können die Komponenten schließlich per Drag-and-drop an der passenden Stelle platziert werden und auf diese Weise Prozessketten erzeugen.

Das bedeutet aber nicht, dass Low-Coder:innen bei der Applikationserstellung durch die Merkmale von Standardbausteinen eingeschränkt werden. An jeder beliebigen Stelle können spezifische Funktionen über Skripts oder klassische Hochsprachen ergänzt werden.

Neben dem zeitsparenden Ansatz der modellgetriebenen Entwicklung bieten Low-Code-Plattformen noch eine Reihe weiterer Vorteile: Einige Anbieter:innen bieten die Flexibilität, Anwendungen in der präferierten Cloud oder On-Premise bereitzustellen und zu managen. Die automatisierte Bereitstellung in Verbindung mit einer cloud-nativen Architektur fördert eine sofortige Verfügbarkeit und bietet Unterstützung bei umfangreicheren Implementierungen. Hier bietet die Mendix-Plattform den weiteren Vorteil, dass entwickelte Anwendungen nicht nur als Web-Apps genutzt werden können. Dank des Einsatzes des React-Native-Frameworks bietet sie einen direkten native-mobile Ansatz für die Entwicklung von Mobile Apps, um das komplette Ökosystem in Unternehmen abzudecken. Ein weiterer großer Vorteil ist, dass mit Low-Code eine einfache und effektive Lösung zur Prozessautomatisierung vorhanden ist, die im Gegensatz zu früheren Ansätzen den gesamten Lebenszyklus der Entwicklung abbildet, inklusive Continuous Integration und Continuous Deployment (CI/CD). Auch die Wiederverwendbarkeit von Komponenten und somit die Produktivität kann mit Low-Code-Entwicklungsplattformen weiter gesteigert werden. Von einsatzbereiten Templates, Widgets, über Plug-Ins hin zu vorgefertigten Komponenten bieten Low-Code-Plattformen Hilfsmittel, die immer wieder verwendet werden können. So muss das Rad nicht für jede zu entwickelnde App neu erfunden werden. Entwickler:innen können sich die benötigten Bausteine aus vorherigen Projekten zusammensuchen und diese für die Erstellung einer neuen Anwendung verwenden. So sparen sie Zeit und Ressourcen.

Das Beste aus zwei Welten: Kollaboratives Arbeiten über Abteilungsgrenzen hinweg

Der wahrscheinlich größte Benefit für Unternehmen und IT-Abteilungen liegt im kollaborativen Ansatz von Low-Code-Plattformen. Wo früher die gesamte Digitalkompetenz in der IT-Abteilung gebündelt war, müssen Unternehmen heute in digitalen Kategorien denken und auch handeln, um wettbewerbsfähig zu bleiben. IT-Abteilungen sind im Optimalfall nicht mehr nur Dienstleister innerhalb ihrer Organisation, sondern werden zum Enabler, der die Fachabteilungen in die Lage versetzt, sich selbst zu helfen. Mithilfe von Low-Code-Plattformen können IT-Abteilungen programmierfremden Expert:innen aus den Fachbereichen (Citizen Devoloper) Instrumente zur Anwendungsentwicklung an die Hand geben und sie gegebenenfalls bei der Entwicklung unterstützen.

Gleichzeitig garantiert die IT mithilfe der Low-Code-Plattform die Einhaltung von Qualitäts- und Sicherheitsstandards und strukturiert die abteilungsübergreifende Zusammenarbeit. Die Plattformen stellen sicher, dass Feedback-Schleifen transparent und verständlich bleiben und so Anwendungen nicht an den Bedürfnissen der Fachabteilungen vorbei entwickelt wird. Dies spart nicht nur Zeit, sondern auch Kosten. Außerdem bringen Citizen Developer einen Vorteil gegenüber den IT-Profis mit: Sie haben ein besseres Verständnis für die zu digitalisierenden Geschäftsprozesse und wissen genau, wo die Bedürfnisse und Probleme in ihrer Fachabteilung zu verorten sind.

Daraus entwickelt sich eine agile Dynamik, die das gesamte Unternehmen erfasst und die Digitalisierung enorm beschleunigt. Organisiert und gesteuert wird diese Dynamik in sogenannten App Factories, die ein Framework für die organisatorische Adaption von Low-Coding anbieten. So angeleitet können sich professionelle Entwickler:innen auf anspruchsvolle Programmierarbeiten am Code konzentrieren und Citizen Developer nutzen Low-Code-Tools, um schnell Geschäftsprozesse und Workflows zu digitalisieren und ihren eigentlichen Job in der Fachabteilung noch effektiver zu gestalten. Und sollte ein Citizen Developer mit den bereits vorhandenen digitalen Bausteinen nicht auskommen, besitzt der IT-Profi ausreichend Zeit, ein neues digitales Element innerhalb der Low-Code-Plattform zu erstellen. Ist für die Entwicklung einer Anwendung oder ihrer Modifikation durch neue Features doch umfangreichere Programmierkenntnis notwendig, können klassische Software-Developer mit Plattformen wie Mendix auf die gewohnte Programmierweise zurückgreifen und ihren eigenen Code schreiben.

Dieser Ansatz ist auch innerhalb der Siemens AG sehr erfolgreich. Mehr als 1000 Expert:innen haben sich inzwischen zum Rapid Application Developer, eine Zertifizierungsstufe für Citizen Developer, entwickelt. Verschiedene Business und Operating Units haben das App Factory Framework für sich entdeckt und in einem Jahr mehr als 100 Low-Coding-Applikationen erstellt.

Zusammenwachsen von OT und IT: Datengestützte Entscheidungsfindung in der Fabrikhalle

Was für die Business-Seite funktioniert, funktioniert auch im Manufacturing. Ein Kernziel der digitalen Transformation in der Industrie ist die Fabrikautomatisierung, die sich häufig aufgrund der physischen und systemischen Entfernung zwischen der operativen Technologie (OT) an den verteilten Fabrikstandorten sowie der IT-Organisation, die meist im Unternehmens-Headquarter angesiedelt ist, verlangsamt. Low-Code-Plattformen bieten auch Fabrikbetreibern die Möglichkeit, diese Grenzen zu überwinden, indem sie maßgeschneiderte Anwendungen entwickeln können. Etwa durch die Erstellung von lokalen Edge-Applikationen zur Datenerfassung und -auswertung in Echtzeit.

Unternehmensentwickler:innen, Domain-Ingenieur:innen und Mitarbeiter:innen der Fabrikanlage können auch ohne Programmierkenntnisse und umfangreiche IT-Unterstützung Apps erstellen. Wichtig ist jedoch, dass ein Freischalten, Erweitern und Personalisieren von Daten aus Kernsystemen garantiert ist. Uneinheitliche Altsysteme, die Daten in verschiedenen Formaten enthalten und komplexe physische Modelle unterstützen, machen den Entwickler:innen und Ingenieur:innen häufig einen Strich durch die Rechnung, wenn es um einen sicheren Zugriff auf die richtigen Daten geht. Um Unternehmen dabei zu unterstützen, Daten aus der gesamten Organisation zu entdecken, zu verstehen, zu nutzen, zu kuratieren und sie in der Softwareentwicklung, für Business Intelligence und andere datenintensive Anwendungen einzusetzen, bieten umfangreiche Low-Code-Plattformen entsprechende Datenschnittstellen an. Eine zeitintensive Suche nach den richtigen Daten und den entsprechenden Ownern, komplexe Prozesse bezüglich der Berücksichtigung von API-Aufrufen und der Zugriffssicherung sind mit derartigen Lösungen nicht mehr erforderlich.

Mit der stetig steigenden Anzahl vernetzter Systeme in Fabriken steigt auch die Menge der generierten Daten extrem an. Diese Daten können zwar grundsätzlich in der Cloud verwendet und verarbeitet werden, allerdings gibt es auch Gründe wie Wirtschaftlichkeit, Datenschutz, Zuverlässigkeit oder ganz einfach die Latenz, die für eine Verarbeitung und Analyse direkt vor Ort sprechen. Spezielle Edge-Apps können nicht nur diese Aufgaben erfüllen, sondern ermöglichen auch weitere Anwendungen wie Künstliche Intelligenz, maschinelles Lernen oder Data Analytics. All dies findet seine Anwendung beispielsweise in der Predictive Maintenance, im Asset Management oder bei der Qualitätssicherung.

Siemens setzt mit Industrial Edge auf eine Infrastruktur, die genau dies leisten kann. Im Kern steht dabei Low-Code, mit dessen Hilfe sich die entsprechenden Anwendungen vergleichsweise einfach entwickeln lassen. Hier werden die Daten, die im Produktionsprozess generiert werden, an ein Edge Device übertragen und dort, abhängig von den zuvor entwickelten und installierten Edge-Anwendungen, verarbeitet. Diese Anwendungen werden über die zentrale Infrastruktur orchestriert und mit Updates und Workflow-Mechanismen versorgt. Die Anwendungen reichen dabei von Connectivity-Apps über Datenverarbeitung und UI-Dashboards bis hin zu aufwändigen Augmented-Reality-Apps für einzelne Maschinen und deren aktuelle operative Parameter. Der Einsatz von Low-Code ermöglicht auch hier nicht-technischen Entwickler:innen, wie zum Beispiel Wartungsteams, ihre Expertise in den Entwicklungsprozess einzubringen und skalierbare Anwendungen mit dem modellbasierten Low-Code-Ansatz zu erstellen.

Autor

Jakob Schillinger

Als Mendix-Evangelist unterstützt Jakob Schillinger die Siemens AG und andere Kunden dabei, mit der Mendix-Plattform wertschöpfende Applikationsportfolios zu erstellen.
>> Weiterlesen
Das könnte Sie auch interessieren
Kommentare (0)

Neuen Kommentar schreiben