0 votes
1.6k views
in Decision Services by (21.6k points)
Looking for a high level overview of Decision Service/Rule Services, BAL Rules and Decision Tables

1 Answer

0 votes
by (21.6k points)
selected by
 
Best answer
Decision Services

1. DS can be exposed as a WS
2. can be invoked via JMS or pure java call also
3. migration path from DS to jRules though possible is not recommended since the extended capabilities of Jrules will most probably necessitate a rewrite of the rules
4. recommended for < 30 business rules
5. best practice minimum necessary data should go in as input (actually least possible)
6. reference data should not be inputed/provided but the DS is responsible for acquiring it via an integration and if applicable with a caching layer in between.
7. no interface available for business to update DS in runtime at least in standard version.
8. a rule change or a new rule means process app redeployment
9. Generally used for process route decisions, validate coach inputed data, decision parameters within BPM services.
10. Provides regular JS besides BAL rules and Decision tables for more complex data based manipulations
Basic purpose of a rule is to make a decision, derive new data based on old data, enforce a business policy

BAL Rules
1. BAl rules internally have a jrules engine
2. slower than decision tables to run because of embedded jrules engine.
3. provided features which Decision table can not do e.g. compare one variable to another or one variable to a collection
4. there is no output data binding for decision services in gateways
e.g. a BAL rule is if request type is A or request type is B set valid = true
u will use tw.decision.valid to use the BAL rule output variable
5. the order matters and the rules are executed in the specified order
6. if condition true then action or action only which is always executed.
7. provide iteration capabilities and control statements in an english manner.

Decision tables
compare variables with hard coded single or multiple values or comparison operators, action or otherwise kind of assignments
action is a javascript which you can use to set a boolean flag as a decision, convert data, or selectively update existing data etc.

All other components in a service e.g. tacking, nested services, js etc are available

Related questions

0 votes
1 answer 777 views
0 votes
0 answers 258 views
0 votes
0 answers 364 views
0 votes
0 answers 469 views
0 votes
0 answers 614 views
0 votes
1 answer 316 views
0 votes
1 answer 727 views
0 votes
1 answer 960 views

635 questions

495 answers

98 comments

2.9k users

Join BPM Community Discord Channel

Welcome to BPM Tips Q&A, Community wiki/forum where you can ask questions and receive answers from other IBM BPM experts and members of the community. Users with 2000 points will automatically be promoted to expert level.
Created by Dosvak LLC
Our Youtube Channel
...