Beginning JBoss Drools

The Drools/JBoss Rules Training is designed to give Java developers a solid foundation on Business Rule Engines, their applicability to solving traditional business and a mental model of how to design and architect with Rules Systems. The course is structure as a 3 day course, beginning with a foundations day and quickly moving to a problem solving based approach were students put the concepts just learned to the test. Day 1 - Foundations Day 2 - Problem Solving with Drools (Hands on) Day 3 - Advanced Topics (1/2 Day) - Applying Drools to your Business (1/2 Day) (Hands On)


Session Agenda

Sessions begin at 9AM and end at 5PM. Attendees must bring their own laptop.

Day 1: Foundations

  • Declarative Programming
  • Rule Engines, Expert Systems and Expert Shells
  • Forward and Backward Chaining
  • Why and when to use Rule Based Systems
    • Value Proposition
  • Implementing Business Rules
  • 10 design tips when building a Rules Based system
  • The Rete Algorithm and ReteOO
  • Architecture of a Rule Based System
  • Some real world applications of a Rule Engine
  • Introducing Drools/JBoss Rules
    • A little beyond Hello World
  • Drools Architecture
    • RuleBase, WorkingMemory, Fact Manipulation and Rule Execution

Day 2: Problem Solving with Drools (Hands on)

  • Installing and configuring Drools in a JSE environment
  • Drools for Programmers:
    • The DRL File
    • The Drools Rule Language
    • Assertion, Retraction and Modification
    • Property Change Listeners
    • Globals
    • Initial and Shadow Facts
    • Agenda
    • Basic Conflict Resolution
  • Recipe Finder Application: A simple Drools applications
  • Using the Drools Eclipse IDE Plugin - Rule Workbench
  • Taking the Recipe Finder to the Web
    • Drools in Tomcat
  • Storing and Managing your Rules
  • Drools for Business Users
    • Authoring Rules
    • DSLs - Domain Specific Languages
    • Decision Tables
  • Stateless and Stateful Sessions
  • Drools Event Model

Day 3: Advanced Topics and Applications

  • Querying the Working Memory
  • Business Process Management with RuleFlows
  • Performance Considerations
  • Loan Calculator
    • An advanced DSL-based JEE Drools Application
    • Deployment in JBoss
    • EJB3 Integration
    • Seam/Spring Integration
  • Applying Drools to your Business
    • Analysis and Design
    • Sprint Planning, Features
    • DSL or DRL or Decision Tables?
    • JSE TDD Proof of Concept
    • Simple Web or Swing based Client
  • Q & A Session