JB451 JBoss Rules
The JBoss Rules training class is targeted at middleware application developers and architects, with zero to moderate experience with rules technology, who want to use rules to implement their application business logic, and integrate the rules engine with their application.
Further to this, application architects or advanced developers looking to improve approaches to business logic management in their applications would also find this course of value - it also serves as an introduction to rule based technologies.
Course Description
The course covers JBoss Drools 4.0, including the various languages that can be used to author business rules, the Business Rule Management System, forward chaining and the RETE algorithm, advanced rule authoring, execution control, ruleflow, and performance considerations and debugging.
What you will learn:
Course Outline
Note: Technical content subject to change without notice. Significant changes in course content will generally be available in posted outlines at least two months prior to being implemented in scheduled courses, to allow enrolled students adequate prep time. Reload this page regularly to insure up-to-date information.
Course content
- 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. - he 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. - 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. - Rule formats: Decision Tables
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. - BRMS
This module introduces the Business Rules Management System (BRMS), a combination of a rule repository and a web GUI for authoring, importing, managing, and deploying rules. The module concludes with a lab that created rules using the BRMS Guided Rule Editor. - 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. - 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.
- Execution Control This module discusses several strategies for control the execution of rules, including the use of salience, agenda groups, and control facts.
- 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.
- Performance and Debugging This module reviews several "best practices" for authoring rules, particularly when performance is a concern. This module also introduces the Drool IDE debugger. demonstrates the use of ruleflow.
Track:
Part of The JBoss Enterprise Framework Platform curriculum, which includes:
- JB163 JBoss Portal
- JB267 JBoss: Advanced Hibernate
- JB439 JBoss Clustering
- JB449 JBoss jBPM
- JB451 JBoss Rules
- JB453 JBoss ESB
- MM157 MetaMatrix Introduction
Prerequisites:
Pre-requisite skills for this course are:
- Basic Java competency
- Some familiarity with Eclipse
Audience
JB451 JBoss Rules is targeted at middleware application developers, with zero to moderate experience with rule technology. Developers who need to use rule technologies to manage their applications business logic, and integrate the rule engine with their application would get value from this course. In addition, application architects or advanced developers looking to improve approaches to business logic management in their applications would also find this course of value - it also serves as an introduction to rule based technologies.
Class times:
-
Thursday through Friday
- Start: 9:00am
- End: 4:30 to 5:00pm (depending on class progress)
