Low-Code-Plattform
Der Begriff Low-Code-Plattform (auch Low-Code-Entwicklungsplattform) bezeichnet eine Entwicklungsumgebung für Software, die die Entwicklung mit visuellen Applikationsdesign-Werkzeugen und anderen grafischen Modellierungsverfahren ermöglicht, anstatt klassische textbasierte Programmiersprachen zu verwenden. Dadurch soll die Entwicklungs- und Bereitstellungszeit für Software verringert werden. Low-Code-Plattformen sollen außerdem die Kosten für Projektplanung, Mitarbeitertraining und die eigentliche Entwicklung senken.[1]
Entstehung
Low-Code-Plattformen können als Nachfolger von Programmiersprachen der vierten Generation und Rapid-Application-Development-Werkzeugen betrachtet werden.
Der Begriff „Low-Code“ für diese spezielle Art der Anwendungsentwicklung wurde am 9. Juni 2014 vom Branchenanalysten Forrester Research geprägt.[1]
Anwendung
Üblicherweise wird eine Low-Code-Entwicklung, genau wie bei herkömmlicher Programmierung per Hand, in einer integrierten Entwicklungsumgebung vorgenommen. Anders als in herkömmlichen Programmierumgebungen kommen anstelle individuellen Programmcodes häufig vorgefertigte Standardsoftwaremodule zum Einsatz. Über intelligente Metadaten werden diese so verknüpft, dass das gewünschte Programmverhalten entsteht.[2] Die Anwendung wird aus Modulen für folgende Bereiche zusammengesetzt:
- Ein Datenmodell, in dem die Daten der Anwendung gespeichert werden, z. B. mittels einer relationalen Datenbank.
- Externe Daten: In die Anwendung können Ressourcen von Drittanbietern z. B. über REST-APIs integriert werden.
- Eine Anwendungslogik, die die Arbeitsabläufe der Applikation realisiert.
- Eine Benutzerschnittstelle (i. d. R. ein GUI) für den Front-End-Bereich für den Endnutzer. Diese Oberflächen können plattformübergreifend erstellt werden – auch als Webanwendungen, für Android, iOS und Windows.[3]
Merkmale
Laut Forrester Research gibt es vier[4] wichtige Merkmale jeder Low-Code-Entwicklungsplattform:
- Modellgetriebene Entwicklung
- Low-Code-Plattformen bieten intuitivere Möglichkeiten für die Erstellung von Anwendungen als herkömmliche Programmierung. Die modellgetriebene Entwicklung verwendet visuelle Modelle für die Definition von Datenmodellen, Geschäftslogik, Benutzeroberflächen usw. Dieser Ansatz ermöglicht Power-Usern oder Anwendungsentwicklern die visuelle Modellierung von komplexen Full-Stack-Web- und mobilen Anwendungen.
- Wiederverwendbarkeit
- Low-Code-Entwicklungsplattformen stellen sofort einsatzbereite Vorlagen, Widgets, Plug-Ins und Komponenten zur Verfügung, die immer wieder verwendet werden können.
- Unternehmen können in ihre Low-Code-Plattformen auch einen privaten App Store integrieren, mit dessen Hilfe unternehmensspezifische „Intellectual Property“ zur Wiederverwendung an Entwicklungsteams verteilt werden kann.
- In beiden Szenarien wird das Erstellen von Apps eher zu einem visuellen Zusammensetzen der notwendigen Bausteine.
- Support über reine Entwicklungsphase hinaus
- In der Regel sind die meisten Low-Code-Plattformen so konzipiert, dass sie den gesamten Lebenszyklus von Anwendungen unterstützen können: von der Gestaltung, über die Bereitstellung und Wartung, hin zu einer eventuellen Wiederaufnahme oder Fortsetzung von Projekten. Darin bestünde ein Time-to-Market-Vorteil, der eine nahtlose Möglichkeit bietet, Anwendungen entlang des Lebenszyklus zu verschieben, insbesondere im Hinblick auf deren Bereitstellung.
- Cloud-basierte Bereitstellung
- Einige Low-Code-Entwicklungsplattformen bieten die Flexibilität, Anwendungen sowohl in der präferierten Cloud wie auch vor Ort („on-premises“) bereitzustellen.
Markt
Das hohe Kundeninteresse an Low-Code-Entwicklungsplattformen hat zu einer dynamischen Marktlandschaft geführt.
Dieses Wachstum wird durch die zunehmende Wertschätzung von Low-Code-Plattformen als Werkzeuge für die Entwicklung neuer Technologien und bereits vorhandener Technologien in Großunternehmen begünstigt.[5]
Genauer kann unterschieden werden zwischen:
- Low-Code-Automation[6],
- Low-Code-App-Development[7],
- Low-Code-Prototyping und bzw.
- Low-Code-Web-Development[8].
Low-Code-Automation zeichnet sich dadurch aus, dass mit APIs (englisch: Application Programming Interface, deutsch: Anwendungs-Programmier-Schnittstelle) bestehende SaaS (Software as a Service) angebunden werden können. Nutzer können somit auf bestehende Systeme aufsetzen und gewohnte App-Frontend-Anwendungen miteinander verbinden.
Low-Code-App-Development hingegen bezeichnet das Erstellen eines Frontends und der damit verbundenen Backendlogik. Diese könnte jedoch durch iPaaS (Hat zwei Bedeutungen: Integration Platform as a Service oder Integration and Governance PaaS) nachgebildet werden, um die Komplexität von Low-Code-App-Development abzusenken.
Beim Low-Code-Prototyping realisiert man nur zentrale Funktionen und GUIs, es entsteht i. d. R. keine marktreife Anwendung.
Das Marktforschungsinstitut Forrester geht davon aus, dass bis zum Jahresende IBM und SAP auch auf dem Plattformmarkt vertreten sein werden. Auch Dell, Microsoft und Oracle haben ihre Portfolios im Bereich von Low-Code-Plattformen erweitert (Stand Juli 2017).[9]
Rezeption
Das Forschungsunternehmen Forrester schätzt, dass der Gesamtmarkt für Low-Code-Plattformen bis 2022 auf 21,2 Milliarden US-Dollar wachsen wird.[10] Das IT-Analystenunternehmen Gartner geht davon aus, dass bis 2024 65 % aller Aktivitäten zur Umsetzung von Software auf das Konto von Low-Code Plattformen gehen wird.[11]
Forrester geht des Weiteren davon aus, dass Low-Code-Plattformen eine Schlüsselrolle bei der künftigen weiteren Digitalisierung vieler Geschäftsprozesse spielen werden.[12]
Kritik
Einige IT-Experten bezweifeln, dass Low-Code-Entwicklungsplattformen dafür geeignet sind, skalierbare und unternehmenskritische Applikationen zu entwickeln.[13] Andere bezweifeln die in Aussicht gestellten Kosteneinsparungen und Vereinfachungen bei der Entwicklung.[14] Bedenken äußern zudem CIOs, dass die Einführung von Low-Code-Entwicklungsplattformen zu einem Anstieg von nicht unterstützten Anwendungen im Bereich der Schatten-IT führen könnte.[15]
Literatur
- Was steckt hinter den Buzzwords Low-Code und Rapid Application Development, in: Computerwoche vom 13. Dezember 2017
- Low Code und Rapid Application Development, in: Dev Insider vom 19. Dezember 2019
- Low-Code == Low Quality? in: heise Developer vom 14. August 2018
Einzelnachweise
- New Development Platforms Emerge For Customer-Facing Applications
- Schnelle Anwendungsentwicklung - Low-Code Simplifier. 22. Oktober 2019, archiviert vom am 22. Oktober 2019; abgerufen am 17. Oktober 2021. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- What Is Low-Code? [2021 Update]. Abgerufen am 17. Oktober 2021 (englisch).
- The increasingly connected state of IT infrastructure. In: Information Age. 10. November 2017, abgerufen am 17. Oktober 2021 (englisch).
- FED: Forrester. Abgerufen am 17. Oktober 2021 (englisch).
- Wemakefuture GmbH: Was ist Zapier und wie funktioniert es? Abgerufen am 10. März 2021.
- SmapOne: App-Entwicklung mit Citizen Developern. Abgerufen am 10. März 2021.
- Bubble.io: The best way to build web apps without code. Abgerufen am 10. März 2021.
- FED: Forrester. Abgerufen am 17. Oktober 2021 (englisch).
- https://www.forbes.com/sites/forbestechcouncil/2021/01/07/what-is-low-code-development/
- Rich McGhee: Cognizant BrandVoice: It's High Time For Low Code. Abgerufen am 17. Februar 2022 (englisch).
- https://www.forrester.com/report/The+Forrester+Wave+LowCode+Development+Platforms+For+ADD+Pros+Q4+2017/-/E-RES137262
- John Rymer: Low-Code Platforms Deliver Customer Facing Apps Fast, But Can They Scale Up? Forrester Research, abgerufen am 22. Januar 2016.
- Bob Reselman: Why the promise of low-code software platforms is deceiving. TechTarget, abgerufen am 7. August 2023 (englisch).
- Joel Shore: How no-code development tools can benefit IT. In: Search Cloud Applications. TechTarget Magazine, 31. Juli 2015, abgerufen am 22. Januar 2017.