Was sind Low-Code-Plattformen?

Keine IT-Publikation und keine IT-Veranstaltung kommt derzeit mehr an dem Trendthema Low-Code und Low-Code-Plattform vorbei. Doch was ist damit genau gemeint, und worauf bezieht sich das ,Low‘ in Low-Code?
 
Low-Code-Development-Plattformen ermöglichen die interaktive Entwicklung datenbankbasierter Fachanwendungen nahezu ohne Programmierung, einfach durch interaktives Zusammenklicken vorgefertigter Softwarebausteine. Dank dieses Zusammenklick-Prinzip können Anwender und Power-User der Fachabteilungen viel besser in die Entwicklung ihrer Softwarelösungen einbezogen werden. So werden eine wirklich agile Softwareentwicklung und ein gemeinsames Erarbeiten optimaler Lösungen direkt am Datenbank-Projekt selbst möglich – durch Konzeption und Umsetzung in einem Zuge, mit modernen Methoden des Design Thinking über alle Projektphasen hinweg.
 
Bei Low-Code geht es also nicht nur darum, Kosten zu sparen und schneller zu Ergebnissen zu kommen: Es ist ein völlig anderer Ansatz, Softwarelösungen konzeptionell zu erarbeiten. Zudem geht es auch darum, nicht am realen Bedarf vorbei zu entwickeln, und den gesamten Prozess der Konzeption, Entwicklung und Pflege in einem Maße zu flexibilisieren. Dass dies möglich ist, war bisher nur schwer vorstellbar.
 

Was bedeutet das ‚Low‘ in Low-Code?

Der von Forrester Research im Jahr 2014 geprägte Begriff Low-Code ist in mehrfacher Hinsicht gut gewählt. Nicht nur, weil die klangliche Assoziation andeutet, dass manchmal der Verzicht auf etwas Althergebrachtes sinnvoll sein könnte. Besonders treffend ist das ‚Low‘: Zum einen ermöglichen Low-Code-Plattformen, mit wenig handgeschriebenem Programmcode auszukommen, und zum anderen kann man sich, auf niedrigschwelligen Programmcode beschränken, wenn doch mal etwas dazu programmiert werden soll.
 
Dies bedeutet, dass man kein Informatikstudium benötigt oder IT-Experte sein muss, um so einigermaßen mit Low-Code-Plattformen arbeiten zu können – ein IT-Basiswissen reicht vollkommen aus. Auch wenn der Informatiker letztlich mehr herausholen kann, so kann ein Nicht-Informatiker zumindest den Code lesen, diesen verstehen und selbst verändern. Denn: Die Objektstrukturen sind bereits automatisch von der Plattform erzeugt, Programmschleifen ‚über alle selektierten Datensätze‘ sind schon vorhanden, und die gängigen Rechen- und Konvertierfunktionen liegen direkt zur Verwendung bereit. Daher kann sich der minimale Programmcode, denn man in den Ausnahmefällen ergänzen muss, auf vergleichsweise einfache Funktions- und Variablendefinitionen mit einfachen Aktionsfolgen und Verzweigungen beschränken.
 

Geht Softwareentwicklung ohne Programmierung überhaupt?

Schon seit langem arbeiten viele Innovatoren an immer neuen Ideen, um den äußerst langwierigen Prozess der Softwareentwicklung drastisch zu verkürzen. Naturgemäß kommen hierbei völlig unterschiedliche Lösungsansätze zum Tragen. Von den sogenannten 4GL-Sprachen der 90er Jahre über Computer-Aided Software Engineering (CASE) bis hin zur sogenannten modellgetriebenen Softwareentwicklung. Alles wurde schon ausprobiert, um Programmcode automatisch generieren zu lassen. Der Durchbruch aber kommt aus einer völlig andere Ecke: mit Plattformen, die die gesamte voraussichtlich benötigte Funktionalität bereits vorgefertigt parat halten, und die intern intelligent genug gebaut sind, dass man die Objekte und Features quasi nur noch zusammenstöpseln muss, ohne sich um die technischen Belange im Detail kümmern zu müssen.
 
Auf diese Weise sind komplette Neuentwicklungen schon nach wenigen Wochen produktiv verfügbar, anstatt viele Monate oder gar Jahre auf sie warten zu müssen. Programmerweiterungen sind jederzeit möglich und bereits nach wenigen Tagen anstatt Monaten einsatzbereit. Das ist ein Traum für die Verantwortlichen der Fachabteilungen – aber zugleich eine große Herausforderung für die IT-Verantwortlichen, welche die Sicherheit und Stabilität der gesamten IT zu verantworten haben.
 
