Die Zukunft in der Cloud – Next-Gen Enterprise Software Modeling

Seit Anfang 2023 bündelt der Simple Model Editor (SME) alle Modellierungsfunktionalitäten der Enterprise Low Code Plattform A12. Wir werfen einen Blick darauf, was das Werkzeug heute ausmacht und welche Pläne es für die weitere Entwicklung gibt.

Für die Modellierungswelt der Enterprise Low Code Plattform A12 markiert das Jahr 2023 einen wichtigen Wendepunkt: Die erste Tool-Generation geht in den Ruhestand. Der SME (Simple Model Editor) bietet nun als zentrales, modulares Werkzeug der neuen Generation die Mittel, um sämtliche A12-Modelle so komfortabel wie noch nie zu editieren. Wir nehmen diesen Meilenstein zum Anlass, um die bisherige Evolution der A12-Modellierungswerkzeuge Revue passieren zu lassen.

Dieser Beitrag ist Teil einer Reihe über die Werkzeugentwicklung von A12:

„We become what we behold. We shape our tools and then our tools shape us” – mit diesen Worten beschreibt der Medientheoretiker John Culkin bereits 1967 ein Phänomen, das heute in der digitalen Welt deutlicher zutage tritt als je zuvor: Unsere Werkzeuge beeinflussen nicht nur unsere Arbeitsweisen, sondern auch wie wir denken und handeln. Am deutlichsten zeigt sich dieser Umstand vielleicht am Smartphone und der mobilen Revolution. Allein die ständige Verfügbarkeit eines GPS-Navigationssystems in der Hosentasche verändert zum Beispiel massiv, wie wir Räume wahrnehmen und uns durch sie bewegen. Weitaus subtiler, aber nicht weniger wirksam, erstreckt sich dieses Phänomen über jede nur erdenkliche Software, mit der wir regelmäßig interagieren.

Bei der Werkzeugentwicklung von A12 bestehen die Chancen vor allem darin, die Komplexität von Geschäftsanwendungen handhabbar zu machen.

Die Erkenntnis, dass Werkzeuge mehr als nur reine Hilfsmittel sind, gibt der Werkzeugentwicklung eine große Verantwortung. Sie verspricht gleichzeitig aber auch große Chancen: „Die richtigen Werkzeuge helfen uns dabei, ein neues Verständnis über die damit bearbeiteten Rohmaterialien und die resultierenden Produkte zu erlangen“, sagt Hamarz Mehmanesh, CEO von mgm und Produktmanager von A12. „Bei der Werkzeugentwicklung im Rahmen der Enterprise Low Code Plattform A12 bestehen die Chancen vor allem darin, die Komplexität von Geschäftsanwendungen handhabbar zu machen und geschäftliche Zusammenhänge besser zu verstehen.“

Hamarz Mehmanesh, CEO von mgm und Produktmanager von A12

Wir werfen im Folgenden ein Schlaglicht auf einzelne Aspekte des Simple Model Editors von A12, die zeigen, in welchen Ansätzen das Tool schon heute neue Sichten auf die Gestaltung von Anwendungen ermöglicht und wie sie sich in Zukunft weiterentwickeln könnten.

Nachvollziehbare Datenmodelle – eine Frage der Perspektive

Jeder Geschäftsanwendung liegen bestimmte fachliche Zusammenhänge zugrunde. Sie beschreiben, welche Entitäten die Geschäftsdomäne hat – zum Beispiel „Lieferanten“ und „Verträge“ – und wie die Entitäten zusammenhängen – zum Beispiel: „Mit jedem Lieferant ist mindestens ein Vertrag abgeschlossen“. In A12 gibt es für diese grundlegende Datenmodellierung zwei Modelltypen:

  • Dokumentenmodelle (Document Models) definieren die Entitäten als eine Hierarchie von Datenfeldern und dazugehörigen Validierungs- und Berechnungsregeln.
  • Relationship Models beschreiben die Zusammenhänge zwischen den Entitäten.

Diese Modelle sind im SME in der Standardansicht als baumartige Strukturen mit editierbaren Elementen dargestellt. In der Praxis hat sich diese Form der Darstellung und Bearbeitung bewährt. Sie visualisiert für ein Modell die Hierarchie der Elemente und bietet den schnellen Detailzugriff auf alle abgebildeten Datenfelder.

Links ist der Modellbaum für das Dokumentenmodell “ProductBook_DM”, rechts der Editor für ein ausgewähltes Feld

In ausgewachsenen Geschäftsanwendungen umfasst die Datenmodellierung jedoch zahlreiche Entitäten und deren Beziehungen zueinander. Um den Nutzern einen besseren Überblick zu verschaffen, wurde Anfang 2021 eine weitere visuelle Repräsentation in den SME integriert – der Model Graph Diagram Editor. Damit können die Nutzer:innen beliebige Perspektiven der modellierten Fachlichkeit visualisieren und Verknüpfungen durch das Ziehen von Linien editieren.

