Evolution in der Software-Entwicklung
Die Softwareentwicklung mit Low Code-Plattformen lässt sich durchaus mit Lego vergleichen: Aus verschiedenen vorgefertigten Bausteinen können sehr unterschiedliche Objekte zusammengebaut werden. Und je reichhaltiger der Baukasten ist, umso mehr Variationsmöglichkeiten bestehen. Daher sollten die Bibliotheken von Low Code-Plattformen auch möglichst viele vorgefertigte Softwarekomponenten enthalten.
«Low Code ist eine weitere Abstraktionsstufe in der Softwareentwicklung, es hat sich evolutionär entwickelt», sagt Rainer Endl, Professor für Wirtschaftsinformatik an der OST und Co-Leiter des LowCodeLab@OST.
Vom binären Code zu Low Code
«Die ersten Programmiersprachen bestanden aus binären Codes und waren hardwarespezifisch. Dann kamen die höheren, an die menschlichen Sprachen angelehnten Programmiersprachen, später die objektbasierten Sprachen und jetzt eben Low Code-Plattformen, die vorgefertigte Softwarebausteine und visuelle Designtechniken zum effizienten Zusammenbauen dieser Bausteine zu einer Applikation ermöglichen. Sie sind zudem nicht nur Entwicklungsumgebungen, sondern stellen auch Funktionen zum Management des gesamten Lebenszyklus einer Applikation bereit».
Mittlerweile gibt es rund 300 Low Code-Plattformen auf dem Markt; erst kürzlich hat der Softwarekonzern SAP eine weitere Low Code-Plattform lanciert.
«Low Code-Plattformen werden als Enabler für eine beschleunigte Softwareentwicklung propagiert», sagt Endl. «Eng mit Low Code verbunden ist die Idee des ‹Citizen Developments›. Wird Software nicht mehr programmiert, sondern mithilfe fertiger Bausteine konfiguriert, kann dies auch von ‹Nichtprogrammer wie etwa Mitarbeiter aus den Fachabteilungen ausgeführt werden. So können Entwicklungskapazitäten erhöht und die Folgen des IT-Fachkräftemangel abgefedert werden.»
Beispiele aus der Praxis
An der Herbsttagung «IT-Puls» des LowCodeLabs, die in Zusammenarbeit mit dem Institut für Informations- und Prozessmanagement (IPM) an der OST und der Zürcher Unternehmensberatung Zühlke durchgeführt wurde, stellten Praxisvertreter vor mehr als 100 Teilnehmern Anwendungsbeispiele für dieses bausteinbasierte Programmierparadigma vor.
Silvan Stich von Zühlke Engineering veranschaulichte am Beispiel des Versicherungskonzerns Swica, wie der einst auf Excel-Tabellen basierte Offertprozess mit Low Code vollständig digitalisiert wurde. «Die neue App ist nicht nur weniger fehleranfällig und wegen der eliminierten Medienbrüche auch deutlich effizienter», so Stich. Sie konnte mit Hilfe der Low Code-Plattform Mendix auch in sehr kurzer Zeit realisiert werden.
Auch die SBB setzen auf Low Code-Applikationen, die von informatikaffinen Mitarbeitern, den Citizen Developern, entwickelt wurden. Martin Zandegiacomo von der Rapid Solution Unit der SBB stellte an der Tagung eine mit Microsoft Power Apps entwickelte Applikation vor, die das Ticket-System im Reisezentrum ersetzte.
«Während der Corona-Krise durften sich die Reisenden nicht mehr in einer Schlange anstellen, sie mussten sich auf die ganze Bahnhofshalle verteilen. Weil die Reisenden so aber keine Sicht mehr hatten auf die Anzeige mit der aufgerufenen Nummer, managten wir das Ticketing mit einer App», so Zandegiacomo.
Und das ist nur eines von vielen Beispielen, inzwischen nutzen 12'000 Mitarbeiter der SBB die Power Apps-Plattform und generieren 115'000 PowerApp-Sessions pro Monat. «Low Code ist kosteneffizient; wir sparen bis zu 60 Prozent der Entwicklungskosten ein. Und es ist eine spürbare Entlastung für die IT, die so deutlich mehr Kapazitäten für komplexere Entwicklungsaufgaben hat.»
Auch interessant
Schwachstellen erkennen
Wenn informatikaffine Mitarbeiter Software programmieren, sei dies effizient, man müsse aber immer auch das Sicherheitsrisiko im Auge behalten, gab Informatik-Professor Christian Thiel vom Institut für Informations- und Prozessmanagement der OST zu bedenken.
«Wichtig ist es, dass man die Sicherheits-Schwachstellen kennt». Das Open Web Application Security Project (OWASP) veröffentliche jeweils eine Liste mit den zehn grössten Gefahren. Dazu zählten beispielsweise Fehler bei der Zugriffskontrolle und der Authentifizierung oder der Verlust von sensiblen Daten. Daher sei es sehr wichtig, die Citizen Developer im Unternehmen zu sensibilisieren und entsprechend auszubilden.
Aus- und Weiterbildungsangebote
Im letzten Vortrag der Veranstaltung stellte Christoph Baumgarten, Dozent für Wirtschaftsinformatik und Co-Leiter des LowCodeLab@OST, das Tätigkeitsfeld des Low Code-Labs vor. «Auf Hochschulebene gibt es bisher nur sehr wenige plattformunabhängige Initiativen rund um das Thema Low Code und Citizen Development.
Das LowCodeLab@OST bietet daher sowohl OST-intern als auch interessierten Unternehmen neutral und unabhängig Hilfe zur Selbsthilfe.» Denn viele Fragen rund um Low Code und Citizen Development seien noch nicht ausreichend geklärt, z.B. Kriterien und Verfahren zur Evaluation und Einführung von Low Code-Plattformen, bzgl. der «richtigen» Ausbildung von Citizen Developern oder auch der organisatorischen Einbettung von Low Code und Citizen Development ins Unternehmen.
Daher bietet das LowCodeLab@OST nicht nur Workshops und Coaching-Leistungen für Unternehmen an. Es wird im Verlauf des kommenden Jahres auch mehrere Aus- und Weiterbildungsangebote in unterschiedlichen Formaten lancieren. Christoph Baumgarten: «Auf www.lowcodelab.ch finden sich schon heute einige interaktive Lernvideos und Fallstudien. Hier werden wir das Angebot im nächsten Jahr sukzessive erweitern.»
«Kein Allheilmittel»
Das Fazit der Veranstaltung ziehen Christoph Baumgarten und Rainer Endl wie folgt: «Richtig eingesetzt können Low Code-Plattformen und Citizen Development die digitale Transformation im und von Unternehmen deutlich beschleunigen. Aber sie sind kein Allheilmittel. So sind sie nicht für alle Anwendungsfälle gleichermassen gut geeignet.
Ein Unternehmen muss sich daher zunächst im Klaren darüber sein, für welche Anwendungszwecke sie Low Code verwenden möchten. Zudem stellen sich organisatorische Herausforderungen: So müssen Citizen-Developer befähigt werden, d.h. sie sollten nicht nur eine grundlegende Ausbildung durchlaufen, sondern auch die Grenzen von Low Code kennen sowie bei Bedarf auf effektive Unterstützung durch erfahrene Entwickler zurückgreifen können.»