MISSION MOBILE » Knowhow » App Entwicklung / Low-Code-Plattformen
Mendix
Inhaltsverzeichnis
Low Code Development – Programmieren für Fachanwender?
Die Bezeichnung Low Code Development ist noch relativ neu. Erst 2016 wurde sie unter anderem in einer Publikation des US-amerikanischen Marktforschungsunternehmens Forrester verwendet. Seitdem ist Low Code Development auch der Öffentlichkeit ein Begriff.
Länger als die Bezeichnung existiert allerdings das Konzept. Schon in den 90er Jahren gab es einige Ansätze, mit denen versucht wurde, das Programmieren von Apps durch den Verzicht auf umfassendes Code-Schreiben auch weniger erfahrenen Entwicklern möglich zu machen. Diese Plattformen liefen unter dem Begriff „Rapid Application Development“, kurz RAD.
Heutige Low-Code-Plattformen liefern meist einen visuellen Ansatz zur App-Entwicklung. Die Entwicklungsumgebung stellt die Elemente der späteren Anwendungen quasi wie eine Kiste mit Bauklötzen zur Verfügung. Mittels Drag-and-Drop können Entwickler verschiedener Erfahrungsstufen die Benutzeroberfläche so aus vorgegebenen UI-Elementen (User-Interface-Elementen) zusammenbauen und diese später mit Funktionalität anreichern – ohne oder mit nur wenig selbst geschriebenem Code.
Diese erhöhte Geschwindigkeit ist vor allem sinnvoll, um schnell Prototypen zu erstellen, die dann den Nutzern präsentiert werden können. Auch kann der Kunde durch dieses „Bauklötze-System“ leichter in den Entwicklungsprozess mit einbezogen werden und die App so zu einem gewissen Grad nach seinen Vorstellungen aktiv mitgestalten.
Low-Code-Plattformen sind oft als „Application Platform as a Service” (APaaS) konzipiert, also als Cloud- oder Web-Dienst, der sämtliche Schritte der Entwicklung, von der Präsentation bis zur Datenverarbeitung und Authentifizierung, abwickeln kann. Häufig hat das allerdings den Nachteil, dass sich der Nutzer an diesen Dienst binden muss – Exporte aus anderen Systemen sind meist nicht möglich.
Trotzdem beseitigen Low-Code-Plattformen einen Aspekt der Entwicklung, der unter normalen Bedingungen die meiste Zeit in Anspruch nimmt: repetitive Programmieraufgaben. Durch den Wegfall dieser können Entwickler ihren Fokus auf die Prozesse und Funktionalitäten statt auf das Coding legen.
Innerhalb des breiten Spektrums verschiedener Low-Code-Plattformen gibt es gewaltige Unterschiede in der Qualität der Plattformen.
Was zeichnet eine gute Low-Code-Plattform aus?
Ist die Entscheidung für eine bestimmte Plattform erst einmal gefallen, ist ein erneuter Wechsel aufgrund der oben genannten APaaS-Eigenschaft vieler Plattformen nicht oder nur bedingt möglich. Aus diesem Grund sollten sich Entscheider gut über die technischen Eigenschaften und Besonderheiten der Plattform informieren, bevor sie sich festlegen.
Die folgenden 6 Kriterien sollten bei der Auswahl einer Plattform berücksichtig werden.
Sicherheit
Aufgrund der Datenmenge, die Unternehmen in die Plattform einspeisen, ist der erste Punkt offensichtlich: Die Sicherheit der Daten muss gewährleistet sein. Das ist umso wichtiger, je sensibler die Daten sind, die für die jeweilige Anwendung relevant sind.
Skalierbarkeit
Ein weiterer wichtiger Faktor ist die Skalierbarkeit, also die Fähigkeit der Anwendung, zu wachsen. Hier sollten sich Entscheider die Frage stellen, ob die Anwendungen den auf sie zukommenden komplexen Anwendungsszenarien gewachsen sind, oder ob die Daten im schlimmsten Fall wieder umgelagert werden müssen. Die meisten etablierten Plattformen sind in diesem Bereich aber gut aufgestellt.
Visual Development per Drag & Drop
Die Plattform sollte anwenderfreundlich sein, damit sie auch Fachanwender problemlos verwenden können. Hier ist das oben beschriebene Drag-and-Drop-Prinzip von zentraler Bedeutung. Es ermöglicht es dem Entwickler, sich auf die Gestaltung und Funktion der App zu konzentrieren.
Interoperabilität mit Drittanbietern
Auch dieser Punkt wurde oben bereits angerissen. Die Low-Code-Plattform sollte keine Insellösung sein, die vollständig von anderen Diensten und der Interaktion mit diesen abgekapselt ist. Vielmehr sollte sie eine Vielzahl an Datenquellen wie eigene Unternehmensserver oder Drittanwendungen wie SAP, Oracle oder Outlook unterstützen, damit der Entwicklungsprozess möglichst reibungslos ablaufen kann.
Hier finden Sie verschiedene Low-Code-Plattformen im Vergleich.
Unterstützung von mobilen Anwendungen
Eine Plattform muss heutzutage in der Lage sein, Anwendungen auf gängigen App-Plattformen wie dem Apple- oder dem PlayStore zu veröffentlichen. Andererseits bietet auch die mobile Verwendung der Low-Code-Plattform selbst den Vorteil, dass Entwickler problemlos jederzeit von überall auf diese zugreifen können.
Wiederverwendbarkeit
Ein weiteres Feature, auf das Entscheider bei der Auswahl der passenden Low-Code-Plattform achten sollten, ist die Wiederverwendbarkeit bestimmter Elemente im ganzen Unternehmen. Darunter fallen Vorlagen, Plug-Ins oder Widgets, die ein Entwickler nach ihrer Erstellung so speichern können sollte, dass seine Nachfolger ebenfalls darauf zugreifen können. Die Wiederverwendbarkeit kann somit Zeit sparen, die dann in wichtigere Problemstellungen investiert werden kann.
Was ist Mendix?
Mendix ist nach Forrester und Gartner einer der Marktführer im Bereich Low-Code-Development und bietet komplette Makro- und Mikroentwicklung an. Dabei nutzt Mendix die Anbindung an offene Standards wie BPMN (Business Process Model and Notation), UML (Unified Modeling Language) oder OData (Open Data), und ist somit keine abgekapselte Insellösung.
Mendix stellt Anwendern eine Entwicklungsumgebung zur Verfügung, in der sie Apps entwickeln, bereitstellen, testen und verwalten können, die dann sowohl auf iOS- als auch auf Android-Geräten laufen. Komponenten des Domain-Models, der Logik und der Benutzeroberfläche können in Mendix-Anwendungen abgelegt und später von anderen Entwicklern wiederverwendet werden.
Dadurch, dass Mendix das Konzept des Multi-User-Development unterstützt, können zeitgleich mehrere Entwickler transparent in einer App arbeiten und sich abstimmen.
Es gibt verschiedene Versionen der Plattform, die sich nach den verschiedenen Professionalitätsgraden der Entwickler richten. Mendix Studio richtet sich als No-Code-Plattform an Fachanwender, während sich Mendix Studio Pro für professionelle Entwickler eignet.
Mendix Studio
Studio ist eine No-Code-Plattform, die sich an sogenannte Citizen-Developer richtet, also an Personen ohne besondere Kenntnisse in der Entwicklung. Deswegen ist bei der Entwicklung in der No-Code-Umgebung das Schreiben von Code vollständig hinfällig. Meist entwickeln Nutzer mit Mendix Studio ihre erste App. Die Entwicklungsumgebung ist dabei zielgruppenspezifisch, intuitiv und visuell ausgerichtet.
Das, was den Citizen-Developern an Erfahrung mit professioneller Programmierung fehlt, gleichen sie mit ihrem Verständnis von Geschäftsfaktoren, -zielen und -prozessen aus. Mit Mendix Studio können sie Apps entwickeln, die entweder tatsächlich genutzt werden, oder professionellen Entwicklern als Grundlage zum Weiterarbeiten dienen können.
Die Seiten, die mit Studio entworfen werden, zeichnen sich durch responsives Design aus, d. h., dass sie sich automatisch an den jeweiligen Bildschirm anpassen – sei es der Desktop, das Tablet oder das Mobiltelefon.
Mendix Assist, ein mit künstlicher Intelligenz ausgestatteter Agent, unterstützt Anwender bei der Konfiguration von Microflows. Microflows sind eine visuelle Ausdrucksform dessen, was normalerweise in Code wiedergegeben werden würde. So kann ein Microflow beispielsweise Objekte erstellen oder verändern, Seiten anzeigen und Entscheidungen treffen. In Studio liefert Mendix Assist dem Citizen-Developer außerdem Empfehlungen und Vorschläge für die nächsten Schritte und sichert die Qualität der Anwendungen.
Mendix Studio Pro
Studio Pro richtet sich als leistungsstarke, visuelle und modellbasierte Low-Code-Umgebung an professionelle Entwickler. Diese können umfassende und komplexe Anwendungen erstellen und müssen dafür nur wenig Code schreiben. Besonders zeitintensive Aufgaben werden hier von der Umgebung übernommen, sodass sich die Entwickler auf übergeordnete Aufgaben konzentrieren können.
Programmierer müssen in Mendix nur wenig Code schreiben, können diesen Anteil aber auch ausweiten. So ist es beispielsweise möglich, Apps mit individuellem Code oder wiederverwendbaren Komponenten zu erweitern und an individuelle Anforderungen anzupassen.
Mendix Assist fungiert in Studio Pro als Co-Programmierer, der die nächsten Schritte voraussagt, Logikabläufe überprüft und Fehler aufdeckt.
Mit Studio Pro kann also die Produktivität und Effizienz des Entwicklers gesteigert und die Kosten- und Zeitbelastung durch Fehler reduziert werden.
Mendix Studio und Studio Pro ermöglichen eine nahtlose Zusammenarbeit zwischen Experten und technisch weniger versierten Entwicklern. So lassen sich beispielsweise die einzelnen Entwicklungsschritte zwischen Studio und Studio Pro problemlos hin und her tauschen. Außerdem gewährleistet dieses Verfahren eine hohe Transparenz und Effizienz, da Entwickler und Fachabteilung die gleichen Ziele verfolgen.
IoT und Machine Learning ind Mendix
Die neueste Version der Mendix-Plattform bricht mit außergewöhnlichen Features in die Zukunft des Internets der Dinge (IoT) und des maschinellen Lernens auf. Nutzer profitieren von der intelligenten Verbindung von Geolocation und Predictive Analytics, unterstützt durch eine Vielfalt an Programmiersprachen wie Java und JavaScript. Die Plattform überzeugt weiterhin mit dem innovativen Mendix Connector Kit, welches durch das Tool „Data Mapper“ eine nahtlose Integration und Kommunikation mit JSON- und XML-Nachrichten garantiert.
Nutzer haben die Möglichkeit, sich individuell auf ihr Domänenmodell abzustimmen und via RESTful API verschiedenste Dienste zu integrieren. Ein weiteres Highlight ist die umfangreiche Application Test Suite (ATS), die Entwicklern ein anpassbares Dashboard zur Verfügung stellt. Hier lassen sich nicht nur Szenarien aufzeichnen und verwalten, sondern auch Cross-Browser-Tests einfach automatisieren, um die Kompatibilität auf verschiedenen Browsern sicherzustellen.
Die Mendix-Plattform stellt mit dem Application Performance Monitor (APM) ein kraftvolles Werkzeug zur Fehlerbehebung und Performanceüberwachung zur Seite. Die grafische Visualisierung von Analyseergebnissen ermöglicht eine effiziente Optimierung der Anwendungsprozesse. Darüber hinaus wacht Mendix mit täglichen Backups über die Sicherheit Ihrer Daten. Erleben Sie eine neu definierte Entwicklungslandschaft, die Flexibilität und Sicherheit in einem System vereint.
SAP und Mendix
Mendix arbeitet seit 2017 auch mit SAP zusammen, wobei die Mendix-Plattform in die SAP HANA Datenbank integriert werden soll. Diese kann dann auch als Primärdatenbank für die Low-Code-Anwendungen genutzt werden. Besonders in Bereichen, in denen große Datenmengen in kurzer Zeit verarbeitet werden müssen, beispielsweise bei künstlicher Intelligenz oder IoT-Anwendungen (Internet of Things), verspricht dieser Zusammenschluss aufgrund der Leistungsstärke der HANA Datenbank Vorteile.
Mendix Pricing
Die Mendix-Plattform ist in drei verschiedenen Preisstufen beziehungsweise Editionen erhältlich.
Die kostenfreie Free Edition gestattet die Nutzung durch bis zu zehn interne Benutzer pro App und bietet Unterstützung aus der Community. Für die Pro Edition liegt der Einstiegspreis bei 1.250 Dollar pro Monat (bei jährlicher Abrechnung). Diese Edition unterstützt bis zu 50 interne Benutzer (oder 500 externe) und beinhaltet sowohl Test- als auch Produktionsumgebungen sowie umfassende Plattformunterstützung.
Schließlich startet die Enterprise Edition bei 1.600 US-Dollar pro Monat (bei jährlicher Abrechnung) und bietet eine unbegrenzte Umgebung sowie erstklassigen Platinum-Support für alle PaaS-Komponenten. Mendix lädt potenzielle Kunden herzlich dazu ein, sich anzumelden und die Vorteile dieser herausragenden Plattform zu entdecken.
Fazit
No/Low-Code-Development scheint die Zukunft der Programmierung zu sein, denn es befähigt Citizen-Developer mit geschäftlichem Knowhow, einfach per Drag-and-Drop Apps zu entwickeln, die sie auch wirklich brauchen und verwenden können. Auf der anderen Seite werden professionelle Entwickler von repetitiven wenig kreativen Programmieraufgaben befreit und können ihre Energie eher in die wesentlichen Teile der Entwicklung investieren.
Führend im Bereich Low-Code erfüllt Mendix die wichtigsten Kriterien, die eine gute Plattform ausmachen, darunter Unterstützung von mobilen Anwendungen, Wiederverwendbarkeit und Visual Development per Drag-and-Drop. Mit Studio und Studio Pro liefert Mendix sowohl für Anfänger als auch für Profis jeweils eine Plattform. Mit der Integration in die HANA-Datenbank im Rahmen der Zusammenarbeit mit SAP verspricht Mendix zukünftig sehr komplexe Projekte, z. B. im Bereich Machine Learning, realisieren zu können.
Websession: Mendix
Haben Sie bereits Erfahrungen mit Low-Code-Development gemacht und möchten diese mit uns teilen oder offene Fragen klären? In einer kostenlosen Websession besprechen wir Ihre Herausforderungen und Möglichkeiten.
FAQ
Was sind Low-Code-Plattformen?
Low-Code Plattformen bieten einen visuellen Ansatz der App-Entwicklung, mit dem auch Personen mit geringeren Programmierkenntnissen selbst Anwendungen entwickeln können. Dazu werden die einzelnen Elemente einer App häufig in einer Art Baukasten-System ausgewählt und zusammengefügt und anschließend mit Funktionen “ausgestattet”. So können bei Bedarf zwar selbstgeschrieben Codes verwendet werden, doch auch ganz ohne eigene Codes können Apps entwickelt werden.
Was ist Mendix?
Mendix ist eine der führenden Low-Code-Plattformen, denn viele Nutzer schätzen unter anderem das Multi-User-Developement, mit dem zeitgleich mehrere Personen an einer Anwendung arbeiten können. Die entwickelten Apps sind später dann sowohl für iOS als auch für Android nutzbar.
Was ist Mendix Studio?
Mednix Studio ist die No-Code-Version von Mendix, für deren Nutzung User gar keine Kenntnisse in der App-Entwicklung benötigen. Meistens wird der Service für die Erstellung erster Anwendungen oder Entwürfe genutzt, die dann später weiterverarbeitet werden.
Was sind die Vorteile von Low-Code-Entwicklungen?
Der große Vorteil von Low-Code-Plattformen besteht in der Entlastung von Unternehmen und insbesondere der IT-Abteilungen. Weil viele Bereiche ihre benötigten Anwendungen zu einem großen Teil selbst entwickeln können, sind sie nicht mehr abhängig von der Arbeit und Zeit der Entwickler. So spart ein Unternehmen nicht nur Zeit, sondern erzielt oft bessere Ergebnisse bei den Apps, weil diese von den Personen selbst entwickelt werden, die die Anwendungen später benutzen und mehr über die benötigten Funktionen wissen als der IT-Bereich.
Wie sind SAP und Mendix vereinbar?
Dank der Partnerschaft beider Unternehmen, die seit 2017 besteht, wird Usern die Verknüpfung von SAP Produkten und Mendix sehr einfach gemacht. Zudem soll die Mendix-Plattform in die SAP HANA Datenbank integriert werden, sodass User diese auch als primäre Datenbank nutzen können sollen.
2 Kommentare zu "Mendix"
Wie kann ich mit Hilfe von Mendix eine Anwendung ohne Code erstellen?
Hallo Herr Theissen,
danke für Ihre Frage. Mendix bietet mit Mendix Studio eine visuelle Entwicklungsumgebung für Prozessexperten. In dieser können Sie beispielsweise Oberflächlich über einen Drag&Drop Editor aus vorgefertigten Elementen zusammenbauen oder Prozesse in Form von Microflows grafisch modellieren. Auch einfache Interaktionen des Anwenders wie der Wechsel zwischen verschiedenen Seiten können damit angefangen werden. Es ist allerdings zu beachten, dass komplexere Anwendungen dann oft dennoch eigenes Coding erfordern. Dafür bietet Mendix Studio Pro, welches sich an Entwickler richtet. Eine komplette Anwendung ohne eigenes Coding ist somit zwar möglich, bei umfangreicheren Anwendungen werden Sie mit diesem Ansatz jedoch früher oder später an eine Grenze stoßen.
Viele Grüße,
Tobias Schießl