Rule Engine

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg

Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.

Definition

Eine Rule Engine ist ein Framework, dass Funktionen zur Automatisierung und Verwaltung von Geschäftsregeln zur Verfügung stellt. Die Regeln werden mithilfe des Framework in eine Anwendung integriert und steuern damit den Ablauf eines Programms. Die gleiche Software ist auch unter den Begriffen Business Logic Server, Rule-Processing Server und Decision Management Platform bekannt.

Eine Aufgabe einer Rule eingine ist es Regeldefinitionen zu speichern. Die Regeln werden bei einer Vielzahl der Frameworks in herstellerspezifischen Formaten abgelegt. Es gibt jedoch Ansätze dies zu standardisieren. Eine Möglichkeit ist die Rule Markup Language (kurz RuleML). Neben dem Speichern der Regeln bieten Rule Engines die Möglichkeit, Regeln während der Laufzeit einer Anwendung zu pflegen. Dies bietet den Vorteil, dass das Verhalten einer Software ohne Programmierkenntnisse beeinflusst werden kann. Die Möglichkeiten zum Erstellen, Ändern und Löschen der Regeln unterscheiden sich je nach Framework stark voneinander. Die Lösungen bieten Regeldefinitionen beispielsweise in Textdateien, grafischen Werkzeugen oder Diagrammzeichnungen.

Der Kern jeder Rule Engine ist die automatisierte Ausführung der Regeln. Eine Rule Engine interpretiert und/oder kompiliert die Regeln und stellt diese einer Anwendung zur Verfügung um Entscheidungen zu treffen.

Regeln

Das einfachste Beispiel für eine Regel ist das, aus der Programmierung bekannte, Wenn-Dann- oder If-Then-Prinzip. Eine frei formulierte Regel könnte zum Beispiel „Wenn der Umsatz dieses Jahr über 10.000 Euro betrug, dann ist der Kunde bevorzugt.“ lauten. Eine weitere Darstellungsform für Regeln ist eine Entscheidungstabelle.

Anbieter

Es gibt eine Vielzahl von Anbietern, die Rule Engines und Frameworks mit ähnlichen Konzepten Anbieten. Darunter auch Lösungen namhafter Hersteller wie Oracle und Microsoft. Eine Auswahl an frei verfügbaren Frameworks oder für die Forschung kostenlosen sind:

  • Drools ‒ Drools ist ein Projekt von jboss.org, ist auch unter dem Namen JBoss Rule und ist eine auf Java basierende Lösung.
  • NxBREOpensource Rule Engine, die auf der .NET-Plattform beruht.
  • Jess ‒ Eine auf Java basierende Software, die für den wissenschaftlichen Gebrauch kostenlos zur Verfügung steht.
  • Visual Rules ‒ Eine prinzipiell kommerzielle Lösung, für die jedoch für Bildungseinrichtungen eine kostenfreie Lizenz beantragt werden kann.

Eine Auswahl von kommerziellen Anbietern ist unter brportal.org zu finden:

Quellen und weiterführende Literatur