SOA/BPM Suite 12c: Oracle Business Rules – Verbal Rules

0 0
Read Time:4 Minute, 30 Second

In this blog post I will transform a Decision Table step-by-step into the new Verbal Rules. As a starting point I created a composite with a BPM, a BPEL and a Rules component. Both BPM and BPEL components use the same Rules component. See the following three screenshots. You can download the sample application with this starting point from here.

image1
Composite View

image2
BPM Process

image3
BPEL Service

Open the sample application in JDeveloper 12c to follow the step-by-step example for a hands-on experience.

This blog is divided into the following four part:

  • Explore the sample Business Rule
  • Why Verbal Rules?
  • Creating Business Phrases
  • Creating Verbal Rules

Explore the sample Business Rule

Open the Business Rules file. You have access to it from two different places. From the BPM branch and the SOA branch.
image4
The excel integration is implemented for Decision Tables. As you can see in the image above there is a decision table ‘PensionDT’ available.  Open this table by double clicking on it’s name. The table has the following content:
image5
The input payload for this rule is information about a pension participant. The following information is supplied:

  • dateOfBirth
  • dateOfDeath (filled if participant past away)
  • dateOfJobEnd (when participant is not being productive anymore)
  • applicable Pension Products (OP: Old-age pension, WP: Orphan pension, PP: Widow’s pension)
  • Partner information
    • dateOfBirth
    • DateOfDeath (filled if partner past away)
  • Child(ren) information (for simplicity of the example, the rule currently supports only one child)
    • dateOfBirth
    • DateOfDeath (filled if child past away)

The output payload of this rule is a statement about the current pension status. Possible outcomes are:

  • Contributor (participant is productive and is paying contribution).
  • Sleeper (participant is not productive in this trust and is not paying contribution).
  • Notified contributor  (participant is productive, but get’s retired within a year).
  • Retired (participant has ended his working career and receives an old-age pension).
  • Widow and / or Orphan (participant has died. The widow and / or orphan’s receive a pension).
  • Out Of Scope (e.g. participant and relatives all died).

Why Verbal Rules?

Usually procedural knowledge can be communicated only by demonstrating its application in specific cases. The concise, linguistic form of verbal rules permits the communication of general procedural knowledge in a relatively easy manner; the linguistic form may also be easier to memorize and retrieve than sequences of actions. Thus, verbal rules may be a useful instructional method for procedural tasks. For example, that the rule “a before b, except after c” is easy to communicate, memorize and retrieve is probably verified by the reader’s experience with this rule. Traditional (before 12c) Business Rules and Decision Tables point out to be difficult to understand for Business Analysts and Users. The possibility to formulate them in a more natural way was lacking. Verbal Rules potentially might bridge this cap.

Creating Business Phrases

A verbal rules can be constructed by concatenating several phrases in business language. Depending on the rules input and output data a number of default phrases are available, but it is also possible to define custom phrases. In this paragraph I will show how to do this.
To create verbal rules as a substitute for the PensionDT decision table the phrases required is somewhat arbitrary. Select the Business Phrases tab to start creating phrases. Click the green plus sign in the right upper corner to start creating a new phrase. You have the possibility to create a test phrase and an action phrase. First lets start with a test phrase.
image2
The Business Phrase editor appears.
Now lets define a phrase for a living old-age pension participant. First define a parameter of type ‘member’. The member contains information about the participant which was defined as the input payload of the business rule. After that specify the phrase in the value field. In here define the position of the parameter by entering it’s name between parenthesis. Finally define the mapping as a general rule.
image3
Besides this test phrase I defined eight other test phrases (listed below) and one action phrase (pension status) for the outcome of the rule.

  1. participant has beneficiary relatives –> indicated whether the participant has a living beneficiary partner or children
  2. participants age between .. and ..
  3. participant is living
  4. participant is not living
  5. participant is older than ..
  6. participant is younger than ..
  7. participant is working
  8. participant is not working

Some of these phrases are show below.
image4
image5
image6
image7

Creating Verbal Rules

After creating these phrases it’s time to start defining the verbal rules. For this select the Verbal Rules tab and then click the create Verbal Rule button.
image13
We will start to define the ‘Relatives Pension Payment’ rule. This rule check whether the pension participant past away and has beneficiary relatives. When this is the case the pension status is set to ‘Widow and/or Orphan’. First select the field. From here it is possible to construct the rule by entering the required business phrases. We want to know if the participant is not living anymore. When you type the letter ‘l’ a wizard will show all business phrases containing this letter. Select the phrase ‘member is not living’ we earlier defined.
image14a
Continue to construct the rest of the rule. Play a little around with the phrase selector to get a good feeling of how it works. After creating all five rule you should have some basic understanding of the new verbal rules feature.
image14
image15
image16
image17
image18
The overview tab shows the final result.
image19

About Post Author

Marcel van de Glind

As a SOA and BPM professional, Marcel is an experienced consultant in the field of process design and process modeling. Within this field system integration and IT-transcending business processes have Marcel's special interest.
Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

4 thoughts on “SOA/BPM Suite 12c: Oracle Business Rules – Verbal Rules

  1. Thank you Marcell for this. Hopefully you can answer a couple of questions? When you create your Action Business Phrase, you use DecisonService.out and rulesOutDO to set the status parameter. Where is the definition of these or how did you access them? I do do not see them when asserting new. My own Facts do not present the ability to access the dot notation. Also, I cannot get the parameter i added for my action business phrase to show up in the Assert New in the Action Business Phrase as you have with yours. Any help is appreciated. Both BPM PM and myself are curious!

  2. Thank you for clarification
    I downloaded JDeveloper 12.2.1 and I can’t find the new feature “verbal rules” in the rules editor
    Also I can’t see business phrases tab !
    Is there any configuration I need to do to enable this new feature ?

Comments are closed.

Next Post

SOA Suite 12c: Neat little feature in Service Bus Pipelines: Disable/Enable Activity to ease development

Sometimes it is just a small feature that can make life easier. SOA Suite 12c is full of large, sweeping new components and grant improvements. And it also has a ton of smaller things. One such smaller new thing is the ability in Pipelines in Service Bus projects to disable […]
%d bloggers like this: