DMN Decision Engine

DMN-Entscheidungstabellen ausführen
und fachliche Flexibilität ermöglichen.

DMN 1.1 Support

Die Decision Engine führt DMN 1.1 Entscheidungstabellen und Decision Requirements Diagrams aus. Mehr Details finden Sie unter Docs: DMN 1.1 Reference.

Mit DMN können fachliche Stakeholders selbstständig automatisierbare Geschäftsregeln definieren und pflegen, was die Flexibilität auf Fachseite deutlich erhöht.

Sie können die bereits vorhandene Integration mit der Workflow Engine nutzen, um Entscheidungstabellen in Ihren automatisierten Prozessen auszuführen. Sie können alternativ dazu die Decision Engine aber auch komplett eigenständig benutzen.

REST API

Sie können die Decision Engine via REST aufrufen, um Entscheidungstabellen auszuführen. Konkrete Beispiele hierzu finden Sie unter Docs: DMN REST API.

Sie können außerdem via REST die Camunda History aufrufen um abzufragen welche Entscheidungen getroffen wurden, inklusive ihrer Input-Parameter, der Geschäftsregeln die in diesem Fall angewandt wurden, und der entsprechenden Output-Parameter.

POST /decision-definition/key/dress-decision/evaluate
Request Body:
{"variables":
     "Weather" : { "value" : "Sunny", "type" : "String" }
}
Response:
[{"result":{
      "value":"T-Shirt",
      "type":"String"}
}]

Java API

Fügen Sie die Decision Engine als simple Maven dependency ihrem Java-Projekt hinzu, und nutzen Sie die Java API in Ihrer Anwendung.

Dieser Ansatz erlaubt Ihnen u.a. die Entwicklung von JUnit tests für Ihre Entscheidungstabellen.

Die Decision Engine ist weniger als 1MB groß und läuft in jeder JVM.

Map variables = new HashMap();
variables.put("Weather", "Sunny");
DmnDecisionResult result = dmnEngine.evaluateDecisionTable("dress-decision", variables);
System.out.println (result.getSingleEntry());

Performance

Wir haben die erste Version der Camunda Decision Engine im November 2015 veröffentlicht. Mittlerweile wird sie von zahlreichen Organisationen produktiv eingesetzt, um Hochvolumina-Szenarien Entscheidungen zu automatisieren.

Auf Basis des Feedbacks dieser Nutzer haben wir die Performance der Decision Engine kontinuierlich weiter entwickelt.

Blog Post: DMN Performance Improvements