Eine visuelle Repräsentation der Datenmodelle veranschaulicht die wesentlichen Zusammenhänge

Das Diagramm zeigt grafisch einen Ausschnitt des Ist-Zustands der Datenmodelle. Man kann aus dieser Ansicht auch Teile direkt modellieren

„Das Diagramm zeigt grafisch einen Ausschnitt des Ist-Zustands der Datenmodelle. Man kann aus dieser Ansicht auch Teile direkt modellieren“, erklärt Joel Charles, der am mgm-Standort Aachen den Editor mitentwickelt. „Es gibt Operationen, die nur die visuelle Repräsentation verändern – zum Beispiel, wenn ich mehrere Entitäten im Diagramm per Drag & Drop nebeneinander gruppiere. Andere Operationen greifen aber auch in die Modellierung ein. Wenn man eine Linie zwischen zwei Entitäten zieht, erstellt man ein neues Relationship Model.“

Joel Charles, Mitentwickler des Model Graph Diagram Editors

Auch wenn der Model Graph Diagram Editor aktuell vor allem bei der Datenmodellierung zum Einsatz kommt, sind viele weitere Einsatzmöglichkeiten denkbar. Mit dem zugrundeliegenden Framework lassen sich beliebige Graph-Strukturen in eine interaktive, grafische Repräsentation bringen. Der SME greift damit auf ein mächtiges Framework für visuelle Darstellungs- und Editierfunktionalitäten zurück, das für die weitere Entwicklung eine wichtige Grundlage bietet.

Qualitätssicherung: Modelle komfortabel testen

Mit dem Low Code-Ansatz verlagert sich ein bedeutender Teil der Anwendungsentwicklung von der Programmierung auf die Modellierung. Dies bedeutet aber auch, dass es bereits auf Ebene der Modellierung Verfahren für die Qualitätssicherung geben muss. Geschäftsanwendungen zeichnen sich schließlich durch eine hohe fachliche Komplexität aus. In der Datenmodellierung von A12 zeigt sie sich insbesondere in Validierungs- und Berechnungsregeln, die sich über viele Datenfelder und geschachtelte, wiederholbare Strukturen erstrecken können.

Wie lässt sich effektiv prüfen, ob Modelle die Fachlichkeit eines Geschäftsbereichs auch korrekt abbilden? Diese Fragestellung ist der Ausgangspunkt für laufende Forschungs- und Entwicklungsarbeiten, deren Ergebnisse kontinuierlich in den SME integriert werden. Dazu gehören u.a. folgende Testfunktionalitäten:

  • Ad-Hoc-Tests
    Mit Hilfe von Ad-Hoc-Tests können Anwender Validierungen und Berechnungen isoliert testen – sowohl für einzelne Fälle und Regeln, als auch für umfangreichere Modellabschnitte. Dazu starten sie die Ad-hoc-Prüfung über das Kontextmenü eines Elements des Modellbaums oder nutzen die Funktion als Teil einer Bulk-Operation. Es öffnet sich eine Vorschau, die nur die ausgewählten Elemente sowie die von den ausgewählten Regeln betroffenen Felder enthält. Hier können Modellierer Testdaten eingeben, um zu prüfen, ob die Regeln greifen und ob Fehlermeldungen ausgegeben werden, wenn die Testeingabe ungültig ist. Beim Testen umfangreicher Abschnitte eines Dokumentenmodells können die Testeingaben auch gespeichert und später wieder geladen werden. Dies erspart Zeit für wiederholte Eingaben.
  • Rule Contradictions Report
    In umfangreichen Document Models können sich Widersprüche einschleichen, die sich über mehrere Regeln erstrecken und teils sehr schwer zu finden sind. Der A12 Testdatengenerator (TDG) ist in der Lage, solche Fehler aufzudecken. Das Feature ist ursprünglich als Nebenprodukt der Testdatengenerierung mit mathematischen Verfahren der Satisfiability Modulo Theories (SMT) entstanden. Vereinfacht gesagt wird dabei geprüft, ob alle Datenfelder und Gruppen ohne Validierungsfehler mit Werten gefüllt werden können. Falls nicht, zeigt der Rule Contradictions Report detailliert auf, wo es hakt.

Web-Technologie als Basis für eine Cloud-basierte Modellierungs-Umgebung

Neben der sukzessiven Erweiterung des Funktionsumfangs wird der SME künftig voraussichtlich auch auf neue Arten und Weisen bereitgestellt. Bislang wurde das Tool mit Hilfe des A12 Installers ausgeliefert, der nach dem Download lokal installiert werden kann. Fachverantwortliche und Business Analysten laden sich die entsprechende Installationsdatei für Windows, Mac oder Ubuntu herunter und bekommen eine vollständige A12 Modellierungsumgebung. Dazu gehört neben dem SME als Desktop-Anwendung u.a. auch eine Preview App, mit der sich modellierte Webanwendungen im Browser testen lassen. Da der SME mit den Mitteln von A12 – und damit auf Basis von modernen Web-Technologien – gebaut ist, sind aber auch weitere Arten der Bereitstellung möglich.

