JBoss BRMS Primer - Looking at a Business Rules Management System

1,839 views

Published on

This was a guest lecture given at the Radboud University Nijmegen in the Netherlands on 17 Dec 2013 for students taking a business rules course for their Masters in Information Technology.

Published in: Education, Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,839
On SlideShare
0
From Embeds
0
Number of Embeds
501
Actions
Shares
0
Downloads
83
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

JBoss BRMS Primer - Looking at a Business Rules Management System

  1. 1. JBoss BRMS Primer Looking at a Business Rules Mangement System December 17, 2013 Eric D. Schabell JBoss Technology Evangelist 1
  2. 2. Agenda ● The Basics – ● what is a BRMS, CEP, BPMS? The Concepts – what is inference? – what is a rule? – how does engine work? ● ● 2 Demo Questions
  3. 3. What is a BRMS? 3
  4. 4. The BRMS Solution FINANCIAL SERVICES COMPANY Product Request 4
  5. 5. Example FINANCIAL SERVICES COMPANY Product Request 5 Problems: 1. Business rules are hidden in applications
  6. 6. Example FINANCIAL SERVICES COMPANY Product Request 6 Problems: 1. Business rules are hidden in applications 2. It takes too long to change business rules
  7. 7. Example FINANCIAL SERVICES COMPANY Product Request Problems: 1. Business rules are hidden in applications 2. It takes too long to change business rules 3. People interpret rules inconsistently 7
  8. 8. The BRMS Solution 1. Separate the business rules from the applications Rule Repository 8
  9. 9. The BRMS Solution 1. Separate the business rules from the applications AHA! 9 Rule Repository 2. Express rules in terms that the business can readily understand - visibility
  10. 10. The BRMS Solution 1. Separate the business rules from the applications AHA! Rule Repository 2. Express rules in terms that the business can readily understand - visibility 3. Empower business and IT experts to collaborate agility 10
  11. 11. The BRMS Solution 1. Separate the business rules from the applications AHA! Rule Repository 2. Express rules in terms that the business can readily understand - visibility 3. Empower business and IT experts to collaborate agility 4. Support all the rules consistency 11
  12. 12. What is CEP? 12
  13. 13. Example: Multiple Customer Touch Points Problems: Hard to derive business relevant data from available information Important patterns go undetected Business fails to respond to changes in its environment 13
  14. 14. Complex Event Processing Detect events of significance to a business by recognizing time-based patterns in one or more real-time data feeds... Business Rules “Weather delay in London” 14
  15. 15. What is a BPMS? 15
  16. 16. A Business Process An activity or set of activities that will accomplish a specific organizational goal... Shipping Catalog Financials Inventory Orders 16 Packaged Apps (e.g. SAP)
  17. 17. The BPMS Solution Catalog Shipping 1. Automate interactions with LoB Systems... 17 Packaged Apps
  18. 18. The BPMS Solution Catalog Shipping 1. Automate interactions with LoB Systems... 2. Drive the business process from a model... 18 Packaged Apps
  19. 19. The BPMS Solution Catalog Shipping 1. Automate interactions with LoB Systems... 2. Drive the business process from a model... 3. Manage user participation... 19 Packaged Apps
  20. 20. The BPMS Solution Catalog Shipping Packaged Apps 1. Automate interactions with LoB Systems... 2. Drive the business process from a model... 3. Manage user participation... 20 4. Provide visibility into process execution data
  21. 21. The Concepts 21
  22. 22. JBoss BRMS What is inferencing? ● 22 We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
  23. 23. JBoss BRMS What is inferencing? ● 23 We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
  24. 24. JBoss BRMS What is inferencing? ● 24 We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
  25. 25. JBoss BRMS What is inferencing? ● 25 We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
  26. 26. JBoss BRMS What is inferencing? ● 26 We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
  27. 27. JBoss BRMS What is a rule? ● ● ● ● 27 In short, a rule is an premise and conclusion – If it is raining, then the ground must be wet A rule is made of conditions and actions. When all the conditions are met, a rule may “fire”. The conditions are collectively referred to as the LHS (left hand side) and the actions are referred to as the RHS (right hand side, or consequence). A rule operates on facts (data). In our case, these facts are instances of objects in our application.
  28. 28. JBoss BRMS Inference Engine ● ● ● 28 The brain of a Production Rule System is an Inference Engine which matches facts against Production Rules. When matches are found, the rules actions are fired. Actions most often change the state of the facts, or perform some external action on the application.
  29. 29. Conceptual example Knowledge Base Rule package (artifacts) 29 Stateless Knowledge Session Agenda
  30. 30. Example: real BPM Knowledge Base Process Definition 30 Stateful Knowledge Session Process Instance
  31. 31. JBoss BRMS How it Works Agenda Rule Rule Rule Rule Rule Activation 1.Parse DRL RuleBase Activation 2. Create 3. Assert Facts Rule R ul A ll 4. Fi re 31 Fact Fact WorkingMemory es Fact Fact Fact Fact Fact Fact Rule Fact Fact Fact Fact Fact (5) activation Rule -> consequence Rule Rule Rule Rule
  32. 32. The Architecture 32
  33. 33. JBoss BRMS Vs BPM Suite Target: Process Automation Service Enabled Orchestration Intelligent Business Operations JBoss BPM Suite 6.0 JBoss BRMS 6.0 33 Target - Realtime Decision Management JBoss BRMS 6.0
  34. 34. JBoss BRMS - Components 34
  35. 35. JBoss BPM Suite – Components 35
  36. 36. 36
  37. 37. Components Real-time data & event feeds Authoring tools for business users Repository Business analysts Event processor Business rule definitions Rules engine Authoring tools for developers Developers 37 Business data Client applications
  38. 38. New in 6.0 Real-time data & event feeds Authoring tools for business users Repository Business analysts Event processor UberFire Business rule definitions Client applications Rules engine Authoring tools for developers Drools 6.0 Developers 38 Technology Preview Business data
  39. 39. BRMS Components Business Events Authoring Tools for Business Users Enterprise Applications Repository Business Analysts Event Processor Business Process Manager Business Rule Definitions Web Services Rule Engine Java Business Data Business Users Authoring Tools for Developers Developers Business Central Operations 39
  40. 40. BRMS Components Business Events Authoring Tools for Business Users Enterprise Applications Repository Business Analysts Event Processor Business Process Manager Business Rule Definitions Web Services Rule Engine Java Business Data Business Users Authoring Tools for Developers Developers Business Central Operations 40
  41. 41. BRMS Components Business Events Authoring Tools for Business Users Enterprise Applications Repository Business Analysts Event Processor Business Process Manager Business Rule Definitions Web Services Rule Engine Java Business Data Business Users Authoring Tools for Developers Developers Business Central Operations 41
  42. 42. 42
  43. 43. Components Business Events Authoring tools for business users Enterprise Applications Event processor Repository Business analysts Business Process Manager Business rule definitions Rules engine Web Services Java Authoring tools for developers Developers Business data BAM Business users 43 Business users
  44. 44. New in 6.0 Business Events Authoring Tools for Business Users Enterprise Applications Repository Business Analysts Event Processor Business Process Manager Business Logic Definitions Data Modeler Forms Designer Web Services jBPM 6.0 Rule Engine Java Business Data Business Users Authoring Tools for Developers Developers Business Central Business Operations/ Analysts 44
  45. 45. Business Resource Optimizer 45
  46. 46. Core Services: Business Resource Optimizer (TP) 46
  47. 47. Core Services: Business Resource Optimizer (TP) 47
  48. 48. Demo 48
  49. 49. Questions? Eric D. Schabell JBoss Technology Evangelist (Integration & BPM) @ericschabell / erics@redhat.com 49
  50. 50. `  JBoss BRMS & BPM Suite Articles:    http://schabell.org/search/label/BRMS http://schabell.org/search/label/BPMS JBoss BPM Suite Demos:   http://www.schabell.org/2013/11/jboss-bpm-suite-automated-lending-generic-loan-demo.html  http://www.schabell.org/2013/12/bpms-examining-migrated-customer-evaluation-demo.html  https://github.com/eschabell/business-resource-optimizer-demo   http://www.schabell.org/2013/10/jboss-bpm-suite-rocking-the-mortgage-demo.html https://github.com/eschabell/bpms-customer-evaluation-demo (migration from BRMS 5.3) JBoss xPaaS Demos:   50 https://github.com/eschabell/bpms-bam-dashboard https://github.com/eschabell/openshift-bpm-bam-dashboard

×