Main Image
Bild
ECA Logo
17. September 2021

Ereignis Condition Aktion - Geschäftsprozessmodellierung in Drupal 9+

by Richard Papp

Unsere neue Modulsuite soll das beliebte 7 Rules Modul für Drupal 8+ ersetzen. Aber nicht nur Rules. Vielmehr bietet es auch Funktionen aus anderen Modulen (z.B. Automatic Entity Label) und zur Formularvalidierung.

Regeln erlauben es Website-Administratoren, bedingt ausgeführte Aktionen auf der Grundlage von auftretenden Ereignissen zu definieren (bekannt als reaktive oder -Regeln). Sie können z.B. eine Nachricht an den Benutzer anzeigen oder eine E-Mail senden, wenn Inhalte aktualisiert werden.

Die Version von Drupal 8+ befindet sich allerdings noch im Alpha-Release-Stadium und muss noch erheblich überarbeitet werden. Es gibt ein Modul tr_rulez, um die Lücken zu schließen, aber es ist nur in einer Entwicklungsversion verfügbar. Business rules wird nur minimal gepflegt und ist auch nicht stabil. Wenn Sie also etwas Ähnliches in Drupal 8+ machen wollten, wären Sie bisher aufgeschmissen gewesen.

ECA

Um Drupal 7-Anwendungen, die stark mit Regeln arbeiten, zu aktualisieren, haben wir nach einer alternativen Lösung für Drupal 9+ gesucht. Basierend auf früheren Diskussionen auf Twitter kamen wir auf die Idee eines Event - Condition - Action Prozessors, der Geschäftsprozessmodelle verarbeiten kann, die als Drupal Config Entities gespeichert sind.

Sa., 18.12.2021 - 14:01
Twitter - Replace Rules

Die Modelle sollen mit Modellierern erstellt werden, die durch Plugins entweder als eigenständige Anwendungen oder als Teil der Drupal-Benutzeroberfläche integriert werden. So könnte jeder leicht seinen eigenen Modellierer hinzufügen, wenn er es wünscht.

Unser Ziel war es, bestehende Drupal-Kernkomponenten so weit wie möglich wiederzuverwenden und für neue Komponenten auf die Drupal-API zu setzen. Drupal bietet von Haus aus Ereignisse, Ereignisteilnehmer und Aktionen. Es gibt auch eine Plugin-API, mit der weitere Komponenten hinzugefügt werden können. Auf diese Weise können Komponenten überall in Drupal wiederverwendet werden, nicht nur im Kontext unseres Moduls.

Das einzige, was wir dem Prozessor hinzufügen mussten, war ein Plugin-Manager für Bedingungen und ein kleiner Trick, um entitätsbezogene Aktionen miteinander zu verketten.

Modellierer

Stellen Sie sich den Modeller als die Benutzeroberfläche für ECA-Konfigurationsentitäten vor. Er kann als @EcaModeler Plugin integriert werden, das Modelle als Konfigurationsentitäten speichert. Der Plugin-Manager wird durch das ECA-Modul bereitgestellt.

2 Modeler sind bereits integriert. Wir haben uns bisher auf BPMN-Modellierer verlassen, da nicht-technische Benutzer an Flussdiagramme gewöhnt sein könnten. Ähnlich wie Behat ermöglichen BPMN-Modellierer die Definition und Dokumentation von Geschäftsprozessen in einer für Unternehmen lesbaren Sprache, auf einmal. Es muss keine zusätzliche Dokumentation geschrieben werden und ein Diagramm sagt manchmal mehr als tausend Worte.

Dokumentation

Tags

Tools

Neuen Kommentar hinzufügen