Geschäftsregeln für Benutzeroberflächen

Geschäftsentscheidungen gehören nicht in den Anwendungscode

Die meisten Anwendungen enthalten tausende Geschäftsentscheidungen, die direkt beeinflussen, welche Felder sichtbar sind, welche Validierungen aktiv werden, welche Workflow-Schritte möglich sind und wie Benutzer mit der Anwendung interagieren.

Werden diese Entscheidungen im Frontend oder Backend implementiert, werden sie schwer wartbar, in mehrere Systeme kopiert und erfordern bei jeder Änderung neue Software-Releases.

CLE entkoppelt Geschäftsentscheidungen vom Anwendungscode und stellt die Ergebnisse über APIs bereit. Benutzeroberflächen konsumieren lediglich die Entscheidungsergebnisse.

Behalten Sie die Anwendung. Ersetzen Sie die fest im Anwendungscode verankerte Logik.

Benutzeroberflächen sind voller Geschäftsentscheidungen

Viele Unternehmen gehen davon aus, dass Benutzeroberflächen hauptsächlich aus Layout und Design bestehen.

In der Praxis enthalten Geschäftsanwendungen jedoch große Mengen an Entscheidungslogik.

Typische Beispiele sind:

  • Feldsichtbarkeit
  • Pflichtfelder
  • Schreibgeschützte Felder
  • Zulässige Werte
  • Sichtbarkeit von Registerkarten
  • Workflow-Übergänge
  • Validierungsregeln
  • Vollständigkeitsprüfungen

Je mehr dieser Entscheidungen entstehen, desto schwieriger wird die Wartung der Anwendung.

Jede Regeländerung erfordert Codeänderungen, Tests und Deployments.

Produktivsystem, in dem Feldverhalten, Validierungen und Workflow-Entscheidungen durch Entscheidungsmodelle statt durch im Anwendungscode verankerte Geschäftslogik gesteuert werden.

Das Verhalten von Benutzeroberflächen ist eine Geschäftsentscheidung

Feldsichtbarkeit, Bearbeitbarkeit und Pflichtfelder sind keine technischen Implementierungsdetails.
Es handelt sich um Geschäftsregeln, die dem Fachbereich gehören.

In der Praxis sind diese Entscheidungen häufig tief im Frontend- oder Backend-Code versteckt. Das Ergebnis sind endlose Abstimmungsschleifen zwischen Fachbereich und Entwicklung. Das gewünschte Verhalten von Benutzeroberflächen über Spezifikationen, Tickets und Abstimmungen korrekt umzusetzen, ist oft langsam und fehleranfällig.

  • Anwendungen stellen Benutzeroberflächen dar.
  • Fachbereiche definieren das Verhalten direkt, ohne Übersetzung.
  • CLE führt die Entscheidungen aus.

Entscheidungsgetriebenes Formularverhalten

Die folgenden Beispiele zeigen, wie Geschäftsentscheidungen das Verhalten von Formularen unmittelbar steuern.

Das Entscheidungsmodell definiert, welche Felder Pflichtfelder sind, bearbeitet werden dürfen und wann Validierungsregeln aktiviert werden.

Die Screenshots zeigen den resultierenden Zustand der Benutzeroberfläche nach der Ausführung des Entscheidungsmodells durch CLE. Derselbe Ansatz lässt sich in ERP-Systemen, PIM-Systemen, CRM-Plattformen, CPQ-Lösungen, Kundenportalen und individuellen Anwendungen einsetzen.

Beispiel 1: Kein autofreier Bereich definiert

Geschäftsentscheidung

Resultierender Zustand der Benutzeroberfläche

Beispiel 2: Zusätzliche Informationen werden verpflichtend

Im zweiten Szenario ändert sich die Geschäftsentscheidung.

Sobald ein Teil des Campingplatzes als autofreier Bereich definiert wird, werden zusätzliche Angaben verpflichtend. Die Benutzeroberfläche passt sich automatisch an, Validierungsregeln werden aktiviert und fehlende Informationen werden sofort hervorgehoben.

Geschäftsentscheidung

Resultierender Zustand der Benutzeroberfläche

CLE führt das Entscheidungsmodell aus.
Die Anwendung konsumiert die resultierenden UI-Entscheidungen.

UI-Entscheidungen als verschachteltes JSON zurückgeben

CLE schreibt kein bestimmtes UI-Schema vor.

Entwickler entscheiden selbst, welche Entscheidungsobjekte, Felder und Eigenschaftsnamen ihre Anwendung benötigt.
CLE kann UI-Entscheidungen als strukturiertes verschachteltes JSON zurückgeben.

