Back to classroom courses >

JB451 BRMS Workshop

Course Outline

Unit 1 - Intro to JBoss Drools:

This module covers the background and history of rule engines, and what a rule and rule engine actually is, and what they are typically used for. The importance of declarative programming will be emphasized. This module also covers some core concepts such as pattern matching and forward chaining, and provides a quick overview of JBoss Drool features.

Unit 2 - Overview of the Rules Development Process:

A process model for developing rules is presented, to which more details will be added during the course.

Unit 3 - The Drools Rule Language:

This module provides a fairly detailed introduction to the Drools Rule Language, including constraints, bindings, conditional elements, etc. This module also includes a discussion on the Drool API. A short lab is included that will provide experience in authoring and executing a rule, which will also show off the Drools IDE.

Unit 4 - The JBoss Developer Studio / Drools IDE:

The Eclipse Plugin which builds the main Drools IDE from the developer perspective is introduced.

Unit 5 - The RETE Algorithm:

This module covers core concepts of a forward chaining engine. This will include an explanation of a basic non scalable inferencing algorithm (linear), before introducing the RETE algorithm. It will discuss how and when a RETE network is built, and how facts propagate through the network resulting in rules being activated. A lab will be performed to make some of the concepts more concrete.

Unit 6 - Decision Tables:

The Business Rules Management System and the Web GUI for the Business Analyst for authoring, importing, managing, and deploying rules introduced. The BRMS will be installed and used in a lab to get in touch with all the features. All succeeding labs will build on top of each other based on a consistent business story.

Unit 7 - Business Rule Manager - Administration and Guided Rule Editor:

After this module students will be familiar with decision tables which are yet another way of capturing rules. A lab similar to the first two lab will be performed to provide familiarity with Decision Tables.

Unit 8 - Business Rule Manager - QA and Deployment:

The students will learn about defining tests for the business rules within the BRMS by using the web interface, backed by a lab. Students will learn how to build deployment snapshots in the repository and how to use these deployments in a live system.

Unit 9 - JBDS BRM Integration:

Drools Guvnor is the repository behind the BRMS and can be accessed by the Drools IDE as well. Students will learn how to connect the both worlds.

Unit 10 - Domain Specific Languages:

After this module students will be familiar with both domain specific languages which are alternative ways of capturing rules. A lab similar to the first lab will be performed to get comfortable with creating DSLs.

Unit 11 - Advanced Rule Language:

This module covers advanced features of the Drools Rule Language, including additional conditional elements (from, collect, and accumulate), the use of the MVEL dialect, etc.

Unit 12 - Execution Control:

This module discusses several strategies for control the execution of rules, including the use of salience, agenda groups, and control facts.

Unit 13 - Ruleflow:

This module discusses an important strategy for control the execution of rules, namely ruleflow. With ruleflow, the rule author can sequence the execution of groups of rules using a graphical design tool. A lab will be performed that demonstrates the use of ruleflow.

Unit 14 - Performance and Conclusion:

This module reviews several "best practices" for authoring rules, particularly when performance is a concern. The process of developing rules is revised and discussed in more depth.

APPENDIX - Complex Event Processing:

Drools Fusion is able to support Complex Event Processing (CEP), a technology to react on patterns found in a stream of events. CEP and Drools Fusion is introduced, so that the students get a good overview about it.

Links for this sub-section:


Contact Us

You can contact Red Hat Training and Certification via the contact form
or by phone
+44 (0)1252 362709