Unsere Vision ist eine komplett Cloud-basierte Modellierungsumgebung, die auf Knopfdruck erstellt und einfach verwaltet werden kann

„Bei der Entwicklung des SME war von Anfang an klar: Das Tool soll im Web funktionieren“, sagt Ansgar Weiss, Projektmanager von A12. Die plattformübergreifenden Desktop-Anwendungen, die für die lokale Installation ausgeliefert werden, entstehen mit Hilfe des Electron Frameworks. Mittlerweile wird der SME jedoch auch als Docker-Image bereitgestellt. So lässt sich das Tool zentral deployen und als Web-App direkt im Browser nutzen. Dies ist vor allem für Organisationen interessant, deren Sicherheitsrichtlinien es nicht erlauben, die Software lokal zu installieren. „Unsere Vision ist eine komplett Cloud-basierte Modellierungsumgebung, die auf Knopfdruck erstellt und einfach verwaltet werden kann“, sagt Ansgar Weiss. „Die Bereitstellung der Container-Images ist der erste Schritt in diese Richtung. Wir prüfen aktuell, wie eine Admin-Oberfläche aussehen könnte und welche Preview- und Testfunktionalitäten in die Umgebung einfließen sollten“

Ansgar Weiss, Projektmanager von A12

Mögliche Erweiterungen rund um die Konfiguration einer Anwendung

Auch wenn der Fokus des SME derzeit auf den Modellierungsmöglichkeiten liegt, reicht der Blick darüber hinaus. „Aus strategischer Sicht betrachten wir bei der Weiterentwicklung der A12 Tools nicht nur die Ebene der Modellierung. Wir sehen ganzheitlich die Herausforderungen der Enterprise Software Entwicklung“ sagt Hamarz Mehmanesh. „So haben wir eine Reihe von Standards und Templates geschaffen, um Großprojekte sehr schnell aufzusetzen. Und zwar mit allen benötigten Disziplinen und Teilaufgaben – von der Projektinfrastruktur über Security bis zur Qualitätssicherung. In all diesen Bereichen gibt es viele konfigurative Aspekte und Admin-Tools, die wir sukzessive weiterentwickeln.“

Perspektivisch könnten auch immer mehr dieser Konfigurations-Tools in den SME einfließen. „Wir haben mit dem SME eine sehr flexible, modulare und mächtige Ausgangsbasis geschaffen. Deshalb stellen wir uns auch bei Tools mit konfigurativem Charakter die Frage: Macht es Sinn, sie zu integrieren?“ erklärt Hamarz Mehmanesh. Die Orchestrierung solcher Tools unter einem Dach könnte wiederum neue Sichten auf die vielfältigen technischen Dimensionen von Geschäftsanwendungen erzeugen – und damit die Entwicklung, den Betrieb und die Wartung von langfristig ausgelegter Enterprise Software weiter vereinfachen.

Wesentliche Funktionen des SME im Überblick

Modelle innerhalb eines Projekt-Workspace managen

  • Übersichtlicher „Workspace Explorer“ für die Verwaltung aller A12-Modelle
  • Modelle erstellen, löschen, umbenennen, verschieben

Fachlichkeit von Geschäftsanwendungen abbilden

  • Datenmodelle für Entitäten und Beziehungen definieren
  • Deskriptive Perspektiven: Modellbäume und Feldeditoren
  • Visuelle Perspektiven: Model Graph Diagram Editor
  • Regeleditor für Validierungen und Berechnungen mit Autocomplete

Online-Formulare gestalten

  • Schnelle Erstellung von Formularen per Drag & Drop von Datenfeldern
  • Live-Preview: Änderungen sind sofort sichtbar
  • Unterstützung für wiederholbare Strukturen

Tabellen und Baumstrukturen erstellen

  • Modellierung Daten-getriebener Übersichtstabellen und Baumstrukturen
  • Einfach aktivierbare Features wie Multiselection, Volltextsuche, Filter, etc.
  • Flexibel einrichtbare Schaltflächen für Custom Actions

Anwendungsrahmen modellieren

  • Globale Layout-Einstellungen
  • Definition von Subregionen wie Content-Bereich und Sidebar
  • Verwaltung von Modulen für wesentliche Bereiche der Anwendung

Qualitätssicherung: Modellierte Inhalte testen

  • Ad-Hoc-Tests für das gezielte Testen ausgewählter Validierungen und Berechnungen
  • Rule Contradictions Report deckt Widersprüche in Regeln auf, die sich über mehrere Datenfelder erstrecken
  • Automatische Erkennung von Konsistenzproblemen in Modellen