Die aufkommenden Bedenken sind verständlich, aber die Vorteile von Low-Code-Ansätzen im Vergleich zur klassischen Softwareentwicklung sind so immens, dass man nicht umhinkommt, es trotzdem zu tun. Etablierte Low-Code-Plattformen, wie SCOPELAND, genügen heute bereits den höchsten Sicherheitsanforderungen, vielleicht sogar besser als manche handgeschriebene Software. Denn der Standardsoftwareansatz ermöglicht unter anderem auch Datensicherheit, Barrierefreiheit und vieles mehr ‚out of the box‘.

Wie funktionieren Low-Code-Plattformen?

Schaut man sich Low-Code-Plattformen im Detail an, so stellt man fest, dass die verschiedenen Produkte recht unterschiedlichen Konzepten folgen. Allen gemeinsam ist, dass man eine Cockpit-ähnliche Entwicklungsplattform hat, mit der Browseranwendungen oder Apps interaktiv zusammengeklickt werden, und dass das Ergebnis des Zusammenklickens in einer strukturierten und deklarativen Form (z.B. als Metadaten in einer Metadatenbank) vorliegt, so dass die entsprechenden Programmteile jederzeit weiterentwickelt werden können.
 
Einige Low-Code-Plattformen sind streng an den Einsatz in der Cloud, und auch an eine Entwicklung in der Cloud gebunden, während andere Tools bzw. ihre Runtime-Systeme auch on-premise installiert werden können. Dementsprechend arbeiten einige interpretativ, benötigen also zur Laufzeit ein auf dem Server oder in der Cloud installiertes Laufzeitsystem. Andere Tools hingegen sehen sich als Weiterentwicklung der modellgetriebenen Softwareentwicklung und generieren ausführbaren Code, der dann im Idealfall final ist.
 
Teilweise wird auf eine Kombination beider Methoden gesetzt, um zum einen hochinteraktiv am echten lebenden Objekt entwickeln und dennoch abschließend reinen Programmcode ausliefern zu können. Vermutlich ist das der erfolgversprechendste Weg, zumindest für den Einsatz der fertigen Anwendungen im eigenen Rechenzentrum.
 
Nahezu allen Methoden gemeinsam ist, dass man im interaktiven Entwicklermodus nicht nur die Programme selbst, sondern auch das zugrundeliegende Datenmodell quasi in einem Zuge mitentwickelt. Ebenso interaktiv werden Datenbankabfragen und -sichten ganz einfach zusammengeklickt und dann jeweils geeignete Visualisierungen ausgewählt, z. B. Formular- oder Tabellenansicht bzw. Map-, Tree- oder Chart-Controls. Die Anbindung der Controls an die Datensichten erfolgt dabei weitgehend eigenintelligent.
 
Programmoberflächen werden aufgebaut, indem man sich die jeweiligen Datensichten in der gewählten Visualisierungsform einfach auf den Bildschirm zieht und miteinander verlinkt. Zum Feintuning des Layouts, und auch für solche Herausforderungen wie das Responsive Design, sowie für das Einbringen geeigneter zusätzlicher Bedienelemente, stehen dann Form Designer und andere herstellerspezifische Designwerkzeuge bereit.
 
Im Zuge diese Konfigurationen entsteht der Grundstock der benötigten Anwendungslogik automatisch, zumindest soweit sie sich bereits aus dem evolutionär entwickelten Datenmodell und aus diversen Eigenschaftsklassifikationen, die sich im Konfigurationsprozess so ansammeln, ableiten lässt.
 
Alle Anbieter verfolgen damit eine relativ einheitliche Grundmethodik, und man kommt damit erstaunlich weit. Die meisten Anwendungen sind tatsächlich fast fertig, ehe man das erste Mal an die Stelle kommt, wo ein Gap zwischen der automatisch mitgenerierten Integritäts- und Anwendungslogik und den realen Anforderungen an die Geschäftslogik aufkommt.
 

Fazit

In Bezug auf Low-Code-Plattformen sprechen Experten vom einem Faktor 10. Das bedeutet, dass man meist nicht nur zehn Mal schneller, sondern auch zehn Mal agiler entwickeln kann – in direkter Zusammenarbeit mit den späteren Anwendern. Zudem wird eine 10 Mal bessere Qualität erreicht, da es sich um vorgefertigten, weniger Fehler anfälligen Programmcode handelt, sowie um eine zehn Mal bessere Anpassbarkeit und Wartbarkeit der Datenbankanwendung. Die Vorteile der Low-Code-Technologie sind folglich so immens, dass es sich allemal lohnt, die gewisse funktionale Limitierung zu tolerieren bzw. bei Bedarf mal einen fehlenden Softwarebaustein niedrigschwellig hinzu zu programmieren.

Weitere Informationen zum Thema Low-Code finden Sie unter:
https://www.scopeland.de
 
Autor: Karsten Noack
Erschienen: 14. August 2018
Bildrechte: © Gajus – shutterstock.com
Original Blogbeitrag: Erstmals im „log in. berlin.“-Blog veröffentlicht

Ähnliche Beiträge