Catalogue
/
Business Analysis and Process Management
/
Building Decision Services for Developers with Drools and DMN

Building Decision Services for Developers with Drools and DMN

Learn how to develop, test, package and operate decision services using Drools, Drools Rule Language and Decision Model and Notation. This three-day, developer-focused course covers Drools architecture, Maven-based project configuration, the KIE API, rule execution, automated testing and application integration. Participants implement decision logic using DRL, spreadsheet decision tables and DMN models. They learn how to manage facts and sessions, control rule execution, expose decisions through REST or event-driven interfaces and operate versioned decision services. The course is designed to remain independent of a particular Drools, KIE, Java or application-framework release wherever possible. Examples and dependencies can be adapted to the supported technology versions used by the organisation.

What will you learn?

You will learn how to build decision services that separate changeable decision logic from general application code. You will configure Drools projects, create and execute rules, work with DMN models, test decision outcomes and integrate rule execution into Java applications and distributed systems.

• Understand the architecture and execution model of Drools

• Configure Maven projects with the required Drools and KIE dependencies

• Build, package and load rule modules through the KIE API

• Write maintainable rules using Drools Rule Language

• Manage facts, sessions, activations and rule execution

• Compare different supported rule-execution approaches

• Work with generated or executable rule models where supported

• Implement spreadsheet decision tables and executable DMN models

• Create automated unit, integration and decision-service tests

• Expose decision logic through REST and event-driven interfaces

• Monitor, deploy and version decision services

• Plan the migration of existing older Drools applications

Requirements:

• Practical knowledge of Java

• Familiarity with object-oriented programming and Java collections

• Basic experience with Maven

• Familiarity with REST APIs and JSON is recommended

• Basic understanding of automated testing with JUnit or a comparable framework is beneficial

• Previous experience with Drools or DMN is not required

• A Java development environment compatible with the selected Drools distribution

Course Outline*:

*We customize the course outline and content to your specific needs and relevant use cases.

Day 1: Drools architecture, projects and rule execution

Module 1: Decision services and Drools architecture

• Identifying suitable use cases for rules and decision services

• Separating decision logic from application and workflow code

• Understanding rule bases, working memory, rule evaluation and the agenda

• Comparing embedded rule execution with independently deployed decision services

Module 2: Maven and KIE project configuration

• Creating a Maven-based Drools project

• Managing Drools, KIE, DMN and testing dependencies

• Organising Java classes, DRL files, DMN models and other rule assets

• Building, validating and packaging rule modules

Module 3: The KIE API and rule modules

• Working with the principal KIE services and runtime components

• Loading rule resources from the application classpath or packaged artefacts

• Understanding rule-module packaging and configuration metadata

• Comparing source-based rule compilation with generated execution models where supported

Module 4: DRL fundamentals and fact modelling

• Structuring DRL packages, imports, declarations and rules

• Writing rule conditions and consequences

• Modelling Java objects and declared types as facts

• Using constraints, bindings, operators and rule attributes

Day 2: Rule behaviour, DMN and automated testing

Module 5: Facts, sessions and rule execution

• Inserting, updating and retracting facts

• Comparing stateless and stateful execution

• Understanding activations, conflict resolution and agenda behaviour

• Managing session lifecycle, shared values and execution results safely

Module 6: Advanced rule development

• Applying aggregation, collection, existence and negation operations

• Managing derived facts, inference and truth maintenance

• Grouping and controlling rule execution

• Comparing session-based execution with alternative supported execution models

Module 7: Decision tables and DMN execution

• Selecting DRL, spreadsheet decision tables or DMN for different requirements

• Compiling spreadsheet decision tables into executable rules

• Loading, validating and evaluating DMN models through the Drools DMN API

• Mapping Java and service data to DMN inputs and decision results

Module 8: Unit and integration testing

• Testing individual rules with controlled facts and expected outcomes

• Testing stateful behaviour and sequences of fact changes

• Testing DMN decisions, validation messages and error conditions

• Integrating decision tests into Maven and continuous-integration builds

Day 3: Decision-service integration, deployment and migration

Module 9: Packaging rules as decision services

• Separating domain models, rule assets and service interfaces

• Encapsulating rule execution behind an application service

• Managing runtime creation, input mapping and result transformation

• Designing stateless and stateful decision-service boundaries

Module 10: REST and event-driven integration

• Exposing decision execution through REST endpoints

• Validating requests and returning consistent decision responses

• Consuming events and invoking rules through messaging infrastructure

• Designing idempotency, correlation and failure-handling behaviour

Module 11: Observability, deployment and versioning

• Recording rule executions, outcomes and diagnostic information

• Adding metrics, structured logs and trace correlation

• Packaging decision services for server-based or containerised deployment

• Versioning rule artefacts, APIs and decision contracts independently

• Supporting controlled rollout, rollback and audit requirements

Module 12: Migration from older Drools and end-to-end implementation

• Reviewing project structure, dependencies and runtime APIs in an existing older Drools application

• Identifying deprecated, changed or implementation-specific components

• Evaluating supported rule-compilation and execution approaches for the target environment

• Detecting behavioural differences through regression testing

• Building, testing, packaging and exposing a complete versioned decision service

Hands-on learning with expert instructors at your location for organizations.

5,922€*
Graph Icon - Education X Webflow Template
Level:
advanced
Clock Icon - Education X Webflow Template
Duration:
21
Hours (days:
3
)
Camera Icon - Education X Webflow Template
Training customized to your needs
Star Icon - Education X Webflow Template
Immersive hands-on experience in a dedicated setting
*Price can range depending on number of participants, change of outline, location etc.

Master new skills guided by experienced instructors from anywhere.

4,587€*
Graph Icon - Education X Webflow Template
Level:
advanced
Clock Icon - Education X Webflow Template
Duration:
21
Hours (days:
3
)
Camera Icon - Education X Webflow Template
Training customized to your needs
Star Icon - Education X Webflow Template
Reduced training costs
*Price can range depending on number of participants, change of outline, location etc.

Upcoming Sessions

29 Sep - 1 Oct 2026
Warsaw
9-11 Dec 2026
Paris
16-18 Dec 2026
Barcelona
21-23 Jan 2027
London
4-6 Feb 2027
Lisbon
24-26 Feb 2027
London
1-3 Apr 2027
Dublin

Can't find a suitable date? Get in touch and we'll arrange one that works for you.

We use cookies to improve site navigation, analyse how the site is used, and support our marketing. You can accept all cookies, reject non-essential ones, or choose individual categories. Read our Cookie Notice