Join us today as we investigate a new feature (much-signposted and much-heralded in the previous 12 months) that crept into Intelligent Advisor 20C monthly release 2. The Intelligent Advisor New Feature we are talking about, and that we expect everyone else will be talking about, is Hub Decision Services Authoring. it’s been on the horizon for a long time.
The concept is simple – let’s see what the official definition of this Intelligent Advisor New Feature is, taken from the documentation:
Hub authoring Decision Services provides a business-user friendly authoring interface through a web browser for rapid creation and deployment of decision web services, without requiring a desktop installation. It is a suitable for:
- calculation services (shipping, tax, permit, insurance premiums)
- risk assessments
- invoice validation
- batch update of case or incident data
- action recommendations
Aside from the rather vague business scenarios, this means three things
- Rule Authors can write rules in the Hub interface
- Managers manage the input and output contract
- The rule auto-documents in standard JSON
Clearly the integration with Oracle Visual Builder Service or a similar platform is targeted. As many of you will remember, our recent survey showed that existing Intelligent Advisor Professionals are definitely not overwhelmingly in favor of web-based rule engines:
The results of our 2020 Rule Design Survey can be viewed here.
Most of us have been around long enough to see how poor a lot of web-based user interfaces are, how often they change and how they rarely achieve what they set out to. In addition, many shared with me the belief that once the web-based UI is upon us, it’s a matter of when rather than if the Intelligent Advisor / Policy Modeling Windows platform will disappear. So it is a great relief to see that the team has really worked hard to get this to a point where it is both useful and easy to use. I would say that for the moment it is not exactly business-user friendly despite the remarks in the help documentation, but overall it is a good effort!
Those provisos aside, let’s look at this Intelligent Advisor New Feature in three broad areas:
- Rule Design
Assuming you have Author role, you can go into the Intelligent Advisor Hub and write a rule in the rule block shown. You can also rename the project from the default.
Once you start writing, if this is a new Project, then expect to see red lines and warnings. This is to tell you that your rules do not have any underlying public names or “input” or “output” information that would be consumed by the integration service. So that needs to happen as we will see in a moment. An interesting titbit in the documentation, no doubt opening the door for future enhancements :
“Also, content from an Oracle Policy Modeling rule document can be pasted into the rule editor in a decision service project. Most syntax will be preserved, although some functions are not supported.”
2. Contract Management
To stop the authors from accidentally destroying the details of any integration, and to allow the technical team to connect the rules we have written to a service definition, we need to define the interface contract – which is only modifiable by Manager role users. They can (and must) add Input and Output “public names” to map to the rule attributes, thus building the “contract”.
Note in the example above how the red wavy line has gone, now that I have begun defining my contract and the boolean text is marked as an input called b_agreement. Once the mapping is done, we are ready to test our service. Since this is entirely REST driven, we can use a typical Swagger-style web interface to test the rule right away. That’s what the blue Run button (you can see it in the first image) is for.
3. Intelligent Advisor New Feature – Live Testing
Note how the “Try it” section lets me immediately test out my rule, based on the contract elements defined as input and output. I can also download a definition and do all the usual things associated with REST calls like get authentication and so on.
4. Version Control
Once my project is committed using the big blue Commit button on the blue background, I have defined version one of my service.
Working on the next version, as shown above, repeats the process of defining contract items, testing and committing. And when I commit again, I will create version 2, as you can see below in the corner near the Commit button.
It means that I can access any version using the drop-down, as shown here:
Should you open an earlier version, then you are offered a variety of choices such as Revert to this Version.
Note the possibility to export the project. There is also (obviously) an Import option on the main Project screen. I didn’t dig very hard but even if it is not yet present, given that the format is pure JSON, one would expect this feature to be in the administration REST API soon. Of course if all you want to do is share your work with others, then they can log in to the Hub and have a look / edit the project. The import and export will be useful when delivering to a test environment for example.
And so, the most awaited (for some) Intelligent Advisor New Feature has finally broken cover. Tell us what you think about this in the comments – we’re always eager to hear your views!
We have a series of more detailed articles on this subject: