Who should attend
- Rule authors responsible for authoring and testing rules, using Red Hat JBoss Developer Studio
- Java application developers responsible for developing and integrating business rules into Java and Java EE enterprise applications
Prerequisites
- Basic Java and Java EE programming experience
- Knowledge of the Eclipse IDE, Maven, and GIT are useful, but not essential
- Business rule development experience is not required
Course Objectives
- Authoring basic business rules in Red Hat JBoss Developer Studio
- Authoring advanced rules
- Testing and debugging business rules
- Using spreadsheet decision tables
- Authoring and using DSL mapping files
- Red Hat JBoss BRMS architecture and runtime rule execution
- Controlling rule execution and preventing conflicts
- Complex event processing (CEP)
Product Description
Developing Rules Applications with Red Hat JBoss BRMS (JB463) teaches rule developers and Java™ enterprise application developers how to create, test, debug, and control business rules, how to generate rules packages, and how the Red Hat JBoss BRMS [business rules management system] runtime environment executes rules.
Students will use Red Hat JBoss Developer Studio 7 and Red Hat JBoss BRMS 6 to perform detailed, hands-on exercises that enable them to create and manage business rules in a production environment. The principles in this course can be applied to implementing a standalone Red Hat JBoss BRMS solution or a Red Hat JBoss BPM Suite (business process management) solution.
Outline
Module 1: Author basic rules
- Author basic business rules using Red Hat JBoss Developer Studio.
- Rule basics
- Rule components
- Rule processing in JBTravel - a case study
- Authoring rules with JBoss Developer Studio
Module 2: Decision tables
- Describe the purpose and layout of a spreadsheet decision table, and identify how JBoss BRMS loads the decision table at runtime.
- Decision tables in a spreadsheet
- Decision tables at runtime
Module 3: Domain-specific languages
- Describe the purpose of domain-specific languages (DSLs), how to declare them, and how to use them in a rule.
- Domain specific language
- DSL mapping file
- DSL rule implementation
Module 4: Test rules
- Verify that given appropriate facts, a rule will be matched and actioned.
- Test rules with Junit.
Module 5: Author complex rules
- Describe and use rules.
- Advanced conditional elements
- Advanced field constraints
- Additional rule components
- Queries
- Backward chaining
Module 6: Develop rule applications
- Implement rule management and rule integration into an application and call the rule server at runtime.
- Rule management
- Rule integration
- Rule execution server
Module 7: Control rule execution
- Describe and implement conflict resolution strategies in rule execution.
Module 8: Debug Drools
- Describe the process of debugging Drools applications in Red Hat JBoss Developer Studio.
Module 9: Complex event processing
- Describe and use complex event processing with rules.
Module 10: Performance (subject to time)
- Optimize the processing and performance of rule execution at runtime.