Objektnamen wie discountField sowie Eigenschaften wie visible, editable oder mandatory werden vollständig von der Anwendung definiert.

CLE bewertet das Entscheidungsmodell und liefert exakt die Attribute zurück, die von der konsumierenden Anwendung benötigt werden.


Warum UI-Regeln zum Problem werden

Im Anwendungscode verankerte UI-Logik skaliert nicht

Die meisten Anwendungen sammeln im Laufe der Zeit hunderte oder sogar tausende UI-Regeln an.

Entwickler implementieren diese Regeln in:

  • React
  • Angular
  • Vue
  • Java
  • .NET
  • TypeScript

Mit der Zeit treten typische Probleme auf:

  • Regeln werden dupliziert.
  • Verhalten wird inkonsistent.
  • Änderungen erfordern Releases.
  • Fachbereiche verlieren die Kontrolle.
  • Updates überschreiben individuelle Logik, wenn Hersteller-Updates fest verankerte Regeln ersetzen.

Das Problem ist nicht die Benutzeroberfläche.

Das Problem ist der Ort, an dem die Entscheidungen ausgeführt werden.

Mit CLE leben UI-Entscheidungen außerhalb der Anwendung. Software-Updates beeinflussen die Entscheidungsmodelle nicht.


Excel als Modellierungssprache

Fachbereiche definieren das Verhalten

Die Fachbereiche kennen die Regeln bereits.

Sie wissen:

  • wann Felder verpflichtend werden
  • wann Felder sichtbar sind
  • wann Daten vollständig sind
  • wann Workflows fortgesetzt werden dürfen

CLE ermöglicht es Fachbereichen, Geschäftsentscheidungen in Excel zu modellieren und über APIs auszuführen.

Das Verhalten von Benutzeroberflächen wird damit zu einem möglichen Ergebnis eines Entscheidungsmodells.

Keine proprietäre Regelsprache
Keine Frontend-Programmierung
Keine Software-Releases


Warum Unternehmen CLE einsetzen

Dynamische Benutzeroberflächen

Steuern Sie Sichtbarkeit, Bearbeitbarkeit und Pflichtfelder über Entscheidungsmodelle.

Konsistentes Verhalten

Verwenden Sie dieselben Regeln über mehrere Anwendungen hinweg.

Schnellere Änderungen

Passen Sie Geschäftsentscheidungen an, ohne Anwendungscode zu ändern.

Fachbereichsgesteuerte Logik

Ermöglichen Sie Fachbereichen die eigenständige Pflege von Regeln.

Nachvollziehbare Entscheidungen

Verstehen Sie jederzeit, warum ein Feld sichtbar oder verpflichtend geworden ist.

Weniger technische Schulden

Entfernen Sie Geschäftslogik aus Benutzeroberflächen und Anwendungscode.


Für Softwareanbieter

Softwareanbieter entwickeln häufig eigene Regelwerke für Benutzeroberflächen, Validierungen und Workflows für jedes Produkt und jeden Kunden neu.

Die Herausforderung wächst noch weiter, sobald Anwendungen kundenspezifische Felder, Workflows und Validierungen unterstützen.

Sobald Kunden das Datenmodell erweitern können, werden auch die dazugehörigen Geschäftsregeln kundenspezifisch. Feldsichtbarkeit, Pflichtfelder, Validierungen und Workflow-Verhalten können dann nicht mehr sinnvoll fest in das Produkt programmiert werden.

CLE fungiert als externe Decision Runtime für Benutzeroberflächen, Validierungen, Workflow-Entscheidungen und Geschäftsregeln.

Anstatt dieselbe Logik immer wieder für Produkte, Kunden und Projekte neu zu implementieren, werden Entscheidungsmodelle zentral gepflegt und über APIs ausgeführt.


Ein Entscheidungsmodell für mehrere Anwendungen

Ein einziges Entscheidungsmodell kann UI-Entscheidungen bereitstellen für:

  • PIM-Systeme
  • ERP-Systeme
  • CRM-Plattformen
  • CPQ-Lösungen
  • Kundenportale
  • Produktkonfiguratoren
  • Individuelle Anwendungen

Jede Anwendung erhält dasselbe Entscheidungsergebnis.

Keine doppelte UI-Logik
Kein inkonsistentes Verhalten
Keine endlosen Individualentwicklungen


Behalten Sie die Benutzeroberfläche. Ersetzen Sie die Logik.

Die Anwendung besitzt die Daten.
Der Fachbereich definiert das Verhalten.
CLE führt die Geschäftsentscheidungen aus.

Behalten Sie die Anwendung. Ersetzen Sie die fest im Anwendungscode verankerte Logik.

Nach oben scrollen