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.
8. The BRMS Solution
1. Separate the business rules
from the applications
Rule
Repository
8
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. 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. 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
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. 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
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)
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. 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
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. 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. 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. 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. 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. 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. 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.
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. 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. 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. 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. 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
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. 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