Upload
eric-d-schabell
View
957
Download
1
Tags:
Embed Size (px)
DESCRIPTION
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.
Citation preview
1
JBoss BRMS PrimerLooking at a Business Rules Mangement System
December 17, 2013
Eric D. SchabellJBoss Technology Evangelist
2
Agenda
● The Basics– what is a BRMS, CEP,
BPMS?
● The Concepts– what is inference?
– what is a rule?– how does engine work?
● Demo● Questions
3
What is a BRMS?
4
The BRMS Solution
FINANCIAL SERVICES COMPANY
Product Request
5
FINANCIAL SERVICES COMPANY
Product Request
Example
Problems:1. Business rules are hidden
in applications
6
FINANCIAL SERVICES COMPANY
Product Request
Example
Problems:1. Business rules are hidden
in applications
2. It takes too long to change business rules
7
FINANCIAL SERVICES COMPANY
Problems:1. Business rules are hidden
in applications
2. It takes too long to change business rules
3. People interpret rules inconsistently
Product Request
Example
8
Rule Repository
The BRMS Solution
1. Separate the business rulesfrom the applications
9
Rule Repository
AHA!
The BRMS Solution
1. Separate the business rulesfrom the applications
2. Express rules in terms that the business can readily understand - visibility
10
Rule Repository
AHA!
The BRMS Solution
1. Separate the business rulesfrom the applications
2. Express rules in terms that the business can readily understand - visibility
3. Empower business and IT experts to collaborate - agility
11
Rule Repository
1. Separate the business rulesfrom the applications
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
AHA!
The BRMS Solution
12
What is CEP?
13
Problems:
Hard to derive business relevant data from available information
Important patterns go undetected
Business fails to respond to changes in its environment
Example: Multiple Customer Touch Points
14
Complex Event Processing
Detect events of significance to a business by recognizing time-based patterns in one or more real-time data feeds...
“Weather delay in London”
Business Rules
15
What is a BPMS?
16
A Business Process
Catalog
Orders
Shipping
Financials
Inventory
Packaged Apps (e.g. SAP)
An activity or set of activities that will accomplish a specific organizational goal...
17
The BPMS Solution
Catalog Shipping
1. Automate interactions with LoB Systems...
Packaged Apps
18
Catalog Shipping
1. Automate interactions with LoB Systems...
2. Drive the business process from a model...
Packaged Apps
The BPMS Solution
19
Catalog Shipping
1. Automate interactions with LoB Systems...
2. Drive the business process from a model...
3. Manage user participation...
Packaged Apps
The BPMS Solution
20
Catalog Shipping
1. Automate interactions with LoB Systems...
2. Drive the business process from a model...
3. Manage user participation...
4. Provide visibilityinto process execution data
Packaged Apps
The BPMS Solution
21
The Concepts
22
JBoss BRMSWhat is inferencing?
● We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
23
JBoss BRMSWhat is inferencing?
● We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
24
JBoss BRMSWhat is inferencing?
● We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
25
JBoss BRMSWhat is inferencing?
● We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
26
JBoss BRMSWhat is inferencing?
● We want to take all of our data (facts) and combine it with our knowledge (rules) and come up with some conclusions (inferencing)
27
JBoss BRMSWhat is a rule?
● 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
JBoss BRMSInference Engine
● 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
Conceptual example
KnowledgeBase
StatelessKnowledge
Session
Rule package(artifacts)
Agenda
30
Example: real BPM
KnowledgeBase
StatefulKnowledge
Session
ProcessDefinition
ProcessInstance
31
Agenda
RuleRule
RuleRule
Rule
FactFact
FactFact
Fact
WorkingMemory3. Assert Facts
RuleBase
FactFact
FactFact
Fact
RuleRule
RuleRule
Rule2. C
reate
4. F
ire A
ll Rule
s
(5) activation-> consequence
1.Parse DRLActivation
Rule Fact
Activation
RuleFact
Fact
JBoss BRMSHow it Works
32
The Architecture
33
JBoss BRMS Vs BPM Suite
JBoss BRMS 6.0JBoss BRMS 6.0
JBoss BPM Suite 6.0Target - Realtime Decision Management
Target:Process AutomationService Enabled OrchestrationIntelligent Business Operations
34
JBoss BRMS - Components
35
JBoss BPM Suite – Components
36
37
Repository
Businessrule definitions
Business data
Client applications
Business analysts
Developers
Rules engine
Event processor
Real-time data & event feedsAuthoring tools
for business users
Authoring tools for developers
Components
38
Repository
Businessrule definitions
Business data
Client applications
Business analysts
Developers
Rules engine
Event processor
Real-time data & event feedsAuthoring tools
for business users
Authoring tools for developers
Drools 6.0
UberFire
New in 6.0
Technology Preview
39
BRMS Components
Repository
BusinessRule Definitions
Business Data
Enterprise Applications
Developers
Business ProcessManager
Rule Engine
Event Processor
Business Users
Web Services
Java
Business Events
Authoring Tools for Business
Users
Authoring Tools for Developers
Operations
Business Central
Business Analysts
40
BRMS Components
Repository
BusinessRule Definitions
Business Data
Enterprise Applications
Developers
Business ProcessManager
Rule Engine
Event Processor
Business Users
Web Services
Java
Business Events
Authoring Tools for Business
Users
Authoring Tools for Developers
Operations
Business Central
Business Analysts
41
BRMS Components
Repository
BusinessRule Definitions
Business Data
Enterprise Applications
Business Analysts
Business ProcessManager
Rule Engine
Event Processor
Business Users
Web Services
Java
Business Events
Authoring Tools for Business
Users
Authoring Tools for Developers
Operations
Business Central
Developers
42
43
Repository
Businessrule definitions
Business data
Business analysts
Developers
Event processor
Rules engine
Business Events
Authoring tools for business
users
Authoring tools for developers
Components
Business users
BAM
Business ProcessManager
Enterprise Applications
Business users
Web Services
Java
44
New in 6.0
Repository
BusinessLogicDefinitions
Business Data
Enterprise Applications
Business Analysts
Developers
Business ProcessManager
Rule Engine
Event Processor
Business Users
Web Services
Java
Business Events
Authoring Tools for Business
Users
Authoring Tools for Developers
Business Operations/Analysts
Business Central
Data ModelerForms Designer
jBPM 6.0
45
Business Resource Optimizer
46
Core Services: Business Resource Optimizer (TP)
47
Core Services: Business Resource Optimizer (TP)
48
Demo
49
Eric D. SchabellJBoss Technology Evangelist (Integration & BPM)@ericschabell / [email protected]
Questions?
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/10/jboss-bpm-suite-rocking-the-mortgage-demo.html
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
https://github.com/eschabell/bpms-customer-evaluation-demo (migration from BRMS 5.3)
JBoss xPaaS Demos:
https://github.com/eschabell/bpms-bam-dashboard
https://github.com/eschabell/openshift-bpm-bam-dashboard